ci(release): sync develop release.yml + fix dispatch-token perms - #2822
Conversation
Reconciles develop's release.yml with the main hotfix (#2820) and corrects the dispatch-token permission docs. - Port FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 + workflow_dispatch from #2820 (currently main-only). Without this, the next develop->main release would merge develop's older release.yml over main's and silently drop the Node 24 fix, so 4.0.3 would hit the same "Argument list too long" failure that blocked 4.0.2 (#2819). This makes develop a superset of main, so future release merges stay conflict-free. - Fix token-permission comments (actions: write -> contents: write) for both DOWNSTREAM_DISPATCH_TOKEN and LINUX_REPO_DISPATCH_TOKEN. POST /dispatches needs contents: write for fine-grained PATs; the mis-documented permission is why LINUX_REPO_DISPATCH_TOKEN was scoped actions: write and 403'd on the 4.0.2 apt/yum dispatch. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Signed-off-by: Peter Amiri <peter@alurium.com>
There was a problem hiding this comment.
Wheels Bot — Reviewer A
TL;DR: A targeted CI-only diff that forward-ports two fixes from main's hotfix into develop's release.yml and corrects two token-permission comments. The changes are accurate, well-documented, and safe to merge. Approve.
Correctness
All three changes check out:
-
workflow_dispatchtrigger — correctly placed in theon:block betweenpushandworkflow_call. Noinputs:block is needed for a simple manual re-trigger (the channel/version path already keys onGITHUB_REF, as the comment explains). Consistent with the pattern on main after #2819. -
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true— a valid GitHub runner env var that routes JS actions through the Node 24 runtime. The existingWHEELS_PRERELEASE: falsein the same block is also a YAML boolean, so the pattern is consistent and GitHub Actions handles the bool-to-string coercion correctly. The inline comment fully documents the why (Wandalen/wretry.action, forced migration deadline 2026-06-02, #2819). -
Permission comment corrections —
contents: writeis the correct fine-grained PAT permission forPOST /repos/{owner}/{repo}/dispatches.actions: writedoes not cover repository dispatch; this mis-documentation is what led to the 403 on the apt/yum dispatch during 4.0.2. Both comment sites (lines 558 and 624) are now accurate.
No code paths, branches, or edge cases are missed — this is a pure YAML/comment change with no runtime logic.
Commits
ci(release): sync develop release.yml + fix dispatch-token perms — valid type (ci), optional scope (release), subject under 100 chars, sentence-case. Passes commitlint.
No cross-engine, conventions, tests, docs, or security sections apply — the only file touched is .github/workflows/release.yml.
Wheels Bot — Reviewer B (round 1)A's review checks out. No sycophancy, no false positives, no missed issues on the diff I re-scanned. SycophancyNone detected. A's "approve" is backed by line-by-line verification of all four hunks. False positivesNone detected. All three claims verified against the diff:
Missed issuesNone detected. DCO sign-off ( Verdict alignmentA's ConvergenceAligned. This is a YAML-and-comment-only change with no runtime logic; all facts A cited are accurate. Joint recommendation: approve and merge. |
Summary
Reconciles develop's
release.ymlwith the main hotfix and corrects the dispatch-token permission docs.FORCE_JAVASCRIPT_ACTIONS_TO_NODE24+workflow_dispatchfrom ci(release): force Node 24 for JS actions + add workflow_dispatch #2820 (currently main-only). Without this, the next develop→main release would merge develop's olderrelease.ymlover main's and silently drop the Node 24 fix — so 4.0.3 would hit the sameArgument list too longfailure that blocked 4.0.2 (Release 4.0.2 #2819). This makes develop'srelease.ymla superset of main's, so future release merges stay conflict-free.actions: write→contents: write) for bothDOWNSTREAM_DISPATCH_TOKENandLINUX_REPO_DISPATCH_TOKEN.POST /repos/{owner}/{repo}/dispatchesrequirescontents: writefor fine-grained PATs — the mis-documented permission is exactly whyLINUX_REPO_DISPATCH_TOKENwas scopedactions: writeand 403'd on the 4.0.2 apt/yum dispatch.Test plan
release.ymlvalid YAML; triggers:push, workflow_dispatch, workflow_call🤖 Generated with Claude Code