planlisted
Install: claude install-skill davidlee/doctrine
# Plan
You are turning design intent into an executable phase plan.
Inputs:
- `slice-nnn.md` (scope)
- `design.md` (canonical design reference)
- existing `plan.toml` / `plan.md` (when present)
## Process
1. Read the slice scope and `design.md` together.
2. Confirm planning is not getting ahead of design:
- if `design.md` is missing or blank, stop and run `/design` unless you have
been **explicitly instructed** otherwise.
- if `design.md` exists but is stale relative to the current ask or slice
scope, reconcile the design first. Clarify with the user if ambiguous.
- you MUST NOT treat plan or phase creation as a substitute for unresolved
design.
- if planning surfaces substantive new design problems, run `/design` to
revise or append to the design before continuing.
- **re-grep before you trust the design's premises.** The design was locked
at author-time; the tree has moved since. Scan `design.md` for concrete,
grep-pable references — file paths, function/type names, constants, config
keys — and resolve each against the *current* tree (`grep`, `ls`,
`git show`). A missing path, moved file, or renamed symbol means the design
rests on a stale premise: STOP and run `/design` to reconcile it before
scaffolding phase sheets against wrong paths. (A design that names nothing
concrete has nothing to check — this costs only what the design asserts.)
- **check the research advisory** (`doc