template-jj/cmd/planctl/testdata/multi
Sid 3bc838f86e feat(planctl): end-to-end fixtures + golden-file test harness
* main_test.go: TestGoldenFixtures sweeps
  testdata/{clean,dirty,inline-code-exclusion,multi}/**; compares
  stdout against expected.golden and exit against expected.exit.
  --update flag regenerates sidecars. Per-fixture invocation
  overrides via optional args.txt (with FIXTURE substitution) and
  cwd-rel.txt. Handles flat-layout fixtures (prd.md at class root)
  and multi-plan layouts (dev/plans/ subtree).
* CRLF normalisation on both sides of the golden compare per
  design §7.4's Windows-CI contract.
* Clean fixtures: simple-plan (prd+tasks), with-design-plan
  (prd+design+tasks, full coverage).
* Dirty single-class fixtures: orphan-requirement, orphan-design,
  uncovered-requirement, uncovered-design, tag-syntax, tag-unclosed,
  ears-violation, missing-closeout-file. Each isolates one
  diagnostic class; ears-violation-strict and ears-violation-no-ears
  share the plan via args.txt overrides.
* tag-unclosed-with-recovery fixture: codex R1 regression guard for
  design §3.3 recovery — the recovery line uniquely cites D§2.2 so
  broken recovery would surface as uncovered-design.
* inline-code-exclusion fixture: decoys cite an undeclared R9.9 so
  any masking leak would trip orphan-requirement.
* Multi-plan fixtures: case-c (repo root with dev/plans/{alpha,beta,
  archive/retired}/, Case C upward walk + archive skip); case-b
  (deeply-nested cwd inside a plan dir, Case B resolution).
* Perf fixture testdata/perf/big-plan/ — synthetic 5-file plan
  (~90 KB) with 36 R-ids, 18 D§ sections, 72 tasks (all covered).
  Parent 8 wires Benchmark_Lint_BigPlan.

Parent task 7.0 from dev/plans/26172-planctl/tasks.md.
Codex code-review session: 019db2ed-d621-7bc0-90f2-05feb5e2fe50 (2 rounds).
2026-04-21 20:06:26 -06:00
..
case-b feat(planctl): end-to-end fixtures + golden-file test harness 2026-04-21 20:06:26 -06:00
case-c feat(planctl): end-to-end fixtures + golden-file test harness 2026-04-21 20:06:26 -06:00