finishing-a-development-branch · git:20260308.eb8b7c1 · 2026-03-08 · sha256 ac491ae1312be502
finishing-a-development-branch git:20260308.eb8b7c1A
Immutable. This exact content is served forever at /api/v1/blob/ac491ae1312be502.
--- name: finishing-a-development-branch description: > Closes development work with explicit integration choice: merge, PR, keep, or discard. Invoke when branch work is verified and ready to integrate. Triggers on: "merge this", "create a PR", "we're done with this branch". Routed by using-superpowers or executing-plans at completion. --- # Finishing a Development Branch Close development work with explicit integration choice. ## Step 1: Verify Run full project verification before offering options. If verification fails, stop and return to implementation. ## Step 2: Identify Base Branch Detect merge base (`main`/`master` or repo default) and confirm if unclear. ## Step 3: Offer Exactly Four Options 1. Merge back to `<base-branch>` locally 2. Push branch and open PR 3. Keep branch/worktree as-is 4. Discard branch/worktree ## Step 4: Execute Safely ### Option 1 - Checkout base - Pull latest - Merge feature branch - Re-run verification - Delete merged branch - Remove worktree ### Option 2 - Push feature branch - Create PR - Keep worktree by default (remove only if user asks) ### Option 3 - Keep branch and worktree - Report exact path and branch name ### Option 4 - Show destructive impact summary - Require exact confirmation: `discard` - Delete branch and remove worktree ## Hard Rules - Never merge with failing tests. - Never delete work without explicit confirmation. - Never force-push unless explicitly requested. ## Final Report Include: - Selected option - Commands executed - Final branch/worktree status - PR link (if created)