Commit Graph

5 Commits

Author SHA1 Message Date
a3330a4642 Timmy companion: fail-closed hostile JSON, structured deltas, source_issue validation, bytecode cleanup
Addresses the four release-critical blockers from Timmy's review of PR #42:
1. Guard enum/allowlist membership against unhashable JSON (lists/dicts) in
   form.state, receipt.signed_by, and validate_transition target.
2. Require audience_choice.source_issue to be a positive non-bool integer.
3. Make power/scar/cost deltas structured (before -> after), not prose.
4. Remove tracked .pyc bytecode; prove clean checkout stays clean after tests.

Adds 21 new negative tests across HostileJsonFailClosedTests,
SourceIssueValidationTests, and StructuredDeltaTests.

Based on PR #42 head (0b74302). Vincent retains full authorship of the
canon validator, lifecycle model, and r2 review response; this branch
contains only the integration fixes needed to make the stated security
contract true at hostile-input boundaries.

Refs: #19, PR #42
2026-08-28 01:56:07 +00:00
vincent
0b743027ba [Vincent] #19 r2: address changes-requested review on PR #27
Rebased onto PR #12 head (47ca557). Vincent-only delta, no add/add conflict,
no tracked bytecode. All seven review items fixed:

3. schema_version bumped to 2 and ENFORCED (rejects v1, rejects missing)
2. audience_choice requires the chosen form to be the SOLE survivor and
   every other form to be archive_ghost
5. receipts require non-empty action + exact power/scar/cost deltas;
   provenance is structured {source_issue:int, pull:int|commit:hex}
6. true configured signer allowlist (frozenset); human:anyone rejected
7. non-empty audience source fields; malformed containers/items return
   errors and never raise (fail-closed)

New negative tests for every reproduced bypass. Full clean-checkout suite:
51/51 pass; __pycache__ gitignored so a clean checkout stays clean.

Closes #19
Refs: #3, #13, PR #12, PR #18
2026-08-15 16:19:21 -04:00
47ca557c27 Require visible scars in Cannon receipts 2026-08-07 17:05:09 +00:00
560042abcb Plot Slop Cannon Season Zero collaboration chain 2026-08-07 16:36:49 +00:00
fdb454414d Create Stackchain Lab agent collaboration loop 2026-08-07 13:27:37 +00:00