| name | finish-dev |
| description | Use when bead implementation is complete and ready for integration |
Finish Development
Complete development work by verifying tests, presenting options, and cleaning up.
Process
1. Verify Tests Pass
Before anything else, verify all tests pass:
mix test
If tests fail: Stop. Fix failures before proceeding.
If tests pass: Continue to step 2.
2. Determine Base Branch
git merge-base HEAD main 2>/dev/null || git merge-base HEAD master
3. Present Options
Present exactly these 4 options:
Implementation complete. What would you like to do?
1. Merge back to <base-branch> locally
2. Push and create a Pull Request
3. Keep the branch as-is (I'll handle it later)
4. Discard this work
Which option?
4. Execute Choice
Option 1: Merge Locally
git checkout <base-branch>
git pull
git merge <feature-branch>
git branch -d <feature-branch>
Option 2: Push and Create PR
git push -u origin <feature-branch>
gh pr create --title "<title>" --body "## Summary
- <bullet points>
## Test Plan
- [ ] <verification steps>"
Option 3: Keep As-Is
Report: "Keeping branch . You can return to it later."
Option 4: Discard
Confirm first:
This will permanently delete:
- Branch <name>
- All commits: <list>
Type 'discard' to confirm.
Then if confirmed:
git checkout <base-branch>
git branch -D <feature-branch>
Quick Reference
| Option | Merge | Push | Delete Branch |
|---|
| 1. Merge locally | ✓ | - | ✓ |
| 2. Create PR | - | ✓ | - |
| 3. Keep as-is | - | - | - |
| 4. Discard | - | - | ✓ (force) |
Red Flags
Never:
- Proceed with failing tests
- Merge without verifying tests on result
- Delete work without confirmation
- Force-push without explicit request
Always:
- Verify tests before offering options
- Present exactly 4 options
- Get typed confirmation for discard