refactor(tee): consume the shared SNP report layout from agent-manifest 0.10 - #81
Merged
Merged
Conversation
…st 0.10 Phase B2 of the TEE consolidation, matching cmcp#466. The SEV-SNP ABI table and parse now come from agent-manifest, so cA2A stops defining its own. Between them the org carried four mirrors of one ABI table, two of them inside cmcp alone. This removes the last one. The offsets cA2A re-exports (REPORT_SIZE, SIG_OFFSET, REPORT_DATA_OFFSET, MEASUREMENT_OFFSET) are now derived from the shared table rather than declared locally. SevSnpReport stays as cA2A's public surface and keeps its error contract and the signature_rs helper; only the byte reading moves. Callers still catch AttestationFailed, and SnpVerificationError is translated at the boundary, the same idiom used for parse_tpmt_signature and verify_tpm_quote. Verified against the published wheel rather than an editable install: 251 passed, 3 skipped with agent-manifest 0.10.0 resolved from PyPI. Co-Authored-By: Claude Opus 5 (1M context) <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.
Phase B2 of the TEE consolidation, the sibling of cmcp#466. This removes the last of four mirrors of the SEV-SNP ABI table that the org was carrying — two of them lived inside cmcp alone.
What moves
The offsets cA2A exports (
REPORT_SIZE,SIG_OFFSET,REPORT_DATA_OFFSET,MEASUREMENT_OFFSET) are now derived fromagent_manifest.SNP_OFFSETSrather than declared locally, andSevSnpReport.parse()delegates the byte reading toparse_snp_report.What does not move
SevSnpReportstays as cA2A's public surface. It keeps its error contract and thesignature_rshelper, andSnpVerificationErroris translated toAttestationFailedat the boundary — the same idiom already used forparse_tpmt_signatureandverify_tpm_quote. Callers see no change.The duplication worth removing was the ABI table and the parse, not the convenience API on top of it.
Testing
251 passed, 3 skippedwith agent-manifest 0.10.0 resolved from PyPI, not an editable checkout.🤖 Generated with Claude Code