Tom Boucher
b7b6f89776
fix(phase-lifecycle): fast-path replaceInCurrentMilestone only when pattern matches after
...
The previous guard `if (after.trim().length > 0)` incorrectly triggered
when `after` contained only footer text (e.g. `---\n*Last updated*`).
In that case `after.replace(pattern, replacement)` is a no-op and the
function returned unchanged content instead of falling through to the
slow path that searches inside the last `<details>` block.
Fix: capture the replaced string first, then only take the fast path
when the replacement actually changed `after`.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-26 11:46:40 -04:00
..
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-23 00:26:53 -04:00
2026-04-23 08:22:42 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-23 00:26:53 -04:00
2026-04-24 18:05:16 -04:00
2026-04-24 18:05:16 -04:00
2026-04-22 12:04:03 -04:00
2026-04-22 12:04:03 -04:00
2026-04-25 14:18:34 -04:00
2026-04-23 00:26:53 -04:00
2026-04-23 00:26:53 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 10:10:10 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-12 18:15:04 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-23 11:58:23 -04:00
2026-04-23 11:58:23 -04:00
2026-04-24 20:20:02 -04:00
2026-04-24 18:05:41 -04:00
2026-04-24 20:20:11 -04:00
2026-04-24 20:20:11 -04:00
2026-04-24 18:11:12 -04:00
2026-04-24 18:11:12 -04:00
2026-04-12 18:15:04 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-18 12:35:23 -04:00
2026-04-26 11:36:46 -04:00
2026-04-26 11:46:40 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-12 08:33:04 -04:00
2026-04-25 14:08:05 -06:00
2026-04-12 08:33:04 -04:00
2026-04-12 18:15:04 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-12 08:33:04 -04:00
2026-04-21 20:33:24 -04:00
2026-04-24 20:20:02 -04:00
2026-04-22 17:30:08 -04:00
2026-04-22 17:30:08 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-21 20:33:24 -04:00
2026-04-23 11:53:20 -04:00
2026-04-23 11:53:20 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-20 18:09:02 -04:00
2026-04-22 12:03:59 -04:00
2026-04-22 12:03:59 -04:00
2026-04-24 20:20:02 -04:00
2026-04-24 20:20:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-23 11:54:34 -04:00
2026-04-23 11:54:34 -04:00
2026-04-23 11:58:23 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-20 18:09:02 -04:00
2026-04-21 20:33:24 -04:00
2026-04-12 08:33:04 -04:00
2026-04-23 00:26:53 -04:00
2026-04-24 18:11:12 -04:00
2026-04-24 18:11:12 -04:00
2026-04-12 08:33:04 -04:00
2026-04-22 21:21:44 -04:00
2026-04-12 18:15:04 -04:00
2026-04-12 08:33:04 -04:00
2026-04-12 08:33:04 -04:00
2026-04-12 08:33:04 -04:00
2026-04-23 11:54:34 -04:00
2026-04-23 11:54:34 -04:00