feat: add Google ADK delegated-authority reference profile - #63
Draft
chuks wants to merge 11 commits into
Draft
Conversation
13 tasks
Contributor
Author
This was referenced Aug 12, 2026
chuks
added a commit
that referenced
this pull request
Aug 12, 2026
## Summary Establishes the platform-neutral home and governance contract for executable Ratify reference profiles. This PR deliberately contains no Google, NVIDIA, LangChain, XMTP, or other platform implementation or registry entry. After it merges, every platform reference can branch independently from `main`, add exactly one profile directory and registry row, and merge without depending on another platform PR. ## Changes - Adds `references/README.md` with the profile contract, empty registry, lifecycle, and endorsement-status rules. - Links reference profiles from the root README and repository tree. - Clarifies the boundary between open interoperability references and managed Ratify Verify adapters. ## Verification - `git diff --check` - Reviewed against open drafts #61, #63, and #66 to ensure all platform-specific content remains in those PRs. ## Follow-up After merge, the existing platform branches will be rebased onto `main`, their PR bases normalized to `main`, and their platform-specific gates rerun. Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Contributor
Author
|
Continuity note: the platform-neutral reference registry and managed/open boundary have merged independently in #67. This branch was rebased onto the updated |
chuks
force-pushed
the
feat/google-adk-reference
branch
from
August 12, 2026 15:35
85cf0a6 to
87b2eca
Compare
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
Signed-off-by: chuks <891251+chuks@users.noreply.github.com>
chuks
force-pushed
the
feat/google-adk-reference
branch
from
August 12, 2026 16:01
87b2eca to
2da9638
Compare
Contributor
Author
|
Final registry note: #68 replaced the shared table with merge-independent, one-file-per-platform entries. This PR now adds |
Signed-off-by: Chuks Onwuneme <891251+chuks@users.noreply.github.com>
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
Adds
references/, a home for executable integration profiles, and the first profile: proof-carrying delegated authority for Google ADK agents over native Streamable HTTP MCP. No SDK source,SPEC.mdnormative behavior, ortestvectors/v1/fixture bytes change in this PR.The profile answers one narrow question. When an ADK agent crosses an MCP or organizational boundary, can the system carrying the consequence independently verify who authorized the agent for that exact action, and which bounds still apply?
Type of change
Adds a new non-SDK
references/tree plus a one-command verification gate. Closest fit to the categories above; flagging explicitly rather than leaving it blank.Related issues
None. Opening as a draft for review before the profile is linked from the docs site.
What the profile contains
max_nodesceiling.McpToolsetthat exposes only the four business arguments to the model. Challenge acquisition and proof injection happen after ADK selects the tool, so private keys and proof bytes never enter model context.Verification
The gate builds a disposable virtual environment, installs the exact pinned public packages, refuses to run if
ratify-protocolresolves to this repository's local Python SDK rather than the published package, runs the adversarial suite, and runs the demonstration.Current result: 31 passed, zero skips, zero xfails. Recorded in
references/google-adk/evidence/reference-evidence.md.The suite covers allow plus the following fail-closed cases, each asserting that the protected handler invocation count does not move: excess node count, wrong resource, expiry, revocation, replay, operation altered after challenge issuance, wrong agent, valid chain under an untrusted root, malformed input, unauthenticated transport, pending-capacity saturation, concurrent duplicate request identifiers, and receiver unavailability.
Cross-SDK impact
None. The profile consumes the published Python package through its public API and adds no verifier semantics. The gate asserts that the local
sdks/pythontree is not on the import path, so this cannot mask an SDK regression.Scope and non-goals
Recorded in full under Limitations in
references/google-adk/README.md. The load-bearing ones:McpTooladapter, because ADK does not currently expose operation-specific hidden MCP metadata as a stable public hook. This is isolated and tested, and should be mapped with the ADK maintainers before anyone claims forward compatibility.Authorization. This is deliberate and worth raising upstream.This is an independent draft. It is not a Google partnership, a Google-approved integration, or a Google reference architecture, and
references/README.mdstates that passing tests do not make a profile official for the named platform.Checklist
git commit -s). CI rejects PRs without it.docs/EXPLAINED.mdupdated to describe open reference profiles alongside the managed surface adapters.How to verify
make test-allis unaffected and should be unchanged by this PR. The profile has its own gate:Worth trying by hand: change
max_nodesinreferences/google-adk/authority_reference/authority.py, or the region bound, and confirm the protected handler invocation count stays flat on every denial. The profile is intended to be easy to falsify.