Files
stack/docs/scratchpads/832-receipt-challenge-protocol.md
2026-07-19 16:30:23 -05:00

1.5 KiB

#832 Receipt-challenge protocol — build scratchpad

  • Objective: Deliver WI-5 receipt-challenge protocol ACs T25, T26, T28, and T29 only.
  • Authority: BUILD-BRIEF, SPEC-v5, ratification, and red-team hashes verified in STEP-0.
  • Base: e522b22fa4492861b0fcd4a956a8795c54eb9bfe (origin/main).
  • Constraints: Byte-build only: no live broker/socket/systemd/tmux mutation. No PR, self-review, or probe fire. T27/T30 are out of scope.
  • Plan:
    1. Add red-first deterministic T26/T29 in-build tests that call shipped normative construction and broker path.
    2. Add an unexecuted, isolated P5 out-of-process replay harness that drives the shipped daemon and asserts consume-before-promote for T25/T28.
    3. Implement the broker-minted receipt challenge and exact receipt observation/consume/promote path.
    4. Run unit, framework-shell, compile, lint, and type checks; push after the required queue guard; report to mosaic-100.
  • Risks: The standalone harness must drive the real daemon without a divergent fixture. If that is impossible, stop and flag Mos.
  • Evidence: RED recorded in /home/hermes/agent-work/reviews/832-wi5-red-receipt-challenge.log: receipt module absent before implementation. GREEN: receipt T26/T29 unittest (2 tests), normative-fragments unittest (5 tests), state-store regression (10 tests), py_compile, Mosaic package lint, and Mosaic package typecheck. Coverage tooling is unavailable (python3 -m coverage: module not installed); no probe was fired. Push pending.