diff --git a/corpus/skills/cat-mode/SKILL.md b/corpus/skills/cat-mode/SKILL.md index 2f2d5c4..073b590 100644 --- a/corpus/skills/cat-mode/SKILL.md +++ b/corpus/skills/cat-mode/SKILL.md @@ -201,11 +201,8 @@ bug: invoke `automate-me`, do not wait. - **Treat absolute negatives as categorical.** - **A blocked target is a stop, not a licence to substitute.** A number produced on a proxy carries the proxy's name beside the number. -- **A hook or classifier block is a stop, not a puzzle.** Do what the block - asks, or report the block and stop. Never reword the prompt, switch tools, - retag the claim, or propose weakening the hook to get past it. - Disagreement with a block goes to the user, after reading the hook's - source. +- **A hook or classifier block is a stop, not a puzzle.** + Do what the block asks, or report the block and stop; the forbidden shapes are in references/named-constraints.md. - **An answer given through a tool binds exactly as hard as a typed one.** Each rule's full text: diff --git a/corpus/skills/cat-mode/references/named-constraints.md b/corpus/skills/cat-mode/references/named-constraints.md index 67f4ed1..4e4af84 100644 --- a/corpus/skills/cat-mode/references/named-constraints.md +++ b/corpus/skills/cat-mode/references/named-constraints.md @@ -28,8 +28,10 @@ individual constraints it covers. for. Do not reissue a denied command through a different tool, flag, or invocation; the classifier-denial rule in `corpus/CLAUDE.learned.md` already binds this shape. Do not open a change that makes a hook complain less. Do - what the block asks, and if the block is wrong, read the hook's source and - raise it with the user with that evidence. + not relabel or relocate wording so that the region a checker inspects no + longer contains it; the words stay where the check looks, or the check is + raised with the user. Do what the block asks, and if the block is wrong, + read the hook's source and raise it with the user with that evidence. - **An answer given through a tool binds exactly as hard as a typed one.** A free-text reply to a multiple-choice question means every option offered was wrong. Restate it as a binding parameter in the plan before any work