Commit graph

48605 commits

Author SHA1 Message Date
Yujong Lee
189a96fdb6 test(ocr): cover official provider response shapes 2026-09-12 10:31:46 -07:00
Yujong Lee
39cec3ef4e fix(ocr): align conversion contracts 2026-09-12 10:26:53 -07:00
Yujong Lee
e3e5b91016 perf(ocr): skip unused callback work and benchmark callback overhead 2026-09-12 10:22:49 -07:00
Yujong Lee
5cd67f38d6 fix(ocr): normalize DeepSeek document content 2026-09-12 10:16:42 -07:00
Yujong Lee
c7f0c46029 refactor test 2026-09-12 10:05:46 -07:00
Yujong Lee
d4d029d1a1 refactor(python-bridge): organize placeholder routes 2026-09-12 10:03:46 -07:00
Yujong Lee
d17b9a8b0b perf(ocr): bound responses and reduce native scheduling overhead 2026-09-12 10:02:57 -07:00
Yujong Lee
612d335f59 fix(ocr): document native callable casts 2026-09-12 08:55:19 -07:00
Yujong Lee
ed140cd861 wip 2026-09-12 08:48:13 -07:00
Yujong Lee
fd48f9da75 fix(ocr): preserve reducto native compatibility 2026-09-12 08:40:50 -07:00
Yujong Lee
fe8759df7b wip 2026-09-12 08:35:40 -07:00
Yujong Lee
a67e94162a refactor 2026-09-12 08:21:05 -07:00
Yujong Lee
c6fc5e185f wip 2026-09-12 08:07:37 -07:00
Yujong Lee
43a19d81ab wip 2026-09-12 07:40:04 -07:00
Yujong Lee
3b9fc16f6b refactor(ocr): remove unused rust bridge capability 2026-09-12 07:29:42 -07:00
Yujong Lee
da1882d18f refactor(ocr): move public OCR into native lifecycle 2026-09-11 23:22:14 -07:00
Yujong Lee
4d5c83df93 Merge remote-tracking branch 'github/litellm_internal_staging' into litellm_ocr_completion_integration_20260912 2026-09-11 23:11:40 -07:00
yuneng-jiang
e88ba94da5
Merge pull request #40838 from BerriAI/litellm_fix_ocr_native_vcr
test(ocr): exempt native parity requests from cassette replay
2026-09-11 23:01:13 -07:00
Yuneng Jiang
aecc961016
test(ocr): exempt native parity requests from cassette replay 2026-09-11 22:50:39 -07:00
Yujong Lee
15eedb98c0
fix(callbacks): preserve completion lifecycle behavior 2026-09-11 22:07:04 -07:00
Yujong Lee
b2e9408cb8
refactor(ocr): resolve logging executor explicitly 2026-09-11 22:07:04 -07:00
Yujong Lee
493308691b
fix(ocr): make completion ownership explicit 2026-09-11 22:07:04 -07:00
Yujong Lee
ac97bb8a96
fix(ocr): retain completion through finalization 2026-09-11 22:07:04 -07:00
Yujong Lee
6b505ed6ca
fix(ocr): preserve wrapper invocation kwargs 2026-09-11 22:07:04 -07:00
Yujong Lee
10fbe4048f
test(ocr): narrow mapped failure assertion 2026-09-11 22:07:04 -07:00
Yujong Lee
2dafe7e538
test(ocr): prove wrapper completion handoff 2026-09-11 22:07:04 -07:00
Yujong Lee
3a8929bf9e
fix(ocr): release completion state after dispatch 2026-09-11 22:07:04 -07:00
Yujong Lee
0aa8e828b3
refactor(ocr): extract call completion boundary 2026-09-11 22:07:04 -07:00
Mateo Wang
98d46ee59d
Merge pull request #40765 from BerriAI/litellm_fix_health_scoped_results_and_serialization
fix(proxy): expand access groups in /health scoping and allowlist health display fields
2026-09-11 21:21:44 -07:00
yuneng-jiang
1be89d28b8
Merge pull request #39990 from BerriAI/litellm_e2e_jwt_harness
test(e2e): reusable JWT fixtures and management lifecycle coverage
2026-09-11 21:18:59 -07:00
Mateo Wang
7ad6c628de
Merge pull request #40773 from BerriAI/litellm_e2e_memory_regression_failing_requests
test(e2e): memory regression test for failing requests on the release gate
2026-09-11 20:46:33 -07:00
mateo-berri
5ab6e0858c fix(health): resolve a model name the way a request routes before matching the provider model string 2026-09-11 20:40:00 -07:00
Mateo Wang
99e14fc2e5
Merge pull request #40798 from BerriAI/litellm_lit7523_mantle_reasoning_summary
fix(bedrock_mantle): gate reasoning.summary on the OpenAI Responses path
2026-09-11 20:30:49 -07:00
joshua-berri
70cf348aa5
Merge pull request #40791 from BerriAI/litellm_fix_mcp_root_discovery_6634
fix(mcp): use gateway authentication for root discovery
2026-09-11 20:23:10 -07:00
joshua-berri
e86adf98ac
Merge pull request #40808 from BerriAI/litellm_fix_mcp_oauth_issuer_7078
fix(mcp): match per-server OAuth metadata issuers
2026-09-11 20:23:00 -07:00
joshua-berri
108cacdd2f
Merge pull request #40790 from BerriAI/litellm_fix_mcp_discovery_cache_6585
fix(mcp): cache upstream discovery lists
2026-09-11 20:16:36 -07:00
mateo-berri
eaf3d8ad3e fix(health): target a model name the way a request for it routes
A team's copies published under the name win, then deployments named that way, then a public name only another team's deployment carries (an admin reaches it, routing does too). The endpoint resolver and the live narrowing share one rule.
2026-09-11 20:12:39 -07:00
Mateo Wang
19c8553052
Merge pull request #40820 from BerriAI/litellm_sanitize_unknown_model_error_message
fix(proxy): keep the raw model string out of the unknown-model spend-log error message
2026-09-11 19:54:34 -07:00
mateo-berri
6209f0694b fix(health): keep team public names to the owning team and let model_id win over model
A public name a team publishes its own deployment copy under now targets that copy only for a caller from that team, so an admin or another team probing the shared name gets the global deployment alone

model_id wins when paired with model: a foreign id still gets the 403, and an id no deployment carries gets the 404 of the lone-id path, before any probe runs or a result is stored under it

cache_health_check_results accepts the Mapping sequences perform_health_check returns
2026-09-11 19:49:37 -07:00
mateo-berri
9ba7ec2964 test(e2e): keep the memory regression case in a class and drop the helper docstrings 2026-09-11 19:46:06 -07:00
ryan-crabbe-berri
e65b7ff0b8
Merge pull request #40659 from BerriAI/litellm_team_member_table_search_sort_filter
feat(ui): search, sort and role filter for the team member table
2026-09-11 19:37:29 -07:00
devin-ai-integration[bot]
98f6c14a76
test(pgbouncer): stop the never-listens replacement test flaking under CI load (#40830) 2026-09-11 19:32:56 -07:00
mateo-berri
a8ffc852f2 test(e2e): trim the reliability helper docstrings to the cooldown rationale 2026-09-11 19:32:40 -07:00
mateo-berri
9375719feb Merge remote-tracking branch 'origin/litellm_internal_staging' into litellm_e2e_memory_regression_failing_requests
# Conflicts:
#	tests/e2e/CLAUDE.md
#	tests/e2e/models.py
2026-09-11 19:31:11 -07:00
mateo-berri
6a96a47e9f style(proxy): drop the docstring bullet and wrap the sanitizer test call 2026-09-11 19:29:53 -07:00
ryan-crabbe-berri
c1aaaae4e3
Merge pull request #40831 from BerriAI/litellm_dismissible_env_credential_banner 2026-09-11 19:23:23 -07:00
Mateo Wang
55c34951e3
Merge pull request #40609 from csoni-cweave/fix/guardrail-len-mismatch
fix(guardrails): fail closed with a named error when a Responses input rewrite cannot be applied
2026-09-11 19:22:53 -07:00
ryan
2db51046d4 fix(ui): make the env-credential login warning banner dismissible
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-12 02:20:32 +00:00
mateo-berri
3dafa7aac1 test(proxy): expect the sanitized unknown-model message in the spend-log error test 2026-09-11 19:18:10 -07:00
devin-ai-integration[bot]
b5bf09d22d
fix(db): carry DATABASE_SSLMODE/DATABASE_SSLROOTCERT into the assembled writer and reader URLs (#40815)
* fix(db): carry DATABASE_SSLMODE/DATABASE_SSLROOTCERT into the assembled writer and reader URLs

The componentized gateway supervisor starts the in-container PgBouncer from the
DATABASE_URL assembled out of the discrete DATABASE_* vars before config.yaml is
read, so an IAM URL had no way to request verified TLS: PgBouncer dialed the
server with server_tls_sslmode = prefer (no SNI, no verification) and public
RDS endpoints rejected the handshake. Two new env vars, exposed by the chart as
database.writer.sslMode / sslRootCert, are appended as libpq sslmode/sslrootcert
to every writer and reader URL the settings assemble (never to a pinned URL),
then translated for Prisma as before. Token refresh now also carries Prisma's
sslmode/sslcert/sslaccept over into the re-minted URL

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

* fix(db): keep TLS params on the CLI password URL and the initial IAM reader mint

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

* fix(db): treat DATABASE_SSLROOTCERT on its own as verify-full and cover collector and migrations TLS env

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

* test(db): type the reader mint TLS test double and drop its mutable capture

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

---------

Co-authored-by: yassin <yassin@berri.ai>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-12 02:14:39 +00:00