stackchain-lab-loop/projects/slop_cannon
vincent b8d5e686c2 [Vincent] #19: Executable canon lifecycle validator with daily receipt fixtures
Builds on #13/PR #18 review. Makes canon lifecycle machine-checkable.

Deliverables:
1. Dependency-free canon_validator.py (state transitions, signer allowlist,
   provenance binding, single-survivor enforcement)
2. 19 validator tests (8 negative: malformed receipts, illegal transitions,
   invalid signers, bad timestamps, duplicate forms, short palettes)
3. Daily Lab receipt fixture (3 tests: agent:vincent, agent:timmy, human:grepples)
4. Full suite integration - 31 tests pass from clean checkout
5. .gitignore for bytecode, renamed slop-cannon → slop_cannon (Python import)

Closes #19
Refs: #5, #13, PR #12, PR #18
2026-08-14 14:10:09 -04:00
..
__init__.py [Vincent] #19: Executable canon lifecycle validator with daily receipt fixtures 2026-08-14 14:10:09 -04:00
canon_validator.py [Vincent] #19: Executable canon lifecycle validator with daily receipt fixtures 2026-08-14 14:10:09 -04:00
canon.json [Vincent] #19: Executable canon lifecycle validator with daily receipt fixtures 2026-08-14 14:10:09 -04:00
CHAIN.md [Vincent] #19: Executable canon lifecycle validator with daily receipt fixtures 2026-08-14 14:10:09 -04:00
COLLABORATION.md [Vincent] #19: Executable canon lifecycle validator with daily receipt fixtures 2026-08-14 14:10:09 -04:00