WP04 re-section classification audit (FR-012 / #2054)
This note is the auditable per-file record for WP04's re-section of the
former docs/development/ and docs/plans/engineering-notes/ working sets. Every
page was classified individually (not a wholesale directory move) against the
explicit decision rules in the WP04 prompt, and the rule that fired is
recorded per page so the reviewer audits the reason, not just the bucket.
Decision rules (from the WP04 prompt)
- E1 — Ephemeral →
plans/: filename or content contains any ofsprint,session,WP##/wp-,mission-<slug>, an effort-tied date-stamp, "status update", "tracking", "handoff", "scratch", or it narrates a one-time investigation / decision-in-progress. - D-OPS — Durable →
operations/: runbook / deployment / on-call / incident procedure. - D-GUIDE — Durable →
guides/: how-to / tutorial / contributor workflow that outlives any one mission. - D-CONFIG — Durable →
configuration/: settings / env-var / toolchain / config reference. - TB — Tie-breaker: "would this page still be correct and useful two missions from now?" yes → durable, no → ephemeral.
doc_status (draft|active, distil-then-retire) is governed at the section
level by docs/plans/index.md — matching the convention WP03 established for
the architecture/-rooted plans (no per-file frontmatter was added there), so
WP04 does not churn per-file frontmatter either.
Durable pages
Page (from docs/development/) |
Rule fired | → Section |
|---|---|---|
ssh-deploy-keys.md |
D-OPS — one-time CI/CD deploy-key provisioning runbook | operations/ |
identity-boundary-ci-gate.md |
D-OPS — standing drift-detector required check + cross-repo SHA-bump procedure |
operations/ |
testing-flakiness.md |
D-GUIDE — flakiness handling policy / how-to, outlives missions | guides/ |
testing-parallel.md |
D-GUIDE — how-to run the suite in parallel | guides/ |
contract-pinning.md |
D-GUIDE — contributor workflow (pin observable contracts) | guides/ |
review-gates.md |
D-GUIDE — pre-PR / pre-review checklist workflow | guides/ |
local-overrides.md |
D-GUIDE — cross-package local-dev how-to | guides/ |
yaml-libraries.md |
D-CONFIG — toolchain/dependency choice reference (ruamel vs PyYAML) | configuration/ |
linting-cutoff-policy.md |
D-CONFIG — commitlint/markdownlint informational-mode policy + cutoff | configuration/ |
Ephemeral pages → plans/
Page (from docs/development/) |
Rule fired |
|---|---|
3-2-archive-migration-plan.md |
E1 — 3.2 docs-refresh effort-scoped plan |
3-2-cli-reference-audit-meta-issues.md |
E1 — audit log / meta-issue tracking |
3-2-cli-reference-methodology.md |
E1 — mission spec-kitty-3-2-docs WP05 evidence record |
3-2-coord-merge-issue-hygiene-log.md |
E1 — issue-hygiene "log" (tracking) |
3-2-harness-research-method.md |
E1 — 3.2 harness research method (effort-tied) |
3-2-information-architecture.md |
E1 — 3.2 docs-refresh IA (one effort) |
3-2-navigation-plan.md |
E1 — T007/T008 task-tied navigation plan |
3-2-publication-checklist.md |
E1 — 3.2 publication checklist (effort-tied) |
3-2-version-taxonomy.md |
E1 + TB — mission spec-kitty-3-2-docs taxonomy; durable-leaning but mission-tied → ephemeral |
391-doctrine-usage-test.md |
E1 — #391 WP11 dogfood |
charter-path-resolution-gaps.md |
E1 — gap-analysis investigation |
ci-coverage-gate-tuning.md |
E1 + TB — Mission 062 WP07 tuning notes, branch-tied → ephemeral |
code-review-2026-03-25.md |
E1 — date-stamped one-time review |
doctrine-artifact-selection-preflight.md |
E1 — pre-flight investigation |
doctrine-inclusion-assessment.md |
E1 — assessment investigation |
doctrine-migration-architecture-review.md |
E1 — architecture alignment review |
epic-1111-slice-landing-plan.md |
E1 — epic landing plan |
issue-1040-scope-assessment.md |
E1 — issue scope assessment |
issue-1111-analysis.md |
E1 — issue analysis report |
layered-doctrine-resolution-design.md |
E1 — design-in-progress blueprint |
mission-b-proposed-scope.md |
E1 — mission-tied proposed scope |
mission-next-compatibility.md |
E1 — explicitly marked HISTORICAL / superseded |
model-first-schema-generation.md |
E1 + TB — dated, PR-branch-tied writeup → ephemeral |
mutation-testing-findings.md |
E1 — WP05 findings |
org-doctrine-layer-architecture-review.md |
E1 — post-implementation review |
pr305-review-resolution-plan.md |
E1 — PR-tied resolution plan |
quality_check_structure.md |
E1 + TB — narrates one-time CI-workflow change → ephemeral |
runtime-charter-doctrine-boundary.md |
E1 — boundary audit + recommendations |
slice-f-gap-analysis.md |
E1 — slice gap analysis |
slice-f-mission-debrief.md |
E1 — mission debrief |
test-execution-report-pr305.md |
E1 — PR test-execution report |
test-plan-pr305.md |
E1 — PR test plan |
test-suite-friction-audit.md |
E1 — friction audit |
wp-prompt-governance-atdd-findings.md |
E1 — ATDD findings |
tracking/next-mission-mappings/* (3 files) |
E1 — "tracking" in path → plans/next-mission-mappings/ |
docs/plans/engineering-notes/ → plans/engineering-notes/
The whole engineering_notes/ tree is investigations / traces / reflections /
triage (E1 by the occurrence-map moves: docs/plans/engineering-notes → docs/plans).
Moved as a subtree (plans/engineering-notes/) to stay fully disjoint from
WP03's architecture/-rooted plans content (avoids the index.md collision).
Stays put (operator directive)
docs/development/3-2-page-inventory.yaml— page-inventory tooling artifact; the 4 lockfile modules read it at this exact path. Guarded bytests/docs/test_inventory_path_stable.py.docs/development/mutation-testing-tactic.yaml— doctrine tactic artifact (non-page.yaml, outside WP04's*.mdownership).
IC-01 — borderline pages (tie-breaker resolved, no hard gap)
No page fit no rule. Four pages had durable-leaning content but
effort/mission/date/branch-tied framing tipped them ephemeral via the
tie-breaker; flagged here for reviewer attention:
3-2-version-taxonomy.md, ci-coverage-gate-tuning.md,
model-first-schema-generation.md, quality_check_structure.md. Each can be
distilled into a durable reference later under the plans distil-then-retire
lifecycle if the durable kernel is confirmed reusable.
#2054 resolution note (issue-matrix)
#2054 (the docs/development/ durable-vs-ephemeral mixing drift) is resolved:
docs/development/ no longer mixes durable references with one-off tracking
notes — durable pages are split across operations/, guides/,
configuration/; ephemeral notes are consolidated under plans/. The
page-inventory tooling artifact stays put (no freshness-gate self-block).
Mission B should carry Closes #2054 on the PR (FR-012).