Section 11A — Strip Skill Markdown-Walk (Skills -> v7-only)
SUPERSEDED by
decisions/05-three-plan-types.md(INV-22, user directive 2026-05-31). The markdown-walk strip is CANCELLED. Markdown is a permanently-supported LEGACY plan type, so the markdown-walk path (_step_5_emit_focusfocus-picker + bucket-classification + the §09 shape-detect markdown branch) is RETAINED, not deleted. The orchestrator stays SHAPE-DETECT (v7 + legacy-markdown both live), never v7-only. The INV-20--complete-all/auto_complete_section.pyretirement applies to the JSON path ONLY; the legacy-markdown path keeps its existing completion mechanics. This section’s strip deliverables below are HISTORICAL — do not execute them; re-scope to “markdown-walk is permanent legacy support” per Decision 05.
Cites §01 north star (invariants 1, 18, 20); gated on §09 dogfood (v7 proven on the subject plan) + §10 (corpus uniformly v7, the markdown-walk path is dormant with no inputs). CONSUMER strip — lands before §11B (parsers) so no skill references a deleted parser.
Goal
See frontmatter. §09 ADDED the v7 path and RETAINED the markdown-walk path for transition safety; §10 made the corpus uniformly v7 (markdown-walk dormant). Now the markdown-walk consumer is removed so the orchestrator skills are v7-only, completing the INV-20 retirements §09 deferred. The §11B parsers strip follows once no skill consumes them.
Ordering — consumer before provider (ABSOLUTE)
- The skill markdown-walk path (in
scripts/plan_orchestrator/: focus-picker, roadmap_scan) CONSUMES thescripts/plan_corpus/markdown parsers (_load_plan_markdown,plan_io.parse_plan,_frontmattersplit). - Python imports are eager at module load: deleting the parsers (§11B) while a skill still imports them breaks the tree even if the path is never executed.
- Therefore the consumer (skills, §11A) is stripped FIRST; the now-dead provider (parsers, §11B) is stripped SECOND. Linear chain: §10 -> §11A -> §11B -> §12.
11A.1 — Delete focus-picker + bucket-classification + shape-detect markdown branch
-
scripts/plan_orchestrator/: delete_step_5_emit_focus(the 80+-function focus-picker) + the bucket-classification logic (actionable / bug_blocked_sections / needs_review_plan_dispatch). The §09 shape-detect dispatch collapses to v7-only —route_walk.serve_nextis the sole walk path. - Delete
scripts/plan_orchestrator/roadmap.py(the thin delegate §06.3 left forwarding toroute_walk) + re-point all ~106 import references (scripts/plan_orchestrator/cli.py,scripts/review_plan_runtime/review_plan.py, the commit_push dispatch path, 30+ tests) toroute_walkdirectly — the orchestrator dead-import sweep §06.3 deferred here (persection-06-engine.mdar-roadmap-route-walk-migration). Grep-verify zero remainingroadmapimport references before deleting. - Every consuming-skill body (closed set per §09.1): delete the markdown-walk directive + any focus-picker / section_info-pointer prose; the body carries ONLY the v7 dispatch.
- Subsection close (11A.1) — all
[x];status: complete.
11A.2 — Remove auto_complete_section.py + —complete-all invocation paths (INV-20 retirement)
- Delete
scripts/plan_orchestrator/auto_complete_section.py+ theauto_complete_outcomeflow; delete everyplan-complete.py --complete-allinvocation path from the rewritten skill bodies. (These were RETAINED through §09/§10 for the markdown path; with markdown gone they retire per INV-20.) - Acceptance:
grep -rn 'plan-complete.py.*--complete-all\|auto_complete_outcome\|auto_complete_section\|_step_5_emit_focus' .claude/skills/ scripts/plan_orchestrator/returns zero matches. - Subsection close (11A.2) — all
[x];status: complete.
11A.3 — Collapse the read-discipline rules to single-read; grep-verify + test-all
-
plan-read-discipline.md+context-discipline.md: remove the markdown orchestrator-pointer / executor-full-file split; the single-read (wholebody_ref) model is the SOLE documented contract (perdecisions/02-content-as-context-unit.md). The §09-added v7 single-read model becomes the only model. - Grep-verify the orchestrator no longer feeds a
section_infofragment intonext_action(pairs with §11B’s INV-18 grep on the parser side). -
plan-read-discipline-lint --strictexit 0 corpus-wide;script_first_audit.py --allclean;./test-all.shgreen (timeout 150); a v7 plan still runs end-to-end throughserve_next. - Subsection close (11A.3) — all
[x];status: complete.
11A.R Third Party Review Findings
- None.
11A.N Completion Checklist
- 11A.1-11A.3
[x]andstatus: complete. - All success criteria have
[x]checkboxes. - Grep confirms zero
_step_5_emit_focus/auto_complete_section/--complete-allmatches in skills + plan_orchestrator. -
./test-all.shgreen; v7 plan runs end-to-end;python -m scripts.plan_corpus check plans/scripts-first-restructure/section-11A-*.mdexit 0. -
/tpr-reviewpassed (final, full-section).
References
- §09 (additive v7 path — the markdown-walk this section removes was retained there); §10 (corpus uniformly v7 — precondition); §06.3 route_walk.serve_next (the sole surviving walk path); §06.4 review-as-phase (sole writer of gates_verified).
- §11B (strip-parsers) follows this section — the now-dead
plan_corpusmarkdown parsers are removed once §11A leaves no consumer. - §01 invariants 1, 18, 20;
references/restructure-charter-seed.md §2 INV-20(force-flip ban + focus-picker retirement, deferred from §09 to here).