Skip to content

MCP-10: Add RelayAttestation v1 wire codec and validators#27

Open
aeyakovenko wants to merge 306 commits intoanza-xyz:masterfrom
aeyakovenko:issue-9-mcp-relay-attestation
Open

MCP-10: Add RelayAttestation v1 wire codec and validators#27
aeyakovenko wants to merge 306 commits intoanza-xyz:masterfrom
aeyakovenko:issue-9-mcp-relay-attestation

Conversation

@aeyakovenko
Copy link
Copy Markdown

Summary

  • add ledger/src/mcp_relay_attestation.rs implementing RelayAttestation v1 wire encoding/decoding
  • enforce exact spec invariants during decode:
    • version must be 1
    • entries must be strictly sorted by proposer_index
    • duplicate proposer entries rejected
    • trailing bytes rejected
  • add deterministic serializer/signing preimage helpers
  • add relay-signature and proposer-signature verification helpers
  • add unit tests covering roundtrip, determinism, signature checks, and rejection paths

Why this shape

  • keeps MCP wire logic isolated and deterministic
  • keeps existing shred pipeline types unchanged
  • gives replay/leader paths a strict, reusable attestation validator

Tests

  • cargo test -p solana-ledger --lib mcp_relay_attestation::tests -- --nocapture

Fixes #9

@aeyakovenko aeyakovenko force-pushed the issue-9-mcp-relay-attestation branch from dcf2ee0 to 913087c Compare February 8, 2026 15:24
# Conflicts:
#	ledger/src/shred/mcp_shred.rs
#	plan.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MCP-10 Relay: record attestation

1 participant