Yuneng Jiang
5c68545104
test: fix stale budget-status and bad-database-url assertions
...
Two CI checks were asserting behaviour the proxy no longer has. Neither
was catching anything; both now fail for the right reason.
budget_exceeded (tests/otel_tests/test_e2e_budgeting.py)
bf804f5188 made 422 the default for budget refusals and added
budget_exceeded_status_code to restore 429 for callers that need it. The
e2e budget tests still asserted 429, so all six have been failing on a
status change that was deliberate. Assert 422, the documented default,
rather than reading litellm.budget_exceeded_status_code back — a test
that asks the code what it does would have passed straight through this
change and through the next one.
The helpers also caught bare Exception, so a connection error reached
`e.body` and surfaced as an AttributeError instead of a failed
assertion. Narrow both to openai.APIStatusError, which is what a refusal
actually raises (UnprocessableEntityError for 422, RateLimitError for
429), and let anything else propagate as itself.
test_bad_database_url (.circleci/config.yml)
The check required "Database setup failed after multiple retries", which
only the v1 resolver emits, OR uvicorn's "Application startup failed.
Exiting.". With v2 the default, the first branch is dead and the whole
assertion rests on an incidental uvicorn line that HEAD's run did not
emit at all.
Assert the behaviour instead of the wording: the container exits
non-zero, the log names the unreachable server (P1001), it never reaches
"Application startup complete", and it is not left running. The exit
code was previously discarded by `|| true`, so the one thing the job
most needed to check was never checked.
Verified by running the bad-DATABASE_URL container: exit 3, P1001
present, no startup-complete line, container stopped — the new check
passes and the old one passed only by the uvicorn line's accident.
2026-09-21 15:00:54 -07:00
Mateo Wang
4b54897b36
Merge pull request #42315 from BerriAI/litellm_scim_delete_evict_user_cache
...
fix(proxy): evict the cached user row when SCIM or /user/delete removes a user
2026-09-21 14:51:53 -07:00
yucheng-berri
e0e5b7924a
Merge pull request #42312 from BerriAI/litellm_bedrock_batch_s3_creds_leak
...
Register s3_access_key_id, s3_secret_access_key and s3_encryption_key_id as
LiteLLM-owned batch params so they are no longer forwarded to Bedrock as
additionalModelRequestFields (which 400s ordinary chat on a batch-configured
deployment), keep them on CredentialLiteLLMParams so the batch/file paths
still receive them, and redact the S3 credential key names in debug logs.
Resolves LIT-8290
Co-authored-by: yucheng <yucheng@berri.ai>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 14:50:54 -07:00
Mateo Wang
10d0d5acb2
Merge pull request #42314 from BerriAI/litellm_alerting_batch_keeps_distinct_alerts
...
fix(alerting): deliver every distinct alert queued in one flush window
2026-09-21 14:49:54 -07:00
yujonglee
ebb4d230f8
Merge pull request #42300 from BerriAI/litellm_python_interop_foundation
...
fix(rust): preserve Python settings semantics at the native boundary
2026-09-21 14:46:37 -07:00
yujonglee
162e5c4338
Merge pull request #42303 from BerriAI/litellm_rust_secrets_cyberark
...
feat(rust): add CyberArk Conjur secret manager backend
2026-09-21 14:45:39 -07:00
Yassin Kortam
17b56cc4ca
Merge pull request #41505 from BerriAI/litellm_keep_config_models_on_empty_config_read
...
fix(proxy): keep config-defined deployments when a config read returns no model_list
2026-09-21 16:43:15 -05:00
kerry-berri
75dc9082df
Merge pull request #42066 from BerriAI/litellm_cost_shard_batches_realtime
...
test(integration): batch and realtime cost cases
2026-09-21 14:43:01 -07:00
kerry-berri
5e746d95dc
Merge pull request #42333 from BerriAI/litellm-providers/price-sync-openrouter
...
chore(prices): sync OpenRouter prices: 1 model
2026-09-21 14:41:07 -07:00
kerry
ebad623079
Merge remote-tracking branch 'origin/main' into litellm_cost_shard_batches_realtime
2026-09-21 21:34:05 +00:00
kerry-berri
29792c45a9
Merge pull request #42060 from BerriAI/litellm_cost_shard_proxy_behaviour
...
test(integration): proxy behaviour cost cases
2026-09-21 14:33:47 -07:00
Yujong Lee
c7c0afb1f0
ci(rust): raise the native wheel size gate to 40 MB
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:33:06 +00:00
yucheng-berri
506cecfb0b
Merge pull request #42267 from BerriAI/litellm_otel_v2_langfuse_ocr_output
...
fix(otel v2): map OCR page markdown onto the generation output
2026-09-21 14:33:02 -07:00
Yujong Lee
9c48e137dc
fix(rust): preserve HTTP host and TLS error context
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:32:33 +00:00
Yujong Lee
27808b51a0
chore(rust): drop interop planning note
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:32:33 +00:00
Yujong Lee
5aeb367d2a
fix(rust): preserve Python settings coercion at the native boundary
2026-09-21 21:32:33 +00:00
Yujong Lee
52216df1ff
fix(rust): preserve structured conversion semantics
2026-09-21 21:32:33 +00:00
Yujong Lee
a41061be43
docs(rust): plan Python interop foundation
2026-09-21 21:32:33 +00:00
berriai-litellm-provider-info-sync[bot]
8c64f82bb3
chore(prices): sync OpenRouter prices: 1 model
...
openrouter/deepseek/deepseek-v4-pro: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
2026-09-21 21:31:16 +00:00
yucheng-berri
79d6e236f9
Merge pull request #39805 from BerriAI/litellm_mcp_admin_api_preserve_oauth_scopes
...
fix(mcp): keep oauth scopes in admin api credential redaction
2026-09-21 14:29:13 -07:00
kerry
1e54b4f286
Merge remote-tracking branch 'origin/litellm_cost_shard_proxy_behaviour' into litellm_cost_shard_batches_realtime
2026-09-21 21:25:05 +00:00
kerry
924ca78d06
Merge remote-tracking branch 'origin/main' into litellm_cost_shard_proxy_behaviour
2026-09-21 21:24:54 +00:00
Mateo Wang
124e5d6d53
Merge pull request #34358 from BerriAI/claude/e2e-tests-custom-endpoints-qxoi1o
...
test(e2e): replace custom endpoints_client with provider SDK clients
2026-09-21 14:24:38 -07:00
kerry-berri
34d5f9d41b
Merge pull request #42052 from BerriAI/litellm_cost_shard_provider_wires
...
test(integration): provider wire cost cases
2026-09-21 14:24:35 -07:00
Mateo Wang
4b9aa222a6
Merge pull request #42317 from BerriAI/litellm_redis_cluster_topology
...
feat(rust-cache): serve RedisClusterCache natively as a Redis topology
2026-09-21 14:21:54 -07:00
mateo-berri
2f8bee053d
test(alerting): inject the webhook client and extend the mapped test files
2026-09-21 14:16:37 -07:00
Yassin Kortam
f6c69af427
Merge pull request #41101 from hMED22/litellm_add_edenai_provider
...
feat(edenai): add Eden AI provider across chat, Responses, Messages, embeddings, audio, images and video
2026-09-21 16:16:28 -05:00
kerry
5ad36d2b7e
Merge remote-tracking branch 'origin/litellm_cost_shard_proxy_behaviour' into litellm_cost_shard_batches_realtime
2026-09-21 21:15:56 +00:00
kerry
2760ea2e6c
Merge remote-tracking branch 'origin/litellm_cost_shard_provider_wires' into litellm_cost_shard_proxy_behaviour
2026-09-21 21:15:49 +00:00
kerry
54a1e85d38
Merge remote-tracking branch 'origin/main' into litellm_cost_shard_provider_wires
2026-09-21 21:15:39 +00:00
Mateo Wang
fc82f6e8fa
Merge pull request #42288 from BerriAI/litellm_safeguards_bedrock_vertex_messages
...
fix(anthropic): forward Claude Code safeguards and dangerous-tool-use beta to Bedrock Invoke and Vertex on /v1/messages
2026-09-21 14:15:36 -07:00
kerry-berri
b5e47936e5
Merge pull request #42035 from BerriAI/litellm_cost_shard_pricing_dimensions
...
test(integration): pricing dimension and provider reported cost cases
2026-09-21 14:15:21 -07:00
kerry-berri
c20d2c2803
Merge pull request #42320 from BerriAI/litellm-providers/price-sync-openrouter
...
chore(prices): sync OpenRouter prices: 1 model
2026-09-21 14:13:30 -07:00
Yujong Lee
96224f1c0f
fix(cache-redis): fan cluster PING out to every node and skip pool return pings
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:11:22 +00:00
Yassin Kortam
da1ccaec67
Merge pull request #40322 from BerriAI/litellm_lit7351_reservation_lease_renewal
...
fix(proxy): renew budget reservation counter TTL while the request is in flight
2026-09-21 16:07:14 -05:00
Yujong Lee
3f11d9787d
build(ci): raise native extension size limit to 30 MB for cluster support
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 21:06:12 +00:00
yuneng-jiang
5e0512b611
Merge pull request #42291 from BerriAI/litellm_lit7597_detach_credential
...
fix(proxy): detach stored credential when model editor selects None
2026-09-21 14:05:28 -07:00
kerry
6ef1003f7d
Merge remote-tracking branch 'origin/litellm_cost_shard_proxy_behaviour' into litellm_cost_shard_batches_realtime
2026-09-21 21:04:53 +00:00
kerry
3204bf0df9
Merge remote-tracking branch 'origin/litellm_cost_shard_provider_wires' into litellm_cost_shard_proxy_behaviour
2026-09-21 21:04:45 +00:00
kerry
5034b96fb6
Merge remote-tracking branch 'origin/litellm_cost_shard_pricing_dimensions' into litellm_cost_shard_provider_wires
2026-09-21 21:04:37 +00:00
kerry
b0070892da
Merge remote-tracking branch 'origin/main' into litellm_cost_shard_pricing_dimensions
2026-09-21 21:04:26 +00:00
kerry-berri
b5f02f72fe
Merge pull request #42028 from BerriAI/litellm_cost_shard_passthrough
...
test(integration): passthrough route cost cases
2026-09-21 14:04:03 -07:00
berriai-litellm-provider-info-sync[bot]
a8cd414377
chore(prices): sync OpenRouter prices: 1 model
...
openrouter/deepseek/deepseek-v4-pro: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
2026-09-21 21:01:19 +00:00
kerry-berri
89de508d6e
Merge pull request #42306 from BerriAI/litellm_fal_ai_surface_video_errors
...
fix(fal_ai): surface fal errors in video status and content instead of completed and generic 500
2026-09-21 13:59:04 -07:00
kerry-berri
f5f53a4cf4
Merge pull request #40429 from BerriAI/litellm_upgrade_banner_changelog_stats
...
feat(ui): add upgrade banner with latest release changelog stats
2026-09-21 13:56:05 -07:00
kerry
aeff48238a
Merge remote-tracking branch 'origin/litellm_cost_shard_proxy_behaviour' into litellm_cost_shard_batches_realtime
2026-09-21 20:56:02 +00:00
kerry
efd7f3dadd
Merge remote-tracking branch 'origin/litellm_cost_shard_provider_wires' into litellm_cost_shard_proxy_behaviour
2026-09-21 20:55:55 +00:00
kerry
7be0bf8be6
Merge remote-tracking branch 'origin/litellm_cost_shard_pricing_dimensions' into litellm_cost_shard_provider_wires
2026-09-21 20:55:49 +00:00
kerry
36a21f7215
Merge remote-tracking branch 'origin/litellm_cost_shard_passthrough' into litellm_cost_shard_pricing_dimensions
2026-09-21 20:55:41 +00:00
kerry
31a58836dd
Merge remote-tracking branch 'origin/main' into litellm_cost_shard_passthrough
2026-09-21 20:55:20 +00:00