Skip to content

fix(release): Auto Release fails at startup; give the prepare call the ceiling its called file declares - #449

Merged
drewstone merged 1 commit into
mainfrom
fix/release-startup-permissions
Oct 25, 2026
Merged

drewstone merged 1 commit into
mainfrom
fix/release-startup-permissions

Conversation

@drewstone

Copy link
Copy Markdown
Contributor

Problem. Every Auto Release & Publish run since c16c5f9 (10-23) ends in startup_failure (runs on 1419d6b, edd99e4, 421586a). package.json on main says 0.137.0; npm latest is 0.136.1, so #447 and #448 never shipped.

Cause. release.yml calls the pinned trusted-release.yml@ab33b2e twice. That file declares a github-release job with contents: write, packages: write. GitHub validates every job in a called file against the caller's ceiling, including jobs the phase input skips, and the prepare call grants only contents: read, so the run is rejected before any job starts.

Change. The prepare call's ceiling becomes contents: write, packages: write. The prepare job itself declares no job-level permissions, so it still gets the file's top-level contents: read token.

Proof after merge. gh workflow run release.yml on main; the run must start, publish 0.137.0 to npm and create the GitHub release.

Run ID: run_369e8dcc6188e337ad6eda9097f3a5e9

…declares

Every Auto Release run since c16c5f9 ends in startup_failure: the called
trusted-release.yml declares github-release with contents: write and
packages: write, and GitHub rejects a caller ceiling of contents: read for
the whole file. 0.137.0 (#447) and #448 never published. The prepare job
still runs on the file's top-level contents: read token.

@tangletools tangletools left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Auto-approved PR — 362cf3ba

Blanket team auto-approval is intentional. This is not a code review.
No automated review runs on this PR. This approval rests on the rule above alone.

tangletools · auto-approval · reason: blanket_auto_approve · 2026-10-25T16:50:17Z

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.

2 participants