Pre-operation Checks
Verify working tree is clean and current branch matches hotfix/* per ${CLAUDE_PLUGIN_ROOT}/references/invariants.md.
Phase 1: Identify Version
Goal: Determine hotfix version from current branch or argument.
Actions:
- If
$ARGUMENTSprovided, use it as version (strip 'v' prefix if present) - Otherwise, extract from current branch:
git branch --show-current(striphotfix/prefix) - Store clean version without 'v' prefix (e.g., "1.0.1")
Phase 2: Pre-finish Checks
Goal: Run tests before finishing.
Actions:
- Identify test commands (check package.json, Makefile, etc.)
- Run tests if available; exit if tests fail
Phase 3: Update Changelog
Goal: Generate changelog from commits.
Actions:
- Get previous tag:
git tag --sort=-v:refname | head -1 - Collect commits per
${CLAUDE_PLUGIN_ROOT}/references/changelog-generation.md - Update CHANGELOG.md per
${CLAUDE_PLUGIN_ROOT}/examples/changelog.md - Commit:
chore: update changelog for v$VERSIONwithCo-Authored-Byfooter
Phase 4: Finish Hotfix
Goal: Complete hotfix using git-flow-next CLI.
Actions:
- Run
git flow hotfix finish $VERSION --tagname "v$VERSION" -m "Release v$VERSION" - Verify current branch:
git branch --show-current(should be on develop) - Push all:
git push origin main develop --tags