feat(providers): add profile-backed policy composition#1037
Open
johntmyers wants to merge 7 commits intomainfrom
Open
feat(providers): add profile-backed policy composition#1037johntmyers wants to merge 7 commits intomainfrom
johntmyers wants to merge 7 commits intomainfrom
Conversation
|
🌿 Preview your docs: https://nvidia-preview-pr-1037.docs.buildwithfern.com/openshell |
89e8c63 to
68e6947
Compare
|
Label |
Collaborator
Author
|
/ok to test 68e6947 |
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
Add the first provider profile foundation: bundled YAML provider profiles, profile proto surfaces, CLI discovery for provider types, and JIT policy composition behind the opt-in
use_providers_v2gateway setting.Related Issue
Closes #947
UX Changes
openshell provider list-typesto browse built-in provider profiles exposed by the gateway.other,inference,agent,source_control,messaging,data, andknowledge.use_providers_v2=falseor unset, providers keep the existing credential discovery/injection behavior and profile-backed policy composition is not used.use_providers_v2=trueis enabled at the gateway, sandbox policy reads compose the sandbox-authored policy with provider profile policy layers JIT. Built-in profile YAML defines the provider policy defaults, and duplicate/overlapping user policy entries are preserved through layered composition instead of replacing the user's sandbox policy.Changes
provider list-typesdiscovery.use_providers_v2gateway setting for profile-backed policy composition.genericas a legacy provider type without a bundled v2 profile or automatic policy contribution.Testing
RUSTC_WRAPPER= cargo check -p openshell-core -p openshell-providers -p openshell-cli -p openshell-serverRUSTC_WRAPPER= cargo test -p openshell-providersRUSTC_WRAPPER= cargo test -p openshell-cli cli_provider_types_match_registryRUSTC_WRAPPER= cargo test -p openshell-server sandbox_config_RUSTC_WRAPPER= cargo test -p openshell-server provider_environment_resolution_is_unchanged_by_providers_v2_settingRUSTC_WRAPPER= cargo test -p openshell-server provider_profileRUSTC_WRAPPER= cargo test -p openshell-cli provider_list_types_cli_uses_profile_browsing_rpcmise run pre-commitpassesChecklist