dyoshikawa

draft-release

"Draft a new release of the project."

dyoshikawa 1.548 167 Actualitzat fa 3 mesos
GitHub

Instal·la

npx skillscat add dyoshikawa/rulesync/draft-release

Instal·la des del registre de SkillsCat.

SKILL.md

First, let's work on the following steps.

  1. Confirm that you are currently on the main branch and pull the latest changes. If not on main branch, switch to main branch.
  2. Compare code changes between the previous version tag and the latest commit to prepare the release description.
  • Write in English.
  • Do not include confidential information.
  • Sections, What's Changed, Contributors and Full Changelog are needed.
  • ./tmp/release-notes/*.md will be used as the release notes.

Then, from $ARGUMENTS, get the new version without v prefix, and assign it to $new_version. For example, if $ARGUMENTS is "v1.0.0", the new version is "1.0.0".

If $ARGUMENTS is empty, determine the new version automatically by performing the release-dry-run skill.

Let's resume the release process.

  1. Run git pull.
  2. Run git checkout -b release/v${new_version}.
  3. Update getVersion() function to return the ${new_version} in src/cli/index.ts, and run pnpm cicheck. If the checks fail, fix the code until pass. Then, execute git add, git commit and git push.
  4. Update the version with pnpm version ${new_version} --no-git-tag-version.
  5. Since package.json will be modified, execute git commit and git push.
  6. As a precaution, verify that getVersion() in src/cli/index.ts is updated to the ${new_version}.
  7. Run gh pr create to the main branch.
  8. Create a draft release using gh release create v${new_version} --draft --title v${new_version} --notes-file ./tmp/release-notes/*.md command on the github.com/dyoshikawa/rulesync repository. This creates a draft release so that the publish-assets workflow can upload assets later.

Note: the Homebrew tap formula (Formula/rulesync.rb) is NOT updated here. It embeds sha256 checksums of the release binaries, which only exist after the release PR merges and the Publish Assets workflow uploads them. The goal-release skill performs that update as its post-merge step (regenerate with scripts/generate-homebrew-formula.ts from the release's SHA256SUMS and land it via an immediately merged PR). When releasing manually without the goal-release skill, run that step yourself after the assets are published.