Conversation
Adjacent delivery-evidence gate only. Not on the tools/call hot path.
Reviewer's GuideThis docs-only PR adds guidance and a copy-paste workflow example for optionally verifying pinned, offline TOA delivery evidence before enabling or promoting an Unla MCP upstream. It keeps the gate off by default, runs only when Flow diagram for optional TOA gateway enablement gateflowchart TD
A[Unla config lint and smoke checks] --> B{"hashFiles('toa.json') != ''"}
B -->|No| C[Enable or promote MCP upstream]
B -->|Yes| D[toa-verify toa.json --require-layer functional=pass]
D -->|Pass| C
D -->|Fail| E[Do not enable or promote]
File-Level Changes
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey - I've found 2 issues
Prompt for AI Agents
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location path="docs/toa-optional-gateway-gate.md" line_range="17" />
<code_context>
+
+Optional, off by default. Before enabling or promoting a proxied MCP upstream
+(or publishing a new config version), require a recent attestation and verify it
+offline with a pinned emitter public key.
+
+- Any party can emit if they sign the schema.
</code_context>
<issue_to_address>
**🚨 issue (security):** The documented command does not supply or configure the pinned emitter public key promised by the preceding text, so this workflow does not enforce which issuer is trusted. An attestation signed by an untrusted or self-declared key can therefore satisfy the shown layer check.
**Triggers:** When an organization copies this workflow expecting the verification step to enforce an emitter allowlist.
**Suggested fix:** Pass the pinned public key or verifier trust-store configuration to `toa-verify`, and document where that key is maintained.
</issue_to_address>
### Comment 2
<location path="docs/toa-optional-gateway-gate.md" line_range="17" />
<code_context>
+
+Optional, off by default. Before enabling or promoting a proxied MCP upstream
+(or publishing a new config version), require a recent attestation and verify it
+offline with a pinned emitter public key.
+
+- Any party can emit if they sign the schema.
</code_context>
<issue_to_address>
**issue (bug_risk):** The example only requires `functional=pass`; it does not enforce the documented requirement that the attestation be recent. A stale valid `toa.json` continues to pass and can be used to approve a later gateway enable or promotion.
**Triggers:** When `toa.json` contains an old but otherwise valid attestation.
**Suggested fix:** Add an explicit freshness or maximum-age check, and bind the attestation to the upstream/config version being enabled.
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
|
||
| Optional, off by default. Before enabling or promoting a proxied MCP upstream | ||
| (or publishing a new config version), require a recent attestation and verify it | ||
| offline with a pinned emitter public key. |
There was a problem hiding this comment.
🚨 issue (security): The documented command does not supply or configure the pinned emitter public key promised by the preceding text, so this workflow does not enforce which issuer is trusted. An attestation signed by an untrusted or self-declared key can therefore satisfy the shown layer check.
Triggers: When an organization copies this workflow expecting the verification step to enforce an emitter allowlist.
Suggested fix: Pass the pinned public key or verifier trust-store configuration to toa-verify, and document where that key is maintained.
Match toa-verify --require-emitter / --max-age 7d after Carmel-Labs-Inc/toa#1.
|
Addressed the Sourcery findings in the follow-up commit:
|
Carmel-Labs-Inc/toa@99e2690 ships keys/agentstatus-v1.json inside the python package (toa#2).
|
Sourcery findings were addressed in follow-up commits: examples now use |
Summary
Docs-only. Optional offline
toa-verifybefore enabling or promoting a proxied MCP upstream in Unla.docs/toa-optional-gateway-gate.mdexamples/toa-after-gateway.ymlDoes not change gateway runtime. TOA (
toa/0.1) is adjacent delivery evidence, not a wire protocol and not per-call signing. No AgentStatus account is required to verify.Test plan
toa.jsonMade with Cursor
Summary by Sourcery
Document an optional offline TOA verification gate for validating MCP tool delivery before gateway configuration changes.
New Features:
Enhancements:
Documentation: