Use this skill when asked to publish a new version of the Numbast agent from main.
NEW_VERSION(for example,0.6.1)PREVIOUS_VERSION(for example,0.6.0)
- Make sure local
mainis up to date:git checkout main && git pull
- Create a version-bump branch:
git checkout -b bump-version-NEW_VERSION
- Update release metadata to
NEW_VERSION, then stage and commit:- Update repo-root
VERSIONtoNEW_VERSION - Update
docs/versions.jsonso the version map includesNEW_VERSION - Update
docs/nv-versions.jsonso the docs URL list includeshttps://nvidia.github.io/numbast/NEW_VERSION/ git add VERSION docs/versions.json docs/nv-versions.json && git commit -m "chore: bump VERSION to NEW_VERSION"
- Update repo-root
- Push the branch:
git push -u origin bump-version-NEW_VERSION
- Generate and save a short changelog:
git log v<PREVIOUS_VERSION>..HEAD --pretty=format:"- %s" > /tmp/numbast-vNEW_VERSION-changelog.txt
- Open a PR from
bump-version-NEW_VERSIONand paste the changelog in the PR description. - Wait until that PR is merged into
main. - After merge, refresh local
main:git checkout main && git pull
- Create the tag annotation file non-interactively:
printf "v<NEW_VERSION>\n\n" > /tmp/numbast-vNEW_VERSION-tag.txtcat /tmp/numbast-vNEW_VERSION-changelog.txt >> /tmp/numbast-vNEW_VERSION-tag.txt
- Create the annotated tag without opening an editor:
git tag -a v<NEW_VERSION> -F /tmp/numbast-vNEW_VERSION-tag.txt
- Verify the tag annotation:
git show v<NEW_VERSION>
- Push the tag:
git push origin v<NEW_VERSION>- Replace
originwith your fork or upstream remote if needed.
- Do not tag a release before the
VERSIONbump PR is merged. - Keep the PR changelog and tag annotation text consistent.
- Use the
v<NEW_VERSION>tag format exactly. - Use non-interactive tag creation (
-F) so automation does not hang. - Ensure
VERSION,docs/versions.json, anddocs/nv-versions.jsonstay in sync for every release PR.
Use this skill when asked to release a patch version from a previous tag (for example, from v0.6.0 to v0.6.1).
NEW_VERSION(for example,0.6.1)PREVIOUS_VERSION(for example,0.6.0)PATCH_BRANCH(for example,0.6.x-patch)
- Create and push a maintenance branch from the previous tag:
git checkout v<PREVIOUS_VERSION>git checkout -b PATCH_BRANCHgit push -u origin PATCH_BRANCH
- For each patch fix, use a short-lived branch based on
PATCH_BRANCH, open a PR targetingPATCH_BRANCH, then wait for CI and merge. - Create a version bump PR into
PATCH_BRANCH:git checkout PATCH_BRANCH && git pullgit checkout -b bump-version-NEW_VERSION- Update
VERSION,docs/versions.json, anddocs/nv-versions.jsonforNEW_VERSION git add VERSION docs/versions.json docs/nv-versions.json && git commit -m "Bump Version to NEW_VERSION"git push -u origin bump-version-NEW_VERSION- Open a PR from
bump-version-NEW_VERSIONintoPATCH_BRANCH.
- Wait until the version-bump PR is merged into
PATCH_BRANCH. - Refresh local
PATCH_BRANCH:git checkout PATCH_BRANCH && git pull
- Generate and save the changelog for the patch line:
git log v<PREVIOUS_VERSION>..HEAD --pretty=format:"- %s" > /tmp/numbast-vNEW_VERSION-changelog.txt
- Create the annotated tag file non-interactively:
printf "v<NEW_VERSION>\n\n" > /tmp/numbast-vNEW_VERSION-tag.txtcat /tmp/numbast-vNEW_VERSION-changelog.txt >> /tmp/numbast-vNEW_VERSION-tag.txt
- Create and push the annotated tag:
git tag -a v<NEW_VERSION> -F /tmp/numbast-vNEW_VERSION-tag.txtgit show v<NEW_VERSION>git push origin v<NEW_VERSION>
- Do not use maintenance branch names starting with
v(for example, avoidv0.6.x-*). - Do not tag before the version bump PR is merged into
PATCH_BRANCH. - Tag the tip of
PATCH_BRANCH, notmain, for patch releases. - Keep the patch PR changelog and tag annotation text consistent.
- Ensure
VERSION,docs/versions.json, anddocs/nv-versions.jsonstay in sync for every release PR.