Repository navigation
Constrain workspace schema reads and add a bounded agent SDK - #11
Merged
Merged
Conversation
ancongui
marked this pull request as ready for review
October 16, 2026 11:37
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.
Table and schema reads now retain the requested tenant/workspace scope through parent joins. A current snapshot is exposed only when its table, dataset, tenant and workspace match. An invalid stored pointer leaves the table available without exposing the other scope's snapshot metadata.
The Python SDK adds a GET-only
AgentReadClientwith fixed tenant/workspace/dataset scope, parent-snapshot validation and bounded connections, responses and catalogs. It uses agent routes and cannot execute queries. Server and SDK versions align at 26.10.4; both Maven JARs include the existing Apache license. Protocol shapes and third-party dependencies are unchanged.Validation:
cf197115ee3ffef80d16ba275f5c3192626d0cbd: 531 server unit tests; 111 integration tests with 15 skips; Python SDK 89 tests and the configured mypy check over 147 files; Java SDK 722 passes and 135 skips. Server pyright reports zero errors and 12 warnings under its advisory policy.The forge adapter and a prepared-query-result agent mirror are outside this change. Publication and remote asset checks follow merge. Application deployment stays local.