feat(execute-phase): add --gaps-only flag for gap closure execution
After verify-work diagnoses issues and creates fix plans, the next command now explicitly signals intent with --gaps-only. This eliminates redundant state discovery where execute-phase had to figure out why it was being asked to run on an already-complete phase. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1296,7 +1296,7 @@ Execute: `/gsd:execute-phase {phase}`
|
||||
|
||||
### Next Steps
|
||||
|
||||
Execute: `/gsd:execute-phase {phase}`
|
||||
Execute: `/gsd:execute-phase {phase} --gaps-only`
|
||||
```
|
||||
|
||||
## Revision Complete
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
name: gsd:execute-phase
|
||||
description: Execute all plans in a phase with wave-based parallelization
|
||||
argument-hint: "<phase-number>"
|
||||
argument-hint: "<phase-number> [--gaps-only]"
|
||||
allowed-tools:
|
||||
- Read
|
||||
- Write
|
||||
@@ -30,6 +30,9 @@ Context budget: ~15% orchestrator, 100% fresh per subagent.
|
||||
<context>
|
||||
Phase: $ARGUMENTS
|
||||
|
||||
**Flags:**
|
||||
- `--gaps-only` — Execute only gap closure plans (plans with `gap_closure: true` in frontmatter). Use after verify-work creates fix plans.
|
||||
|
||||
@.planning/ROADMAP.md
|
||||
@.planning/STATE.md
|
||||
</context>
|
||||
@@ -43,6 +46,7 @@ Phase: $ARGUMENTS
|
||||
2. **Discover plans**
|
||||
- List all *-PLAN.md files in phase directory
|
||||
- Check which have *-SUMMARY.md (already complete)
|
||||
- If `--gaps-only`: filter to only plans with `gap_closure: true`
|
||||
- Build list of incomplete plans
|
||||
|
||||
3. **Group by wave**
|
||||
|
||||
@@ -156,7 +156,7 @@ Fix plans verified ✓
|
||||
|
||||
**Execute fix plans** — run diagnosed fixes
|
||||
|
||||
/gsd:execute-phase {Z}
|
||||
/gsd:execute-phase {Z} --gaps-only
|
||||
|
||||
<sub>/clear first → fresh context window</sub>
|
||||
|
||||
|
||||
@@ -71,15 +71,21 @@ ls -1 "$PHASE_DIR"/*-SUMMARY.md 2>/dev/null | sort
|
||||
For each plan, read frontmatter to extract:
|
||||
- `wave: N` - Execution wave (pre-computed)
|
||||
- `autonomous: true/false` - Whether plan has checkpoints
|
||||
- `gap_closure: true/false` - Whether plan closes gaps from verification/UAT
|
||||
|
||||
Build plan inventory:
|
||||
- Plan path
|
||||
- Plan ID (e.g., "03-01")
|
||||
- Wave number
|
||||
- Autonomous flag
|
||||
- Gap closure flag
|
||||
- Completion status (SUMMARY exists = complete)
|
||||
|
||||
Skip completed plans. If all complete, report "Phase already executed" and exit.
|
||||
**Filtering:**
|
||||
- Skip completed plans (have SUMMARY.md)
|
||||
- If `--gaps-only` flag: also skip plans where `gap_closure` is not `true`
|
||||
|
||||
If all plans filtered out, report "No matching incomplete plans" and exit.
|
||||
</step>
|
||||
|
||||
<step name="group_by_wave">
|
||||
@@ -433,9 +439,9 @@ Present gaps and offer next command:
|
||||
|
||||
User runs `/gsd:plan-phase {X} --gaps` which:
|
||||
1. Reads VERIFICATION.md gaps
|
||||
2. Creates additional plans (04, 05, etc.) to close gaps
|
||||
3. User then runs `/gsd:execute-phase {X}` again
|
||||
4. Execute-phase runs incomplete plans (04-05)
|
||||
2. Creates additional plans (04, 05, etc.) with `gap_closure: true` to close gaps
|
||||
3. User then runs `/gsd:execute-phase {X} --gaps-only`
|
||||
4. Execute-phase runs only gap closure plans (04-05)
|
||||
5. Verifier runs again after new plans complete
|
||||
|
||||
User stays in control at each decision point.
|
||||
|
||||
@@ -505,7 +505,7 @@ Plans verified and ready for execution.
|
||||
|
||||
**Execute fixes** — run fix plans
|
||||
|
||||
`/clear` then `/gsd:execute-phase {phase}`
|
||||
`/clear` then `/gsd:execute-phase {phase} --gaps-only`
|
||||
|
||||
───────────────────────────────────────────────────────────────
|
||||
```
|
||||
@@ -559,5 +559,5 @@ Default to **major** if unclear. User can correct if needed.
|
||||
- [ ] If issues: gsd-planner creates fix plans (gap_closure mode)
|
||||
- [ ] If issues: gsd-plan-checker verifies fix plans
|
||||
- [ ] If issues: revision loop until plans pass (max 3 iterations)
|
||||
- [ ] Ready for `/gsd:execute-phase` when complete
|
||||
- [ ] Ready for `/gsd:execute-phase --gaps-only` when complete
|
||||
</success_criteria>
|
||||
|
||||
Reference in New Issue
Block a user