Supersede at the source
Anchoring stops features from vanishing; superseding stops stale directives from causing reverts. A retired requirement gets struck out by update retire, but the prose that described its old behavior — the originating spec sentence, the CRC bullet, the sequence step — has no forcing function. It rots in place until a future agent reads it as current intent and "fixes" the code back to match, undoing the very change that obsoleted it. This release closes that gap on two layers.
Skill
- New Core Principle "Supersede at the source" — the mirror of "No unanchored design" — plus a "Why superseding matters" section.
- Migration retirement steps generalized beyond migrations: step 5 points at the reminder; step 6 now reconciles the originating spec prose (via
**Source:**) as well as design prose and applies to every retirement; step 7 gains a prose-grep precondition and a completion test.
Tool
minispec update retirenow prints a supersede-at-source reminder to stderr (suppressed by--quiet) naming the retired requirement's**Source:**spec, prompting the design-prose grep, and stating the completion test. stdout stays just theTn, so callers that capture the retirement ID are unaffected.
Install
- Skill: download
mini-spec-v2.9.0.zipand unzip into your project root (or~/.claude). - Tool: download the
minispec-*binary for your platform, mark it executable, and put it on your PATH asminispec(e.g.~/.claude/bin/minispec). - Companion:
claude plugin install code-simplifier