--- tags: ["workflow", "completion", "task", "bug", "spike"] description: "Complete any issue type per its workflow requirements" argument-hint: "### | PROJ-###" allowed-tools: ["Read", "Write", "Edit", "Bash", "Glob", "Grep", "TodoWrite", "Task"] model: claude-sonnet-4-5 references_guidelines: - docs/development/workflows/task-workflow.md # Task completion requirements - docs/development/workflows/bug-workflow.md # Bug completion requirements - docs/development/workflows/spike-workflow.md # Spike completion requirements --- # /complete Command **WHAT**: Complete any issue type by validating and executing its workflow's completion requirements. **WHY**: Each issue type has different completion criteria. This command ensures all requirements are met before marking work as done. **HOW**: Detect issue type, read its workflow's Completion section, validate/execute requirements, mark complete. ## Usage ```bash /complete 001 # Detects type from file, runs completion workflow /complete 002 # If BUG.md exists → bug completion /complete 005 # If SPIKE.md exists → spike completion /complete PROJ-123 # Jira issue completion ``` ## Execution Flow ### 1. Detect Issue Type Read issue file to determine type: ```bash # In pm/issues/###-name/ directory: if [ -f "TASK.md" ]; then type="task" elif [ -f "BUG.md" ]; then type="bug" elif [ -f "SPIKE.md" ]; then type="spike" fi ``` ### 2. Execute Type-Specific Completion --- ## Task Completion **Reference:** task-workflow.md Completion section ### Validation Checklist 1. **All phases complete** - Every checkbox in PLAN.md checked 2. **Tests passing** - Run test suite, all green 3. **Code review ≥90** - Final phase achieved review threshold 4. **Acceptance criteria met** - All criteria in TASK.md satisfied 5. **WORKLOG updated** - Final entry documents completion ### Execution ``` Completing issue 001 (task)... ✓ PLAN.md: All phases checked (5/5) ✓ Tests: 47/47 passing ✓ Code review: 92/100 on final phase ✓ Acceptance criteria: 4/4 met ✓ WORKLOG: Final entry present Task ready for merge. Update status? (yes/no) ``` If validation fails, report what's missing and suggest next steps. ### Final Actions - Update TASK.md status to `done` - Suggest: "Ready for PR. Run `/branch merge develop`" --- ## Bug Completion **Reference:** bug-workflow.md Completion section ### Validation Checklist 1. **Reproduction test exists** - Test that fails without fix 2. **Fix implemented** - Code changes complete 3. **Reproduction test passes** - Fix resolves the issue 4. **No regressions** - All existing tests still pass 5. **Root cause documented** - WORKLOG explains why bug occurred ### Execution ``` Completing issue 002 (bug)... ✓ Reproduction test: tests/auth/login-safari.test.ts ✓ Fix implemented: src/auth/login.ts ✓ Reproduction test: PASSES with fix ✓ Regression tests: 156/156 passing ✓ Root cause: Documented in WORKLOG.md Bug fix ready for merge. Update status? (yes/no) ``` ### Final Actions - Update BUG.md status to `done` - Suggest: "Ready for PR. Run `/branch merge develop`" --- ## Spike Completion **Reference:** spike-workflow.md Completion section ### Process Unlike TASK/BUG, spike completion involves active work: 1. **Collect WORKLOGs from branches** 2. **Generate SPIKE-SUMMARY.md** 3. **Commit documentation to develop** 4. **Create follow-up actions** 5. **Clean up spike branches** ### Execution ``` Completing issue 005 (spike)... Step 1: Collecting findings from spike branches... → Checking out WORKLOG-1.md from spike/005/plan-1 → Checking out WORKLOG-2.md from spike/005/plan-2 Step 2: Generating SPIKE-SUMMARY.md... [Draft summary presented for review] Step 3: Review summary Edit summary? (yes/no) Step 4: Follow-up actions Create ADR from findings? (yes/no) Update related spec? (yes/no) Create implementation tasks? (yes/no) Step 5: Commit to develop → git add pm/issues/005-*/ → git commit -m "docs: 005 spike findings - recommend REST" Step 6: Cleanup Delete spike branches? (yes/keep) → spike/005/plan-1 → spike/005/plan-2 ``` ### Git Operations for Spike ```bash # Ensure on develop branch git checkout develop # Pull WORKLOG files from spike branches git checkout spike/005/plan-1 -- pm/issues/005-*/WORKLOG-1.md git checkout spike/005/plan-2 -- pm/issues/005-*/WORKLOG-2.md # Commit documentation git add pm/issues/005-*/ git commit -m "docs: 005 spike findings - [recommendation]" # Optional: delete spike branches git branch -D spike/005/plan-1 git branch -D spike/005/plan-2 ``` ### SPIKE-SUMMARY.md Generation Generate from WORKLOG files: ```markdown # 005 Spike Summary: [Title] ## Executive Summary **Recommendation: [Approach N]** - [One-line rationale] ## Questions Answered ### 1. [Question from SPIKE.md] [Finding from WORKLOGs] ## Comparison | Criteria | Approach 1 | Approach 2 | Winner | |----------|------------|------------|--------| | [metric] | [value] | [value] | [1/2] | ## Recommendation Rationale [Why this approach was chosen] ## Next Steps - [ ] Create ADR documenting decision - [ ] Create task for implementing chosen approach ``` ### Follow-up Actions **Create ADR:** - Run `/adr` with spike findings as evidence - Reference spike issue in ADR context **Update Spec:** - Add Technical Approach section to related SPEC.md - Reference spike findings **Create Tasks:** - Run `/issue` to create implementation task - Link to spike for context --- ## Error Handling | Error | Resolution | |-------|------------| | Issue not found | Check `pm/issues/{ID}-*/` exists | | Unknown type | Verify issue file exists (TASK.md/BUG.md/SPIKE.md) | | Incomplete phases | List remaining phases, suggest `/implement {ID} --next` | | Tests failing | Show failures, suggest fixing before completion | | Spike branches missing | Check branch names, may need manual recovery | ## Integration **Workflow position:** ``` /issue → /plan ### → /implement ### → /complete ### → /branch merge ``` **Related commands:** - `/issue` - Create work items - `/implement ###` - Execute plan phases - `/branch merge` - Merge completed work to develop