Tibsfox
a452c4a03b
fix(phase): scan ROADMAP.md entries in next-decimal to prevent collisions ( #1877 )
...
next-decimal and insert-phase only scanned directory names in
.planning/phases/ when calculating the next available decimal number.
When agents added backlog items by writing ROADMAP.md entries and
creating directories without calling next-decimal, the function would
not see those entries and return a number that was already in use.
Both functions now union directory names AND ROADMAP.md phase headers
(e.g. ### Phase 999.3: ...) before computing max + 1. This follows the
same pattern already used by cmdPhaseComplete (lines 791-834) which
scans ROADMAP.md as a fallback for phases defined but not yet
scaffolded to disk.
Additional hardening:
- Use escapeRegex() on normalized phase names in regex construction
- Support optional project-code prefix in directory pattern matching
- Handle edge cases: missing ROADMAP.md, empty/missing phases dir,
leading-zero padded phase numbers in ROADMAP.md
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-07 08:13:46 -04:00
..
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 23:07:52 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 07:58:27 -04:00
2026-04-04 07:24:31 -04:00
2026-04-05 23:11:18 -04:00
2026-04-05 17:49:20 -04:00
2026-04-05 17:32:18 -04:00
2026-04-05 18:05:32 -04:00
2026-04-05 18:20:11 -04:00
2026-04-05 23:11:16 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-06 15:14:02 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 15:12:58 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 19:43:45 -04:00
2026-04-05 11:37:27 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 17:02:20 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 23:07:54 -04:00
2026-04-05 19:09:19 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 19:43:45 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 09:15:41 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-01 08:47:31 -06:00
2026-04-04 14:29:03 -04:00
2026-04-05 10:23:41 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 18:33:27 -04:00
2026-04-05 18:33:17 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 15:50:01 -04:00
2026-04-06 15:19:46 -04:00
2026-04-05 11:30:38 -04:00
2026-04-04 14:37:54 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:15:30 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 18:33:24 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 23:07:59 -04:00
2026-04-05 18:33:15 -04:00
2026-04-04 14:15:30 -04:00
2026-04-05 19:09:14 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-06 08:54:18 -04:00
2026-04-04 15:52:13 -04:00
2026-04-05 17:03:17 -04:00
2026-04-04 14:15:30 -04:00
2026-04-05 18:05:32 -04:00
2026-04-07 08:13:46 -04:00
2026-04-05 17:05:06 -04:00
2026-04-04 14:29:03 -04:00
2026-04-03 12:47:24 +03:00
2026-04-05 09:15:19 -04:00
2026-04-06 15:13:23 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-03 13:32:05 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 12:41:17 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 20:03:47 -04:00
2026-04-05 10:23:41 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 10:23:41 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 07:35:18 -04:00
2026-04-04 14:29:03 -04:00
2026-04-06 15:20:06 -04:00
2026-04-04 07:14:24 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 17:04:33 -04:00
2026-04-01 16:53:20 -04:00
2026-04-04 14:29:03 -04:00
2026-03-24 13:33:58 -04:00
2026-04-05 20:22:52 -04:00
2026-04-04 07:10:21 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 10:23:41 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 17:49:20 -04:00
2026-04-05 17:04:08 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-05 17:00:30 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-02 18:55:17 -03:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-04 14:29:03 -04:00
2026-04-06 08:40:37 -04:00
2026-04-05 22:54:12 -04:00
2026-04-05 12:30:24 -04:00
2026-04-05 10:23:41 -04:00
2026-04-02 21:36:36 -05:00
2026-04-04 14:29:03 -04:00
2026-04-05 11:11:38 -04:00
2026-04-04 14:29:03 -04:00