Files
OpenSpec/test/cli-e2e
Dwin Gharibi 4b5c07a0c2 fix(parser): drop closing hashes from requirement names (#1860)
CommonMark lets an ATX heading end in a closing run of `#`s, so
`### Requirement: Late Fees ###` renders as `Late Fees`. Requirement
names kept the run, so a REMOVED written that way missed the requirement
and archive exited 0 with a false "treating it as already removed"
warning, while a closed MODIFIED or RENAMED heading failed as not found.

normalizeRequirementName now strips the closing run with the rule scenario
names already use: only a run preceded by a space or tab counts, so `C#`
keeps its `#`. Every reader goes through it, and the main-spec duplicate
check now does too, so a closed and an open heading of one requirement are
reported as duplicates.
2026-09-16 15:47:19 +00:00
..