--- name: feedback-verify-before-compose-hook description: "chamber-library constitutional writes are gated by a verify-before-compose PreToolUse hook — satisfy it with a GROUNDED-IN attestation + a Grounding section; the block is correct, don't fight it." metadata: node_type: memory type: feedback originSessionId: 6e4f5e1d-250f-4b77-8478-5050a3a5360c --- Writing the spec, `_curation/graduation-spec.yaml`, or any `*amendment*` / `*FOR-JURIST*` / `*JURIST-PACKAGE*` draft in chamber-library is **BLOCKED** by `~/.claude/hooks/verify-before-compose.sh` (PreToolUse Write|Edit, global `~/.claude/settings.json`) **unless** the payload (or the existing file) carries `` and the artifact opens with a **Grounding section that QUOTES the ratified sections it builds on.** Non-constitutional writes pass silently; the hook fails open on malformed input. **Why:** the recurring `re-derived-from-training` / compose-before-verify failure — drafting a claim about the spec *from memory* when the spec already ratifies it. The 2026-07-17 case: drafted the citation amendment (#2 / PENDING-60) as if it "introduces the CTS-URN model" when **§IV already adopts it**, and §III/§VII/§IX already hold the citation contract / locator registry / coverage-ledger. Session-start CLAUDE.md prose alone had failed ≥4 times (it's passive at draft-time); a hook fires **at the moment of the write**, where prose doesn't. Steward-directed 2026-07-17 — "this needs to stop happening… more and more lately." **How to apply:** don't fight the block — it is correct. READ the sections the artifact builds on, add the `GROUNDED-IN` attestation + a Grounding section quoting them, then re-issue. The gate is a conscious speed-bump, not a formality. Protocol clause lives in `chamber-library/CLAUDE.md` "Load-bearing disciplines". Structural complement to [[feedback-resurface-banked-notes-before-rederiving]] and [[trust-prior-pass-frame]]; the action-time enforcement those prose lessons lacked.