Skip to content

fix(release): push the release commit and backmerge with the org App token - #34

Merged
azlekov merged 1 commit into
mainfrom
fix/release-push-as-org-app
Sep 14, 2026
Merged

azlekov merged 1 commit into
mainfrom
fix/release-push-as-org-app

Conversation

@azlekov

@azlekov azlekov commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

What

The release and backmerge jobs in the reusable release workflow now mint an installation token for the org App from the already-declared GH_APP_CLIENT_ID / GH_APP_PRIVATE_KEY secrets and push with it. A caller without the secrets falls back to GITHUB_TOKEN with a warning, so a repo outside the org rulesets still releases.

Why

The org rulesets that protect develop and main name the org App as their bypass actor. GITHUB_TOKEN is not one and cannot be made one, so semantic-release's push of the version commit was rejected with GH013 on every protected branch. Every develop release in the fleet failed that way from 2026-09-12, when the rulesets went live, until this was noticed on 2026-09-14.

An App-authored push retriggers workflows where a GITHUB_TOKEN one does not. The release commit and the backmerge commit already carry [skip ci], so no existing caller changes behaviour. The AGENTS.md invariant table records both facts.

Verification

  • actionlint clean with the same ignores self-test uses.
  • After v1 moves: dispatch Release on develop in one affected repo and confirm the version commit lands and is pushed by the App; then the rest.
  • A main release with backmerge: true confirms the backmerge push too.

🤖 Generated with Claude Code

…token

The org rulesets that protect develop and main name the org App as their bypass actor. GITHUB_TOKEN is not one, so
semantic-release's push of the version commit was rejected (GH013) on every protected branch, and every develop release in
the fleet failed from 2026-09-12 to 2026-09-14. The release and backmerge jobs now mint an App installation token from
GH_APP_CLIENT_ID / GH_APP_PRIVATE_KEY, already declared as workflow secrets, and push with it. A repo without the secrets
falls back to GITHUB_TOKEN with a warning instead of failing, since a repo outside the rulesets still releases that way.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@azlekov
azlekov merged commit f51ef53 into main Sep 14, 2026
1 check passed
@azlekov
azlekov deleted the fix/release-push-as-org-app branch September 14, 2026 11:42
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.6.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant