ci(release): settle directly, gated by the release environment - #212
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Claude review status
✅ Review clean Last reviewed: New this round: 0 finding(s), 0 question(s) · Resolved this round: 0 · Open questions: 0 |
The settle dispatch is now the settlement decision: the `release` environment's required reviewers approve the run, the action checks the dispatcher's admin permission (settlers: admin), and the job commits the changelog to the release branch and publishes the tag and Release itself; on-release.yml and the Artifact Registry archives follow the tag as before. No settle branch or PR any more, which also removes the force-push the ban-force-push ruleset rejected today. release-publish.yml stays for PR mode only and its header says so. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
There was a problem hiding this comment.
0 blocking · 0 should-fix · 2 suggestion(s) · 0 open question(s)
Reviewed head 2574be95.
Findings without inline anchors:
.github/workflows/on-release.yml:5— [Nit] on-release.yml header still describes the removed settle-PR flow Cosmetic in normal operation, but the second cue is the recovery instruction for the exact scenario the block describes — a release branch cut before on-release.yml landed. An operator following the comment during that recovery would wait for a merge that never happens, or dispatch release-settle before the cherry-pick and then discover the Release published with no binaries attached. Suggested fix: Update the header to describe the direct-mode timeline: the Release is created by release-settle (with release-publish only reached in PR mode), and any cherry-pick of this file onto the release branch must land before release-settle is dispatched.CHANGELOG.md:5— [Nit] CHANGELOG.md instructions still offer the settle PR as an edit point Contributors following the comment will look for a settle PR that never appears, or will let a poorly-worded auto-generated entry ship because they think a later edit point is coming. Suggested fix: Drop "or settle PR" and, if useful, note that after the candidate merges the entry can only be corrected by a direct PR to the release branch before release-settle is dispatched.
…hangelog preamble Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3d825e0544
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Switches settlement from settle-by-PR to direct mode with an environment gate (org templates: megaeth-labs/.github#37).
release-settle.yml:environment: releaseon the settle job,settle_mode: direct,settlers: admin. Dispatching is the settlement decision: the environment's required reviewer approves the run before it starts, the action checks the dispatcher's admin permission, and the job then commits the changelog to the release branch and publishes the annotated tag and the GitHub Release itself.on-release.ymlattaches the binaries andrelease.yaml/release-tracing.yamlarchive to Artifact Registry on the tag push, exactly as for v2.0.18. No settle branch or PR exists any more, which also removes the force-push that the "ban force push" ruleset rejected during today's settle re-run.release-publish.yml: header notes that only PR-mode settlement reaches it.The
releaseenvironment already exists here (reviewer Troublor, self-review allowed, deployments frommainonly); it is separate from the legacyprodenvironment that gates the Artifact Registry archive. The app is already a bypass actor on the release-branch and tag rulesets. Workflow-only change; direct mode is exercised first on mega-agents 0.2.0 before a stateless-validator release uses it.🤖 Generated with Claude Code