backlog-hygienelisted
Install: claude install-skill peter-claude-vault/claude-stem
# Backlog Hygiene
Periodic sweep over the manifest-derived backlog. Flags funnel/lifecycle timeouts,
missing dispositions, and satellite-file health, and produces a hygiene report so
the active backlog stays trustworthy. **It is a reporter + delegator, not a mutator
of the backlog view** — it never deletes, never moves rows, and never writes
`_backlog.md`.
The backlog is a **manifest-derived read replica** (Plan 81 SP13/SP14/SP15):
- `{paths.plans_root}/_backlog.md` is the unified rendered view, owned exclusively by
`librarian:backlog-index` (`writers_allowed: ["librarian"]` per `governance/plans-rules.json :: root_files`).
- `{paths.plans_root}/_archive.md` is owned exclusively by `librarian:plan-archive`
(event-driven `closed → archived` promotion, 3-day cooldown).
- Pre-plan ideas live as `{paths.plans_root}/_inbox/<slug>.md` notes (funnel status
`new / triaged / briefed`).
- In-flight plans are `{paths.plans_root}/<NN>-<slug>/manifest.json` with `lifecycle.status`.
- Session history lives at the satellite `{backlog.progress_dir}/<slug>.md`.
Hygiene reads all of these, computes findings, and **delegates** the two mutating
operations it used to perform itself:
- **Table regeneration** → `librarian:backlog-index` (recommended, or run `/librarian backlog-index`).
- **Archival of closed plans** → `librarian:plan-archive` (recommended, or run `/librarian plan-archive`).
Curly-brace tokens (`{paths.plans_root}`, `{backlog.progress_dir}`, `{paths.hooks_state}`)
resolve