Files
msd-core/.changeset/archived/fix-3127-state-begin-phase-idempotent.md
Tom Boucher 8616839cab chore: archive 463 shipped changeset fragments before wiring render (#714)
CHANGELOG promotion was a manual operator step that was never run, so 463
fragments for work already shipped in <=1.3.1 accumulated in .changeset/.
Their notes were already hand-curated into the dated [1.2.0]/[1.3.0]/[1.3.1]
CHANGELOG sections (#690 backfill, PR #694). Rendering them now would
duplicate and mis-attribute shipped work.

Move them to .changeset/archived/ (read non-recursively by all changeset
tooling, so never rendered), keeping only the 3 genuinely-unreleased
fragments at the top level. Prep for wiring `render` into the release
finalize job (#690 follow-up).

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 14:53:17 -04:00

650 B

type, pr
type pr
Fixed 3127

state.begin-phase is now idempotent — when called on a phase already in-flight (e.g. --wave N resume), it no longer overwrites Current Plan, stopped_at narrative, Plan: N of M body line, or Last Activity Description with stale values from the last plan-phase run. An idempotency guard reads the current Status field before writing: if it already contains Executing Phase N, only the Last Activity date and a resume-specific activity line are updated; all execution-progress fields are preserved. First-time execution (Status ≠ Executing) continues to write all fields as before. Closes #3127.