Use when a curated-knowledge unit turns out to be wrong, outdated, or replaced by better evidence. Triggers on requests like "correct kb-0003", "update this finding, it changed", "this knowledge unit is no longer true", or "supersede X with Y". Never use this to justify editing a unit's frontmatter or body in place.
Scanned 9/4/2026
Install to Claude Code
npx -y skills add everywan-dev/claude-code-engineering --skill supersede-outdated-docs --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Supersede Outdated Docs?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/everywan-dev-supersede-outdated-docs)More formats (shields.io, HTML) on the badges page.
---
name: supersede-outdated-docs
description: Use when a curated-knowledge unit turns out to be wrong, outdated, or replaced by better evidence. Triggers on requests like "correct kb-0003", "update this finding, it changed", "this knowledge unit is no longer true", or "supersede X with Y". Never use this to justify editing a unit's frontmatter or body in place.
---
# Supersede outdated docs
Correcting curated knowledge is never an edit. It is always a new unit.
## The rule
1. Write a **new** unit file with its own new `id`, never reusing the old one.
2. Its frontmatter declares `supersedes: [<old-id>]` (a list -- one unit may
supersede several at once, many-to-one).
3. The superseded unit is **never** edited and **never** deleted. Its file,
its `evidence`, its `anchors` -- all of it stays exactly as written.
History is not rewritten.
4. If the correction is itself a chain (kb-0001 was already superseded by
kb-0002, and kb-0002 also needs correcting), the new unit supersedes the
*latest* unit in the chain, not the original.
## Why
`derive` computes each unit's effective state from `supersedes` across the
whole validated set -- it is never stored on the unit itself. A superseded
unit still appears in `knowledge-index.md`, marked `superseded by <ids>`,
never omitted and never mutated. Editing a unit in place would destroy the
record of what was believed and when; superseding preserves it.
## Steps
```
python3 -m validated_memory validate
```
Validate the whole `knowledge/` directory (not just the new file) so the
`supersedes` reference resolves against the unit it points at.
```
python3 -m validated_memory derive
```
Re-derive `knowledge-index.md` afterwards, so its `state` column reflects
the new supersession. If the project gates on a versioned index
(`derive --check` in CI), re-deriving is required before that gate passes
again.
If the new unit carries its own anchors, its freshness verdict starts at
`unknown` until `detect-stale-documentation` runs against it -- the superseded unit
keeps whatever verdict it last had recorded, since `probe` only probes
active units.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!