You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Reword the phase 6 sentence about committing before a terminal review block in docs/PLAN.md and the workspace template so it unambiguously names the blocked stop rather than the posted review record, and pin the corrected wording in the phase tests
Mode: plan-and-implement
Research
The defective sentence is "Before any terminal review block, commit and normally push all current work to the linked plan branch." It sits in the phase 6 item at docs/PLAN.md:368 and plan-md-template.md:372, a byte-identical pair.
The same numbered item uses "block" both ways: "Post each reviewer block as one issue comment" (markdown record) and "a technical block" (lifecycle stop). "Terminal review block" therefore admits two parses. The markdown-record parse contradicts docs/PLAN.md:417, which commits reviewed bytes only after Code-review: pass. The lifecycle-block parse is redundant with the normative paragraph at docs/PLAN.md:356-359, which already requires commit and normal push before recording the blocker.
The ambiguity is load-bearing: in one session, two enforcement passes read it opposite ways, one forcing a redundant post-push re-review of byte-identical content, the other forbidding pre-pass commits.
plan-contract.md carries only the unambiguous blocked-path sentence (220-222) and never the phase 6 phrasing; it needs no change. The plan-manager SKILL does not carry the phrase.
No test pins the sentence, which is how it drifted unnoticed. The fix adds a plan-skill-phases.mjs pin asserting the corrected sentence in both files and the absence of the old phrase.
Chosen wording: "Before recording a technical block or terminal repair failure, commit and normally push all current work to the linked plan branch." This names the two stop conditions exactly as the normative paragraph does and reuses no ambiguous noun.
The sentence entered with plan Plan lifecycle: implement branch, review loop, comment records #22 and is unreleased: the last tag is plan-lifecycle--v0.7.0, which predates it. Landing this fix before the 0.8.0 release means the defect never ships to consumers. The release itself is a separate action outside this plan.
docs/PLAN.md must stay byte-identical to the template's terminal fenced block; scripts/tests/plan-skill-phases.mjs:671-678 asserts this synchronization, so both files change in lockstep. The plugin self-test does not read the template. The template is hashed reference content of the plan-workspace skill, so its change requires a content-hash re-sync of plan-workspace/SKILL.md.
Steps
#
Id
Task
Files
Depends
Effect
Status
Done when
1
reword
Replace the ambiguous phase 6 sentence with the chosen wording in both byte-identical files
A3 node scripts/ci.mjs --plugin plan-lifecycle - exit 0; full node scripts/ci.mjs - exit 0, both with preserved exit codes after the plan-workspace content-hash re-sync.
Goal
Reword the phase 6 sentence about committing before a terminal review block in docs/PLAN.md and the workspace template so it unambiguously names the blocked stop rather than the posted review record, and pin the corrected wording in the phase tests
Mode: plan-and-implement
Research
Code-review: pass. The lifecycle-block parse is redundant with the normative paragraph at docs/PLAN.md:356-359, which already requires commit and normal push before recording the blocker.Steps
localdonelocaldonenode scripts/tests/plan-skill-phases.mjsexits 0 and fails if either file reverts to "terminal review block"localdonenode scripts/ci.mjs --plugin plan-lifecycleand fullnode scripts/ci.mjsexit 0Acceptance
node scripts/tests/plan-skill-phases.mjsnode plugins/plan-lifecycle/test/selftest.mjsnode scripts/ci.mjs --plugin plan-lifecyclenode scripts/ci.mjsalso exits 0 because docs/PLAN.md is outside the plugin rootDo not touch
docs/plans/finished/- frozen historyOpen questions
None
Review
Review records are stored in issue comments.
Verification Results
node scripts/tests/plan-skill-phases.mjs- exit 0 with the code-review-block-commit pin and the terminal-review-block absence assertion.node plugins/plan-lifecycle/test/selftest.mjs- exit 0.node scripts/ci.mjs --plugin plan-lifecycle- exit 0; fullnode scripts/ci.mjs- exit 0, both with preserved exit codes after the plan-workspace content-hash re-sync.