fix: preserve CLI targeting and embedding APIs with managed data access - #676
Merged
Merged
Conversation
aaltshuler
marked this pull request as ready for review
September 6, 2026 20:29
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.
What & why
A folder containing
.omnigraph/contextcurrently intercepts explicit data targets and rejects unrelated graph commands. Restore ordinary routing for explicit selectors and unrelated commands, and restore the public Rust struct construction contracts changed by PR #633.--server,--profile,--store,--cluster, and--directbypass managed data dispatch before reading context. Their existing command support rules still apply.OMNIGRAPH_PROFILEor an operator default target refuses before keychain access or requests. Selected managed access never falls back after credential, permission, or transport failure.ServerConfig,ServingSnapshot, andResolvedActorregain their earlier public field shapes. Additive managed boot APIs bind trust to the same opened store before graph opening; an opaque authenticated actor preserves signed grant ceilings through every protected handler.For example,
omnigraph query find_person --profile staging --graph knowledgekeeps using staging even from a folder bound to a managed production cluster. Local init/load/schema/commit operations also keep their normal behavior there, including beside malformed context.Backing issue / RFC
Checklist
Local verification
Integration with current main preserves opaque verified authority through GQ branch dispatch. All 107 focused server tests and the extended signed-token branch regression pass; both strict workspace Clippy configurations pass. All executed CI checks passed at
bcc43770c88a2c25c60f366f17d9fe86f3f8e0e3(https://github.com/ModernRelay/omnigraph/actions/runs/34057560778).Before implementation, the explicit-target and ambient-routing regressions failed on the original dispatcher. The external public-API fixture also failed to compile with the three incompatible struct shapes.
cargo test --locked -p omnigraph-cli -p omnigraph-server -p omnigraph-cluster -- --test-threads=2— passed, using the freshly built server binary for CLI system tests. This includes managed credential isolation, served/direct parity, boot trust, signed authorization, stored queries, and OpenAPI drift checks.Historical-binary and S3/Azure cases requiring external fixtures were skipped because those fixture variables were unset. Remote/operator and provider-specific ignored tests were not enabled. These results do not establish live pilot qualification.
cargo clippy --locked -p omnigraph-cli -p omnigraph-server -p omnigraph-cluster --all-targets -- -D warnings -W clippy::dbg_macro— passed.cargo test --locked -p omnigraph-cli --test cli_schema_config help_groups_commands_by_capability -- --exact— passed after the final help-text edit; inspected the rebuilt binary's--helpoutput.Formatting, documentation links/indexes, spelling, and whitespace checks — passed.
Notes for reviewers
The repair preserves the existing server flags, trust JSON, HTTP routes, storage formats, static-token behavior, and managed token protocol. Embedders that adopted the interim #633 fields migrate to the additive APIs described in the developer guide; both conflicting struct literal shapes cannot coexist. This PR does not implement new managed operator-YAML fields or change the control-plane dependency pin or deployed images. The canonical workspace feature-superset, AWS-feature, and cloud-provider CI gates remain required before merge.