Skip to content

release.yml: flag mangling produces wrong version bump; push to main rejected by ruleset #121

Description

@PAMulligan

Found while cutting v2.0.0 (run 31908267995). Two independent bugs mean the Release workflow cannot currently ship a release:

  1. Argument mangling breaks explicit release types. The workflow runs pnpm release -- --release-as <type>. pnpm inserts an extra --, so commit-and-tag-version receives the flags as positional junk and falls back to auto-detection — dispatching with major produced a 1.2.0 minor bump instead of 2.0.0, and pushed a stray v1.2.0 tag (since deleted). Fix: call pnpm exec commit-and-tag-version --release-as <type> directly.

  2. The version-bump push to main is rejected by the branch ruleset. main branch protection requires PRs + 4 status checks, and the only bypass actor is a user account — GITHUB_TOKEN (github-actions bot) has no bypass, so git push --follow-tags origin main fails with GH013. Note the tag ref still goes through before the branch ref is rejected, which is how the stray tag escaped. Fix options: (a) add the workflow/app as a ruleset bypass actor, or (b) rework the workflow to open a release PR and publish the tag+release after merge.

v2.0.0 was shipped manually (local commit-and-tag-version + push with the bypass account, then gh release create). The workflow remains broken for future releases until this is fixed.

🤖 Generated with Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions