name: finish-ticket description: Finalize ticket work by reviewing changes, preparing git commit commands (without executing), updating progress notes, and drafting documentation for QA and team review.
Finish Ticket
Finalize work on a ticket: review changes, prepare commit commands, update progress, and draft documentation.
Instructions
When invoked with a ticket number (e.g., /finish-ticket PROJ-123):
1. Review Changes
- Run
git diffandgit statusto see all changes - Verify changes match the ticket requirements from
.claude/tickets/{TICKET}/description.md - Check that no unintended files are modified
- Ensure code follows project standards from CLAUDE.md
2. Prepare Git Commit Commands
- Review all changed files with
git diffandgit status - Group changes into logical commits if needed:
- Implementation commit: core code changes
- Config commit (if applicable): configuration changes
- Test commit (if applicable): test additions/updates
- Generate the exact
git commitcommands for the user to execute - Follow the project's commit message convention:
[{TICKET}] description - Output the commands clearly so the user can copy-paste and run them
- Do NOT execute git commit - only print the commands
3. Update Progress File
Update .claude/tickets/{TICKET}/progress.md with:
- Status change (IN PROGRESS -> DONE or BLOCKED)
- Summary of what was actually implemented
- Any deviations from the original plan
- Files modified with one-line descriptions
- Detailed File Changes section - for each modified file:
- What: Concrete description of changes
- Why: The reasoning and role in the overall feature
- Design notes: Non-obvious choices or trade-offs made
4. Prepare Review/QA Documentation
Draft a summary suitable for a PR description or ticket comment:
**Implementation Complete** (or **In Progress** / **Blocked**)
**Changes:**
- Brief list of what was done
**Files Modified:**
- path/to/file - description
**Branch:** feature/{TICKET}-description
**Commits:** list commit messages
**Testing Notes:**
- How this can be verified
- What to look for
- Any configuration needed
**Dependencies/Notes:**
- Other tickets this depends on
- Anything the reviewer should know
5. Output Final Summary
Present:
- Branch: current branch name
- Git commands: ready-to-execute commit commands
- Files changed: complete list
- Review/QA docs: ready-to-paste text
- Questions/Blockers: anything unresolved
Important
- NEVER execute git commit - only generate the commands for the user
- NEVER push to remote - the user decides when to push
.claude/directory should be git-ignored - progress files stay local- All commit messages MUST follow the project's convention
- Keep commit messages short and descriptive
- If implementation is incomplete, clearly state what's left to do