CLAUDE.md@CLAUDE/Plan · git:20260901.fddd689 · 2026-09-01 · sha256 b8a8c434b815621d
CLAUDE.md@CLAUDE/Plan git:20260901.fddd689A
Immutable. This exact content is served forever at /api/v1/blob/b8a8c434b815621d.
# Plan Lifecycle Full planning workflow, templates, status tokens, QA enforcement and the Plan Completion Checklist: [CLAUDE/PlanWorkflow.md](../PlanWorkflow.md). Journalling: [CLAUDE/PlanJournalling.md](../PlanJournalling.md). Directory shape: `NNNNN-description/PLAN.md` (+ supporting docs and `JOURNAL/`), indexed in `README.md`, archived under `Completed/`. ## Local conventions (this directory only) - **Plan sources**: a plan may originate from a GitHub issue — record `**GitHub Issue**: #N` in the PLAN.md header. On completion, comment an implementation summary and close it (`gh issue close N --reason completed`). Internal plans are tracked entirely through the plan files and `README.md`. - **Always commit the plan folder alongside the work it tracks.** `CLAUDE/Plan/*` files are tracked source, not temporary artifacts — check `git status` for untracked plan folders before every commit; never let one linger untracked across commits or through a release. - **Superseded revisions stay in the folder**: rename the original to `PLAN-v1.md`, record the review as `CRITIQUE-v1.md`, write the revised plan as `PLAN.md`, and cross-reference between the documents. - **Archive moves are atomic**: a terminal status flip (Complete, Cancelled, Superseded) ships the `git mv` into `Completed/` plus the README row and statistics update in the SAME commit — see the Plan Completion Checklist in [CLAUDE/PlanWorkflow.md](../PlanWorkflow.md). - **Completed rows age out**: the main `README.md` keeps only the 30 highest-numbered completed rows; on archival, add your row, then move any rows beyond that window verbatim into `Completed/README.md` in the same commit — enforced by `tests/integration/test_plan_index_navigability.py`.