Repository navigation
refactor(rust_bridge): remove rule-gated native secret-manager selection - #44906
Merged
Merged
Conversation
Mirror the cache treatment: SecretManagerRule/SecretManagerContext and the resolve_native_* binding plumbing are gone. The Rust bridge now selects the native backend from the explicitly configured client (capture_secret_manager / _SecretManagerRuntime.from_client), and get_secret_from_manager is the plain Python handler path. Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Contributor
Author
|
I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".
|
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
yujonglee-berri
enabled auto-merge (squash)
October 6, 2026 19:09
yujonglee-berri
approved these changes
Oct 6, 2026
Contributor
|
Contributor
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Removes the rule-gated native secret-manager dispatch, mirroring the cache change in #43601 (
CacheRuleremoval):SecretManagerRule,SecretManagerContext, and theirRULESentries are deleted fromrust_bridge/catalog.py, and the wholeresolve_native_secret_manager/resolve_native_provider_reader/resolve_native_provider_writermachinery (NativeSecretManagerFactory/Runtime/Reader/Writerprotocols and theNATIVE_SECRET_MANAGERbinding) is deleted fromrust_bridge/secret_manager.pyNative selection now happens the same way the Rust crates already resolve it:
settings.secret_manager().nativeisreadable and system is not None(no rule lookup), andconfig.rs::readpicks the native backend from the explicitly configured client via_SecretManagerRuntime.from_client, which uses the kept capture layer (capture_secret_manager,native_secret_manager_config,NativeSecretManagerConfig, the client adapters).litellm/secret_managers/dispatch.pybecame a pure pass-through and is deleted;main.pycallssecret_manager_handler.get_secret_from_managerdirectly, and thenative: Final = resolve_native_*blocks in the AWS, Vault, CyberArk, and Google secret managers are removed so those methods are plain Python againTests:
test_secret_manager.pyno longer selects through rules; rollout-parametrized provider tests collapse to the Python path, and the parity tests now compareget_secret_from_manageragainst afrom_clientnative handle directly, matching the rust_bridge test convention of calling each side explicitlyTest plan
LITELLM_LOCAL_MODEL_COST_MAP=True uv run --no-sync pytest tests/unit/rust_bridge/— 1132 passedruff checkclean on the touched packagesLink to Devin session: https://app.devin.ai/sessions/4eba617ab83944cf9880eb6ec149b1ac
Open in Devin Desktop: https://app.devin.ai/desktop/session/4eba617ab83944cf9880eb6ec149b1ac?variant=devin
Requested by: @yujonglee-berri