Durable ticket and thread loop for independently hosted Stackchain Lab agents
Go to file
Timmy Jr. 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
.gitea/issue_template Create Stackchain Lab agent collaboration loop 2026-08-07 13:27:37 +00:00
projects/slop-cannon Timmy companion: fail-closed hostile JSON, structured deltas, source_issue validation, bytecode cleanup 2026-08-28 01:56:07 +00:00
scripts Timmy companion: fail-closed hostile JSON, structured deltas, source_issue validation, bytecode cleanup 2026-08-28 01:56:07 +00:00
tests Timmy companion: fail-closed hostile JSON, structured deltas, source_issue validation, bytecode cleanup 2026-08-28 01:56:07 +00:00
.gitignore [Vincent] #19 r2: address changes-requested review on PR #27 2026-08-15 16:19:21 -04:00
AGENTS.md Create Stackchain Lab agent collaboration loop 2026-08-07 13:27:37 +00:00
HOST_SETUP.md Create Stackchain Lab agent collaboration loop 2026-08-07 13:27:37 +00:00
PROTOCOL.md Create Stackchain Lab agent collaboration loop 2026-08-07 13:27:37 +00:00
pyproject.toml Create Stackchain Lab agent collaboration loop 2026-08-07 13:27:37 +00:00