chore(ci): adopt monorel v1.0.0 and consolidate to one workflow#85
Merged
Conversation
monorel v1.0.0 ships `monorel auto`, a single command that detects whether HEAD is a release-PR merge and dispatches to either the post-merge release pipeline (tag, push, publish) or the pre-merge maintenance pipeline (apply changesets onto a staging branch, force-push, upsert the always-open release PR). The action wrapper no longer takes a `command` input; one workflow with one step does both jobs. Changes: - **Delete `release-pr.yml`.** Its job (upsert the release PR) is now done by `monorel auto` on every non-release push. - **Rewrite `release.yml`** as the single consolidated workflow. Single `monorel` job runs the v1.0.0 action on every push to `main` and lets the action route. The `deploy-docs` job (called via `workflow_call` from `docs.yml`) gates on `chore(release):` so docs deploy only on the release-PR merge, not on every feature merge. - **Bump action pin** from `v0.14.0` to `v1.0.0`. - **Update AGENTS.md** to describe the new single-workflow model in the CI / Release Workflows section. Kept: - `actions/setup-go@v5` with `go-version: '1.25'` and `cache: true`. monorel still runs offline tidy with `GOTOOLCHAIN=local`, so the runner's Go must satisfy every sub-module's `go` directive. - The `if: ... !startsWith(..., 'chore(release):')` skip filter on `ci.yml` jobs (PR #80). The race the filter prevents (CI tidy vs release tag-push) still applies under the consolidated workflow. - `workflow_dispatch` as a manual escape hatch. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adopts monorel v1.0.0. v1 ships
monorel auto, a single command that detects whether HEAD is a release-PR merge and dispatches to either the post-merge release pipeline (tag, push, publish) or the pre-merge maintenance pipeline (apply changesets, force-push staging, upsert the always-open release PR). The action wrapper no longer takes acommandinput; one workflow with one step does both jobs.Changes
release-pr.yml. Its job (upsert the release PR) is now done bymonorel autoon every non-release push.release.ymlas the single consolidated workflow. Themonoreljob runs the v1.0.0 action on every push tomain.deploy-docs(called viaworkflow_callfromdocs.yml) gates onchore(release):so docs deploy only on the release-PR merge.v0.14.0tov1.0.0.Kept
actions/setup-go@v5(still required becauseGOTOOLCHAIN=localstays in monorel's offline tidy).if: ... !startsWith(..., 'chore(release):')skip filter onci.ymljobs (PR #80). The race the filter prevents (CI tidy vs release tag-push) still applies under the consolidated workflow.workflow_dispatchas a manual escape hatch.Test plan
chore(release):push to main triggersrelease.yml'smonoreljob, which upserts the always-open release PR.deploy-docsskips.chore(release):push triggers the samemonoreljob, which detects the release-PR merge and tags + pushes + publishes.deploy-docsruns after the action completes and rebuilds the docs site.ci.ymlskip behavior onchore(release):commits.🤖 Generated with Claude Code