Parent
Refs #3118
What to build
Do not start this before #3121 closes. That investigation decides whether this is a scanner shape, a judgment shape, or a routing finding that hands off to claude-config:unhobble — and the three answers produce materially different implementations. If #3121 returns "routing" or "judgment", this item may be rewritten or closed unbuilt rather than implemented as described here.
The detector (D1), assuming #3121 returns "scanner shape". Flag an instruction that pays context to say what the model would do by default. The proposed predicate: an instruction carrying no proper noun, path, threshold, version, or repo-specific fact. Official backing: skill docs' "Default assumption: Claude is already very smart" and playbooks:skill-authoring Tip 1 "Don't State the Obvious".
Delete the sentence, never trim it. A no-op fails as a whole unit; shortening it leaves a shorter no-op. This is the one class where removal, not rewording, is the remediation.
Reuse the wiring from #3120 rather than re-solving the producer contract.
Body-scoped only, same constraint as #3120 and #3123: no remediation touching a description, when_to_use, or quoted trigger phrase.
Protected content — never flagged: directives, thresholds, numeric bounds, qualifiers, version pins, proper nouns, paths, command strings, env vars, motivating context, completion criteria, worked examples. This class carries the highest false-positive risk in the container, because "carries no proper noun" and "is a genuine directive" are not mutually exclusive — a bare imperative can still be load-bearing.
Whatever false-positive rate #3121 measured is the bar this implementation must not exceed.
Acceptance criteria
Blocked by
Parent
Refs #3118
What to build
Do not start this before #3121 closes. That investigation decides whether this is a scanner shape, a judgment shape, or a routing finding that hands off to
claude-config:unhobble— and the three answers produce materially different implementations. If #3121 returns "routing" or "judgment", this item may be rewritten or closed unbuilt rather than implemented as described here.The detector (D1), assuming #3121 returns "scanner shape". Flag an instruction that pays context to say what the model would do by default. The proposed predicate: an instruction carrying no proper noun, path, threshold, version, or repo-specific fact. Official backing: skill docs' "Default assumption: Claude is already very smart" and
playbooks:skill-authoringTip 1 "Don't State the Obvious".Delete the sentence, never trim it. A no-op fails as a whole unit; shortening it leaves a shorter no-op. This is the one class where removal, not rewording, is the remediation.
Reuse the wiring from #3120 rather than re-solving the producer contract.
Body-scoped only, same constraint as #3120 and #3123: no remediation touching a
description,when_to_use, or quoted trigger phrase.Protected content — never flagged: directives, thresholds, numeric bounds, qualifiers, version pins, proper nouns, paths, command strings, env vars, motivating context, completion criteria, worked examples. This class carries the highest false-positive risk in the container, because "carries no proper noun" and "is a genuine directive" are not mutually exclusive — a bare imperative can still be load-bearing.
Whatever false-positive rate #3121 measured is the bar this implementation must not exceed.
Acceptance criteria
audit-instructionswith a tier arguable fromreview'sseverity.mdtest.review:fanout fix.when_to_use, or quoted trigger phrase.skill-quality:check claude-config:audit-instructionspasses against the source checkout.Blocked by