spec: add §3.3.1 verification guidance for external execution evidence (#34)#60
Merged
Merged
Conversation
#34) Closes #34. Adds a new subsection under §3.3 defining how a conforming verifier handles optional out-of-band receipts attached to audit-chain entries. Core rules: verify issuer signature and linked_call_id when the issuer key is configured, fail closed on mismatch, treat unknown-issuer receipts as unverified-not-invalid, and surface an advisory status rather than silently ignoring them. Explicit trust boundary: TRACE binds the receipt; it does not certify physical actions or safety compliance. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.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 §3.3.1 — External execution evidence (optional) — under §3.3, the verification section.
This is the spec-side counterpart to agentrust-io/cmcp#301, which added the
external_execution_evidencereceipt field to cMCP audit entries and implemented signature verification in cmcp-verify. TRACE needed matching guidance so the spec and the reference implementation stay aligned.Key rules defined:
linked_call_id == call_id, fail closed on any mismatchexternal_evidence_unverifiedrather than silently ignoringNo schema changes — the receipt lives in the cMCP audit chain (committed by the Trust Record's
tool_transcript.hash), not in the TRACE Trust Record itself.Test plan
cmcp-verifybehavior matches the three rules (configured key → verify + reject on fail; unconfigured key → unverified-not-invalid)Closes #34