e5b34e01dc
docs(scripts): note sync --verify drift-gate semantics (FU-8a)
2026-05-31 11:36:06 +00:00
4d8422198a
feat(guard): fitness function blocking raw Paperclip access (GAP-22, FU-8a)
...
Wakeup-INSERT rule is universal (never allowlisted — hard invariant). Raw-HTTP
rule exempts the sanctioned helpers + standalone operator/admin scripts (a
distinct category per fitness-function scope differentiation + DRY: tooling
needn't reuse the FastAPI wrapper). Repo scanned clean under these rules.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-31 11:35:07 +00:00
a66ab3b3cd
feat(guard): fitness function blocking raw Paperclip access (GAP-22, FU-8a)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-31 11:16:36 +00:00
aac383acb7
feat(sync): --verify exits non-zero on drift; adapter mismatch = loud drift (GAP-21, FU-8a)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-31 11:14:44 +00:00
adc196ac20
docs(plan): FU-8a process→code guards implementation plan (3 tasks, TDD)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-31 10:51:31 +00:00
e8431a2adf
docs(spec): FU-8a process→code guards design (GAP-21/22) + split GAP-23 to #69
...
GAP-21: sync_agents --verify exits non-zero on drift; adapter_type mismatch
counted as drift (loud), not silent skip — makes it an enforceable gate (INV-MC1).
GAP-22: fitness-function pytest guarding against raw Paperclip HTTP + direct
agent_wakeup_requests INSERT (INV-INT1/INT3). Repo pre-scanned: 0 existing
violations → clean forward-fence. Verified vs 3+ sources (architectural fitness
functions; drift-verify non-zero exit). GAP-23 (spec→agents) split to #69 .
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-05-31 10:48:15 +00:00