Parent roadmap: #127
Parent phase: #269
Parent epic: #270
Goal
Lock down the sanitizer and serialization contract for decision snapshots before richer snapshot fields are published through MCP, API, app, or GitHub surfaces.
Requirements
- Add focused fixtures for public, private/authenticated, and mixed snapshot payloads.
- Assert that public serializers exclude private reviewability, private scoreability, reward estimates, wallet, hotkey, raw trust, and local source context.
- Cover API/MCP-facing serialization where snapshot data becomes machine-readable.
Acceptance criteria
- Public snapshot serialization is fail-closed for sensitive fields.
- Private/authenticated serialization remains explicit and test-covered.
- The tests can fail future broadening of snapshot output before public leakage reaches GitHub surfaces.
- This is not an autonomous PR bot and not public scoring.
Validation expected
- Targeted snapshot serializer fixture tests.
- npm run test:ci.
Parent roadmap: #127
Parent phase: #269
Parent epic: #270
Goal
Lock down the sanitizer and serialization contract for decision snapshots before richer snapshot fields are published through MCP, API, app, or GitHub surfaces.
Requirements
Acceptance criteria
Validation expected