.agents/skills/version-release/references/patch-release-scenarios.md
All Patch Release scenarios automatically bump the patch version (e.g. 2.1.31 → 2.1.32). PR titles do not need to include a version number.
The most common release type. Collects a week's worth of changes from canary and ships them to main.
git checkout canary
git pull origin canary
git checkout -b release/weekly-{YYYYMMDD}
git push -u origin release/weekly-{YYYYMMDD}
Compute the previous tag from main first — never reuse the last weekly's tag, since hotfixes published in between will be missed:
git fetch origin main canary --tags
PREV_TAG=$(git describe --tags --abbrev=0 origin/main --match 'v*.*.*' --exclude '*-canary*' --exclude '*-nightly*')
git log "$PREV_TAG..origin/release/weekly-{YYYYMMDD}" --oneline --no-merges
git diff "$PREV_TAG...origin/release/weekly-{YYYYMMDD}" --stat
Then follow ./release-notes-style.md § Computing Inputs (Hard Rules) to derive PR refs, metrics, and contributors. Every (#XXXX) in the body must come from actual commit subjects in this range — never inferred from descriptions.
gh pr create \
--title "🚀 release: {YYYYMMDD}" \
--base main \
--head release/weekly-{YYYYMMDD} \
--body-file changelog.md
release/* branch → auto patch +1.Emergency bug fix shipped directly from main.
git checkout main
git pull --rebase origin main
git checkout -b hotfix/v{version}-{short-hash}
git push -u origin hotfix/v{version}-{short-hash}
Create PR to main with a gitmoji prefix title (e.g. 🐛 fix: description)
Write a short hotfix changelog — See changelog-example/hotfix.md. Keep it minimal: scope line, 1-3 fix bullets (symptom + fix in one sentence), upgrade note, owner. No long root-cause section — that lives in the commit message.
gh pr view <number> --json author --jq '.author.login'), never hardcode a username.After merge: auto-tag-release detects hotfix/* branch → auto patch +1.
bun run hotfix:branch
New AI model or provider support, typically contributed via community PRs.
✨ feat: add xxx model or 💄 style: support xxx modelsfeat / style) are in the auto-tag trigger listIf asked to add model support, just create a normal feature PR. The title prefix will trigger the release automatically.
Database schema changes that need to be released independently. These require a dedicated changelog explaining the migration for self-hosted users.
git checkout main
git pull --rebase origin main
git checkout -b release/db-migration-{name}
git cherry-pick <migration-commit-hash>
git push -u origin release/db-migration-{name}
Write a migration-specific changelog — See db-migration-changelog-example.md for the format. This should explain:
gh pr view <number> --json author --jq '.author.login' or git log commit author), never hardcode a usernameCreate PR to main with the migration changelog as the PR body
gh pr create \
--title "👷 build: {migration description}" \
--base main \
--head release/db-migration-{name} \
--body-file changelog.md
release/* branch → auto patch +1.