Files
msd-core/commands/gsd/plan-fix.md
Lex Christopherson a6960a70c0 refactor(10-01): update @reference paths to execute-plan.md
- commands/gsd/execute-plan.md: workflow reference + process text
- commands/gsd/plan-fix.md: execution_context reference
- get-shit-done/templates/phase-prompt.md: 2 occurrences
2026-01-12 12:42:00 -06:00

3.9 KiB

name, description, argument-hint, allowed-tools
name description argument-hint allowed-tools
gsd:plan-fix Plan fixes for UAT issues from verify-work [plan, e.g., '04-02']
Read
Bash
Write
Glob
Grep
AskUserQuestion
Create FIX.md plan from UAT issues found during verify-work.

Purpose: Plan fixes for issues logged in phase-scoped ISSUES.md files. Output: {plan}-FIX.md in the phase directory, ready for execution.

<execution_context> @/.claude/get-shit-done/references/plan-format.md @/.claude/get-shit-done/references/checkpoints.md </execution_context>

Plan number: $ARGUMENTS (required - e.g., "04-02" or "09-01")

Load project state: @.planning/STATE.md @.planning/ROADMAP.md

**Parse plan argument:**

$ARGUMENTS should be a plan number like "04-02" or "09-01". Extract phase number (XX) and plan number (NN).

If no argument provided:

Error: Plan number required.

Usage: /gsd:plan-fix 04-02

This creates a fix plan from .planning/phases/XX-name/04-02-ISSUES.md

Exit.

**Find ISSUES.md file:**

Search for matching ISSUES.md:

ls .planning/phases/*/{plan}-ISSUES.md 2>/dev/null

If not found:

No ISSUES.md found for plan {plan}.

ISSUES.md files are created by /gsd:verify-work when UAT finds issues.
If no issues were found during testing, no fix plan is needed.

Exit.

**Read issues:**

Read the ISSUES.md file. Parse each issue:

  • ID (UAT-XXX)
  • Title
  • Severity (critical/major/minor)
  • Description/steps to reproduce
  • Acceptance criteria

Count total issues by severity.

**Create fix tasks:**

For each issue (or logical group):

  • Create one task per issue OR
  • Group related minor issues into single task

Task structure:

<task type="auto">
  <name>Fix UAT-001: [issue title]</name>
  <files>[affected files from issue]</files>
  <action>
[What to fix based on issue description]
[Reference original acceptance criteria]
  </action>
  <verify>[Test that issue is resolved]</verify>
  <done>[Issue acceptance criteria met]</done>
</task>

Prioritize: critical → major → minor

**Write FIX.md:**

Create .planning/phases/XX-name/{plan}-FIX.md:

---
phase: XX-name
plan: {plan}-FIX
type: fix
---

<objective>
Fix {N} UAT issues from plan {plan}.

Source: {plan}-ISSUES.md
Priority: {critical count} critical, {major count} major, {minor count} minor
</objective>

<execution_context>
@~/.claude/get-shit-done/workflows/execute-plan.md
@~/.claude/get-shit-done/templates/summary.md
</execution_context>

<context>
@.planning/STATE.md
@.planning/ROADMAP.md

**Issues being fixed:**
@.planning/phases/XX-name/{plan}-ISSUES.md

**Original plan for reference:**
@.planning/phases/XX-name/{plan}-PLAN.md
</context>

<tasks>
[Generated fix tasks]
</tasks>

<verification>
Before declaring plan complete:
- [ ] All critical issues fixed
- [ ] All major issues fixed
- [ ] Minor issues fixed or documented as deferred
- [ ] Original acceptance criteria from issues met
</verification>

<success_criteria>
- All UAT issues from {plan}-ISSUES.md addressed
- Tests pass
- Ready for re-verification
</success_criteria>

<output>
After completion, create `.planning/phases/XX-name/{plan}-FIX-SUMMARY.md`
</output>
**Offer execution:**
---

## ✓ Fix Plan Created

**{plan}-FIX.md** — {N} issues to fix

| Severity | Count |
|----------|-------|
| Critical | {n}   |
| Major    | {n}   |
| Minor    | {n}   |

---

Would you like to:
1. Execute the fix plan now
2. Review the plan first
3. Modify the plan before executing

---

Use AskUserQuestion to get response. If execute: /gsd:execute-plan .planning/phases/XX-name/{plan}-FIX.md

<success_criteria>

  • ISSUES.md found and parsed
  • Fix tasks created for each issue
  • FIX.md written with proper structure
  • User offered to execute or review </success_criteria>