Commit graph

47309 commits

Author SHA1 Message Date
yuneng-jiang
ccb327f032
Merge pull request #42795 from BerriAI/litellm_/patch-gang-backport-6da70a
Some checks failed
LiteLLM Rust / rustfmt, clippy, test (push) Has been cancelled
LiteLLM Rust / release wheel (push) Has been cancelled
chore(release): backport #42607 to stable/1.101.x and cut 1.101.2
2026-09-23 15:54:05 -07:00
Yuneng Jiang
1fbd5126fa
chore(release): bump stable/1.101.x to 1.101.2 2026-09-23 12:06:45 -07:00
devin-ai-integration[bot]
59eedca7b1
fix(bedrock): stream /v1/messages Invoke bytes through instead of holding them in a 1024-byte chunker (#42607)
* fix(bedrock): stream /v1/messages Invoke bytes through instead of holding them in a 1024-byte chunker

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* style(bedrock): apply ruff format to invoke messages stream passthrough

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* style(bedrock): drop drive-by reformat of existing invoke messages tests

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* test(bedrock): collect streamed chunks into a tuple in passthrough regression test

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

* test(bedrock): give the passthrough regression test a 10s first-chunk budget

* test(bedrock): type the eventstream frame helper's payload as Mapping[str, object]

* test(bedrock): take the gated byte stream's chunks as an immutable Sequence

---------

Co-authored-by: mateo <mateo@berri.ai>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: mateo-berri <277851410+mateo-berri@users.noreply.github.com>
(cherry picked from commit 975bd28549)
2026-09-23 12:05:51 -07:00
yuneng-jiang
a03bc3e927
Merge pull request #42635 from BerriAI/litellm_backport_stable_1_101_x_bp_40639_1101
chore(release): backport #40639 to stable/1.101.x
2026-09-23 12:01:22 -07:00
Mateo Wang
432215e619
Merge pull request #42596 from BerriAI/litellm_cherrypick_1_101_x
feat(typesafe): backport #41607 to stable/1.101.x for v1.101.1
2026-09-22 20:01:33 -07:00
mateo
039debffec fix: place lint suppressions on the flagged annotation lines 2026-09-23 02:21:16 +00:00
mateo
7e6d9e89ed fix: satisfy stable/1.101.x lint and api-sync gates for the jev backport 2026-09-23 02:21:16 +00:00
mateo
662a89290f fix(ui): adapt the jev dashboard pieces to stable/1.101.x 2026-09-23 02:21:16 +00:00
devin-ai-integration[bot]
347ec67498 feat(openrouter): price typesafe/jev-1.13 and add an openrouter decisions pass-through (#42301)
Backport of #42301 to stable/1.101.x.
Cherry-picked from 1106b16745 (main).
2026-09-23 02:21:15 +00:00
mateo
92e6dc4ab3 chore(backport): regenerate the openapi snapshot and dashboard api types for stable/1.101.x
The #41615 and #41757 picks brought litellm/proxy/_lazy_openapi_snapshot.json and ui/litellm-dashboard/src/lib/http/schema.d.ts verbatim from main. Both files were regenerated under Python 3.12.
2026-09-23 02:18:06 +00:00
ryan-crabbe-berri
173f71d120 fix(reset_budget_job): reset end users by budget link, not by user id
The cascade zeroed end-user spend with a single update_many whose where
clause enumerated every dependent user id. Prisma compiles that IN-list
into one prepared statement carrying one bind variable per customer, and
PostgreSQL caps a statement at 32,767 of them. Once a shared budget had
more dependents than that the statement could not be parsed at all, so
the atomic cascade rolled back, budget_reset_at never advanced, and the
tier stayed due on every later tick forever. Customers sitting at their
cap were blocked indefinitely with only a recurring log line to show for
it.

End users now match on budget_id like every other gated table, plus a
NULL-budget_id branch for the implicitly created rows that carry no link
and ride the default tier. The statement's bind count now tracks the
number of expiring tiers rather than the customer population, so a reset
costs the same whether a budget has ten dependents or a million.

Fixes #40564

Claude-Session: https://claude.ai/code/session_01Hn5E8Jz1LjGLFyiYxBRcBW
(cherry picked from commit 760043b533)
2026-09-23 01:12:36 +00:00
mateo-berri
ba74b6a3b6 fix(ui): adapt the jev dashboard pieces to stable/1.102.x
(cherry picked from commit 4bfac88281)
2026-09-23 00:41:28 +00:00
moe-berri
4bfd03e3de feat(auto-router): add JEV classifier alongside LLM classifier
Backport of #41886 to stable/1.101.x.
Cherry-picked from a83773cfa5 (main).
2026-09-22 23:49:19 +00:00
moe-berri
02f386a82e fix(proxy): enforce virtual key budgets for JEV test routing
Backport of #41879 to stable/1.101.x.
Cherry-picked from 1e161f516c (main).
2026-09-22 23:15:11 +00:00
Yassin Kortam
8c30093c5a feat(guardrails): add TypeSafe Jev relevance-based compaction guardrail
Backport of #41757 to stable/1.101.x.
Cherry-picked from 2edda5aec3 (main).
2026-09-22 23:12:35 +00:00
yuneng-jiang
eb0eca5451 fix(proxy): forward every method on the typesafe pass-through route
Backport of #41723 to stable/1.101.x.
Cherry-picked from 34718f0da6 (main).
2026-09-22 23:12:01 +00:00
Mateo Wang
2f63249816 feat(router): add TypeSafe Jev as a complexity router classifier
Backport of #41615 to stable/1.101.x.
Cherry-picked from cf42b607c3 (main).
2026-09-22 23:09:35 +00:00
Tin Chi Lo
3b97c28ab5 feat(auto-router): allow opted-in team members to manage their routers
Prerequisite for #41615 and #41879 on stable/1.101.x.
Cherry-picked from 109ca70f66 (main).
2026-09-22 23:09:31 +00:00
ryan-crabbe-berri
9250fd579c fix(proxy): apply team model aliases on the JWT auth path
Prerequisite for #41615 on stable/1.101.x.
Cherry-picked from 7015bf37bb (main).
2026-09-22 23:09:31 +00:00
mateo-berri
081f65ea44 feat(typesafe): add TypeSafe Jev passthrough with logging and cost tracking
Backport of #41607 to stable/1.101.x.
Cherry-picked from deb9d8aedd (main).

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-22 21:34:24 +00:00
Mateo Wang
4b432a9d66
Merge pull request #42533 from BerriAI/litellm_cherrypick_safeguards_1_101_x
fix(anthropic): backport #42152 and #42288 to stable/1.101.x for v1.101.1
2026-09-22 14:29:21 -07:00
kerry
d4ca007b6c fix(test): run the all-beta-headers bedrock cases on Claude Fable 5.1
Backport of #42048 to stable/1.101.x.
Cherry-picked from 7966f50c34 (main). The safeguards backport maps the dangerous-tool-use-2026-09-03 beta for Bedrock, which Claude Opus 4.5 on Bedrock Invoke rejects as an invalid beta flag, so the all-beta-headers Bedrock cases run on Claude Fable 5.1 as they do on main.
2026-09-22 12:54:53 -07:00
mateo-berri
3c6a66dc48 chore(types): keep the backported safeguards annotations within the line's budgets
The picked TypedDict fields use read-only Sequence[Mapping[str, object]] annotations and the picked Vertex test carries a test-quality-ok marker, so stable/1.101.x's LIT001, LIT012 and TQ008 budgets hold. Static typing only, no runtime change.
2026-09-22 11:31:16 -07:00
mateo-berri
2414f8fcf0 test: add the local_beta_headers_config fixture the safeguards tests use
Hand-ported to stable/1.101.x from 47b2479c94 on main (fix(bedrock): gate Invoke tool search on the model map's supports_tool_search flag), the one prerequisite the #42288 handler tests need; the rest of that commit stays on main.
2026-09-22 10:38:09 -07:00
mateo-berri
85bf3c8380 fix(anthropic): forward Claude Code safeguards and dangerous-tool-use beta to Bedrock Invoke and Vertex on /v1/messages
Backport of #42288 to stable/1.101.x.
Cherry-picked from merge commit fc82f6e8fa (litellm_safeguards_bedrock_vertex_messages).
The line has no bedrock_mantle beta-header mapping and no Mantle /v1/messages route, so the Mantle mapping, its test file, and the bedrock_mantle test parameter are left out.
2026-09-22 10:16:55 -07:00
Yassin Kortam
64e011ccab fix(anthropic): forward safeguards and anthropic-beta unchanged on native /v1/messages
Backport of #42152 to stable/1.101.x.
Cherry-picked from merge commit e912ebe999 (litellm_claude_code_safeguards_passthrough).
2026-09-22 10:16:26 -07:00
yuneng-jiang
1fb7e5a9e9
Merge pull request #42332 from BerriAI/litellm_backport_1_101_x_bp_41870
chore(release): backport #41870 to stable/1.101.x
2026-09-21 14:47:16 -07:00
Yuneng Jiang
5b1a903976
chore(deps): bump soupsieve to 2.9.0 2026-09-21 14:18:31 -07:00
Yuneng Jiang
07a3aef0b2
chore(deps): bump anyio to 4.14.2 2026-09-21 14:18:30 -07:00
Mateo Wang
aec3026860
Merge pull request #41870 from BerriAI/litellm_bedrock_openai_gpt_min_max_tokens
fix(bedrock): clamp maxTokens to the 16-token minimum for OpenAI GPT and xAI Grok models on Converse

(cherry picked from commit a6e3a72ed8)
2026-09-21 14:18:30 -07:00
Mateo Wang
8892c21b09
Merge pull request #41704 from BerriAI/litellm_bump_1_101_1
Some checks failed
LiteLLM Rust / rustfmt, clippy, test (push) Has been cancelled
LiteLLM Rust / release wheel (push) Has been cancelled
chore(release): bump stable/1.101.x to 1.101.1
2026-09-17 17:21:25 -07:00
mateo-berri
53ee737406 chore(release): bump stable/1.101.x to 1.101.1
Sets the version project-releaser reads for the v1.101.1 stable cut, which carries #41698 (the wildcard license auto_router fix backported from #41684).
2026-09-17 17:00:23 -07:00
Mateo Wang
751fddecae
Merge pull request #41698 from BerriAI/litellm_cherrypick_1_101_x
fix(license): backport #41684 to stable/1.101.x so a wildcard license grants auto_router
2026-09-17 16:46:50 -07:00
mateo-berri
c9ed764c58 fix(license): let a wildcard allowed_features license grant the auto_router feature
Backport of #41684 to stable/1.101.x.
Cherry-picked from c2fbb11dca (litellm_wildcard_license_auto_router).
2026-09-17 16:27:10 -07:00
yuneng-jiang
18243cd7af
Merge pull request #40886 from BerriAI/litellm_backport_redis_chaos_rc_1_101_0
Some checks failed
LiteLLM Rust / rustfmt, clippy, test (push) Has been cancelled
LiteLLM Rust / release wheel (push) Has been cancelled
fix(redis): backport Redis chaos fixes and load gate to rc/1.101.0
2026-09-12 14:12:48 -07:00
Yuneng Jiang
abfb2cf329
test(load): backport Redis chaos qualification to rc/1.101.0 (#40482)
(cherry picked from commit 8e4f2abb40)
2026-09-12 12:28:44 -07:00
Yuneng Jiang
c1a834baaf
fix(caching): backport Redis breaker recovery guards to rc/1.101.0 (#40624)
(cherry picked from commit ff4b558243)
2026-09-12 12:28:18 -07:00
Yuneng Jiang
ca4a61304f
fix(redis): backport quiet breaker refusals to rc/1.101.0 (#40620)
(cherry picked from commit ef1a37795c)
2026-09-12 12:27:57 -07:00
Yuneng Jiang
c324a2b3c5
perf(proxy): backport pipelined spend counters to rc/1.101.0 (#40371)
(cherry picked from commit 996ee5635a)
2026-09-12 12:27:18 -07:00
yuneng-jiang
912a3f88f8
Merge pull request #40346 from BerriAI/litellm_backport_40335_rc_1_101_0
Some checks failed
LiteLLM Rust / rustfmt, clippy, test (push) Has been cancelled
LiteLLM Rust / release wheel (push) Has been cancelled
fix(otel): backport auth spans and callback merge to rc/1.101.0 (#40335)
2026-09-08 18:31:32 -07:00
Yuneng Jiang
bcddffcbdc
fix(otel): backport auth spans and callback merge to rc/1.101.0
Cherry-pick PR #40335, restoring the Datadog auth span and last-wins callback credential merging.

(cherry picked from commit 43a1b2992a)
2026-09-08 18:28:11 -07:00
yuneng-jiang
f0b6d66b84
Merge pull request #40325 from BerriAI/litellm_backport_37667_rc_1_101_0
feat(team): backport team admin callbacks to rc/1.101.0 (#37667)
2026-09-08 16:42:17 -07:00
yuneng-jiang
f41fc719c1
Merge pull request #40324 from BerriAI/litellm_backport_40312_rc_1_101_0
chore(ui): backport dashboard dependencies to rc/1.101.0 (#40312)
2026-09-08 16:42:09 -07:00
Yuneng Jiang
b6e73cccdb
feat(team): backport team admin callbacks to rc/1.101.0
Backport #37667 without conflict resolution or implementation changes

(cherry picked from commit 90731576e3)
2026-09-08 16:35:28 -07:00
Yuneng Jiang
d8b9fcf399
chore(ui): backport dashboard dependencies to rc/1.101.0
Backport #40312 without conflict resolution or implementation changes

(cherry picked from commit 8280d7ca9d, mainline parent 1)
2026-09-08 16:35:28 -07:00
yuneng-jiang
cbf0c76869
Merge pull request #40321 from BerriAI/litellm_backport_39654_rc_1_101_0
feat(otel): backport tenant trace destinations to rc/1.101.0 (#39654)
2026-09-08 16:34:13 -07:00
Yuneng Jiang
09976043ac
feat(otel): backport tenant trace destinations to rc/1.101.0
Backport #39654 without conflict resolution or implementation changes

(cherry picked from commit 3165951e6d)
2026-09-08 16:29:16 -07:00
yuneng-jiang
744156d297
Merge pull request #40316 from BerriAI/litellm_backport_40203_rc_1_101_0
feat: backport MongoDB sidecar to rc/1.101.0
2026-09-08 15:56:32 -07:00
yuneng-jiang
935bb5260f
feat: backport MongoDB sidecar to rc/1.101.0
(cherry picked from commit b8d573c5f9)
2026-09-08 15:52:58 -07:00
ryan-crabbe-berri
eeb7732fc1
Merge pull request #39994 from BerriAI/litellm_hotfix_mongodb_extra_docker_images
Some checks failed
Unit Tests / caching-local (push) Has been cancelled
Unit Tests / core-utils (push) Has been cancelled
Unit Tests / enterprise-routing (push) Has been cancelled
Unit Tests / integrations (push) Has been cancelled
Unit Tests / All Other Providers (push) Has been cancelled
Unit Tests / Vertex AI (push) Has been cancelled
Unit Tests / misc (push) Has been cancelled
Unit Tests / proxy-auth (push) Has been cancelled
Unit Tests / proxy-infra (push) Has been cancelled
Unit Tests / proxy-server (push) Has been cancelled
Terraform Modules / fmt, validate, test (gcp) (push) Has been cancelled
Terraform Provider / gofmt, vet, build, test (push) Has been cancelled
Unit Tests: Documentation Validation / documentation (push) Has been cancelled
GitHub Actions Security Analysis / zizmor (push) Has been cancelled
Unit Tests / enterprise-package (push) Has been cancelled
Unit Tests / proxy-endpoints (push) Has been cancelled
Unit Tests / proxy-extras (push) Has been cancelled
Unit Tests / responses-caching-types (push) Has been cancelled
Unit Tests: Proxy DB Operations / auth-checks (push) Has been cancelled
Unit Tests: Proxy DB Operations / budgets (push) Has been cancelled
Unit Tests: Proxy DB Operations / custom-logging (push) Has been cancelled
Unit Tests: Proxy DB Operations / db-and-spend (push) Has been cancelled
Unit Tests: Proxy DB Operations / endpoints-and-responses (push) Has been cancelled
Unit Tests: Proxy DB Operations / guardrails-hooks (push) Has been cancelled
Unit Tests: Proxy DB Operations / jwt-and-keys (push) Has been cancelled
Unit Tests: Proxy DB Operations / key-generation (push) Has been cancelled
Unit Tests: Proxy DB Operations / logging-misc (push) Has been cancelled
Unit Tests: Proxy DB Operations / proxy-runtime (push) Has been cancelled
Unit Tests: Proxy DB Operations / proxy-server-core (push) Has been cancelled
Unit Tests: Proxy DB Operations / proxy-utils (push) Has been cancelled
fix(docker): ship pymongo in the proxy images for the MongoDB vector store
2026-09-05 18:12:56 -07:00