The "prove the defect first" artifact the #612 approval requires. Green current-behavior characterization (zero behavior change) asserting that the milestone-prefixed grammar collapses a fully-specified 4-tuple token to a bare integer: normalizePhaseName('2-01.02-01') === '02' (the anchor) normalizePhaseName('10-02.03-04') === '10' (same failure class) plus the defect boundary (collapse appears only when milestone+phase+subphase+ plan coexist) and the cross-subsystem '02-04' semantic ambiguity (asserted as a non-collapsing current output, a distinct class from the parse collapse). Behavioral only, no source-grep. Locks the current known-imperfect behavior as documentation of the ambiguity; to be superseded when PR-1 lands the bracket grammar behind phase_id_convention: 'bracket'. Named adr-612-* (maps to no prod module) so it clears the lint-test-file-count 2-file cap on the phase-id module and the lint-regression-test-names bug-* ban. See docs/adr/612-bracket-phase-id-convention.md, Decision 3. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
6.8 KiB
6.8 KiB