devin-ai-integration[bot]
1175559c39
feat(lint): add LIT013 flagging *-ok suppressions that suppress nothing and remove the 240 stale ones ( #42793 )
2026-09-23 17:50:09 -07:00
devin-ai-integration[bot]
19556952d9
feat(secrets): route secret resolution through native Rust backends ( #42619 )
...
* fix(secrets): verify provider API request and payload contracts
* wip
* fix(secrets): unify backend reads and route secret resolution
* feat(secrets): bind built-in managers to retained Rust backends
* refactor(secrets): centralize catalog dispatch and native binding
* test(secrets): split provider integration tests
* refactor(secrets): enforce cache and rotation contracts
* test(secrets): stub parent packages in failing resolver fixture
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* refactor(secrets): pass manager settings through the interop boundary
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): align cloud KMS auth and harden provider reads
* ci(rust): raise native wheel size gate to 40 MB for secrets backends
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(proxy): treat unset google kms flag as disabled like the old loader
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): preserve certificate credentials and disabled KMS flags
* test(secrets): cover certificate validation and bounded auth retries
* test(secrets): cover Python dispatch without the native extension
* test(proxy): skip legacy secret manager cases when the optional SDK is missing
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): port Python parity tests and preserve provider behavior
* fix(secrets): store the captured native config without setattr to satisfy the strict lint budget
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): preserve missing Azure manager values
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* test(secrets): pin typed values and recovery failure precedence
* refactor(secrets): organize provider internals and behavioral test suites
* refactor(secrets): simplify recovery and isolate Python compatibility
* fix(secrets): distinguish Azure callback absence from HTTP not found
* fix(secrets): preserve Python AWS read results at the bridge
* fix(secrets): route public reads through the native catalog bridge
* fix(secrets): keep JSON selection outside the bridge
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): preserve provider JSON reads at the bridge
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): preserve Python primary JSON semantics
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(secrets): preserve CyberArk mutation behavior through the native bridge
* docs(secrets): record public API replacement gaps
* refactor(secrets): share Vault write payload preparation
* feat(secrets): route Vault mutations through the native bridge
* fix(secrets): preserve typed Vault rotation failures
* refactor(secrets): move Python dispatch into bridge
* refactor(secrets): move CyberArk Python policy into bridge
* refactor(secrets): move Vault Python policy into bridge
* test(secrets): assert Vault rotation request paths
* fix(secrets): keep bridge JSON interop centralized
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
---------
Co-authored-by: Yujong Lee <yujong@berri.ai>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-23 08:24:57 -07:00
Yujong Lee
0c5bbf8c37
Merge branch 'main' into litellm_rust_cache_s3
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 23:04:42 +00:00
Yujong Lee
02cc4da252
test(rust): keep s3 parity test edits scoped to the mock handler change
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 22:18:18 +00:00
Yujong Lee
a286106f4f
fix(rust): isolate explicit s3 keys from env tokens and treat 403 misses
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 22:17:11 +00:00
Yujong Lee
a6d1497932
test(rust): add GCS native cache parity fixtures
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:38:20 +00:00
Yujong Lee
788e24655a
feat(rust): add native S3 cache backend
...
Mirror the Redis vertical slice for S3Cache: a litellm-cache-s3 crate built on aws-sdk-s3 with path-style custom endpoints, python-identical put_object metadata (cache-control, expires, content headers), expires-aware get_object, and no-op flush/unsupported test_connection. Wire it through python-bridge config projection, facade guards, test handle, and binding dispatch, plus an in-process S3 stub and parity tests.
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-21 20:35:08 +00:00
Yujong Lee
18a1491bd2
test(rust): pin child interpreters to the parent's litellm and lint for it
...
Children spawned as [sys.executable, -c, ...] put the working directory first on sys.path, so under 'make test-rust-extension' a source checkout shadows the installed wheel and the child imports a litellm with no compiled extension. A shared helper spawns them with -I and asserts the child resolved the same litellm.__file__ as the parent, and a new TQ009 rule flags un-isolated sys.executable spawns.
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-19 18:17:54 +00:00
Yujong Lee
ba6b22cf56
test(rust): isolate callback registries per hypothesis example
...
Replace the module-level LATEST_EDITS list with per-example callback
registry isolation, and import litellm names with from-imports in the
legacy callback shim so the module uses one import style.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 15:57:50 -07:00
Yujong Lee
1a52bae779
add streaming message
2026-09-18 15:45:08 -07:00
Yujong Lee
4ecc55ec70
fix(ocr): build upstream httpx response in Python and satisfy PT012
...
The Rust bridge imported httpx to construct the provider error response, which
fails in the isolated wheel check where httpx is absent. Rust now raises
RustUpstreamError with a headers attribute and the Python lifecycle wraps it in
a typed UpstreamFailure carrying the httpx.Response before legacy mapping.
Test helpers gained call_native so pytest.raises blocks hold a single call
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-17 17:34:18 +00:00
yujonglee
347b642bdd
refactor(ocr): complete native lifecycle and preserve Azure auth ( #40734 )
...
* refactor(ocr): extract call completion boundary
* fix(ocr): release completion state after dispatch
* test(ocr): prove wrapper completion handoff
* test(ocr): narrow mapped failure assertion
* fix(ocr): preserve wrapper invocation kwargs
* fix(ocr): retain completion through finalization
* fix(ocr): make completion ownership explicit
* refactor(ocr): resolve logging executor explicitly
* fix(callbacks): preserve completion lifecycle behavior
* refactor(ocr): move public OCR into native lifecycle
* refactor(ocr): remove unused rust bridge capability
* wip
* wip
* refactor
* wip
* fix(ocr): preserve reducto native compatibility
* wip
* fix(ocr): document native callable casts
* perf(ocr): bound responses and reduce native scheduling overhead
* refactor(python-bridge): organize placeholder routes
* refactor test
* fix(ocr): normalize DeepSeek document content
* perf(ocr): skip unused callback work and benchmark callback overhead
* fix(ocr): align conversion contracts
* test(ocr): cover official provider response shapes
* fix(ocr): restore Python fallback and honor Rust opt-out
* fixes and refactor
* fix(ocr): preserve Azure Document Intelligence authentication
* fix(rust): enforce OCR response limits and lint contracts
* test(rust): align native OCR contract coverage
* test(ocr): isolate Azure auth precedence coverage
2026-09-12 11:56:49 -07:00
yujonglee
61b0def867
test(ocr): isolate native Rust bridge contracts ( #40410 )
...
* test(rust): add retained callback suite as expected failures
* fix(tests): narrow retained callback xfails
* test(rust): clarify retained callback contracts
* test(ocr): clarify retained Rust contracts
* test(ocr): restore guardrail contracts
* test(ocr): require Rust file input parity
* test(ocr): isolate native bridge contracts
* fix(ci): repair Rust dispatch and OSV checks
* test(ocr): assert explicit backend dispatch
2026-09-10 16:51:37 -07:00