Repository navigation
chore(ci): add 3.2.x maintenance line to release and CI workflows - #7859
Conversation
Register the 3.2.x branch (created from the v3.2.1 Version Packages merge c32bd78) with Release (push trigger, dispatch recovery case, and the storyboard verification gates), the release-state and changesets fences, Build Check, Changeset Check, CodeQL, Dependency Review, apps/web check, and training-agent storyboards. Add forward-merge-3.2.yml, a 3.2.x copy of forward-merge-3.1.yml, and cover it in the release-workflow immutability test. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…stration training-agent-storyboards.yml is a protocol-scoped path (#7510), so changing it requires a changeset. A CI branch-filter change should not carry a release changeset, and policy forbids an empty one to satisfy CI. Register 3.2.x there in a follow-up that already carries a real 3.2.x patch changeset. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Ladon verdict: Escalate to human review
Escalate — gated paths touched without required approval.
This PR mechanically registers the 3.2.x maintenance line across 11 CI/release files, including modifications to workflow files under .github/workflows/** and a new forward-merge-3.2.yml. The reviewer found no Critical/High/Medium findings — the diff is clean and well-covered by the immutability test.
However, gated_paths: true (multiple .github/workflows/** files modified) and review_decision: REVIEW_REQUIRED (not APPROVED). Per decision rule row 2, this is a hard, non-overridable approval gate that can only be satisfied by a real human/CODEOWNERS approval. The outcome must be escalate.
Escalation reasons
.github/workflows/**is a gated path (modified: apps-web-check.yml, build-check.yml, changeset-check.yml, codeql.yml, dependency-review.yml, release.yml, training-agent-storyboards.yml; added: forward-merge-3.2.yml) andreview_decisionisREVIEW_REQUIRED. Human/CODEOWNERS approval is required before merge.
No blocking code findings; the gate lifts once a reviewer approves.
Why human review
- Gated path
.github/workflows/**modified/added across 8 workflow files (including new forward-merge-3.2.yml) while review_decision is REVIEW_REQUIRED — human/CODEOWNERS approval required before merge. - This PR touches a path under a hard, non-overridable approval gate (.github/workflows/apps-web-check.yml (modified) matches
.github/workflows/**; .github/workflows/build-check.yml (modified) matches.github/workflows/**; .github/workflows/changeset-check.yml (modified) matches.github/workflows/**; .github/workflows/codeql.yml (modified) matches.github/workflows/**; .github/workflows/dependency-review.yml (modified) matches.github/workflows/**; .github/workflows/forward-merge-3.2.yml (added) matches.github/workflows/**; .github/workflows/release.yml (modified) matches.github/workflows/**; .github/workflows/training-agent-storyboards.yml (modified) matches.github/workflows/**) and the current GitHub review decision is 'REVIEW_REQUIRED', not APPROVED. This is a hard gate enforced in code — Ladon cannot auto-approve until a human/CODEOWNERS approval is recorded, regardless of how clean the diff is.
Summary
This PR follows
.agents/shortcuts/cut-minor-ga.mdPhase 10, step 25. It registers the new3.2.xmaintenance line onmain.The branch
3.2.xalready exists. It was created atc32bd78c5389753e3b8f3ffd8a1c04b777854d83, thev3.2.1Version Packages merge (#7712). Patches on it continue as3.2.2,3.2.3, and so on.Changes, adding
3.2.xto each branch list named in the runbook:release.yml:workflow_dispatchrecovery case (main|3.2.x|3.1.x|3.0.x)3.2.xgets the same current and 3.0-compat storyboard coverage as3.1.xscripts/check-release-state.cjsandscripts/fence-changesets.cjs: the supported-branch listsbuild-check,changeset-check,codeql,dependency-review,apps-web-check: the push and PR branch filterstraining-agent-storyboards.yml. That path is protocol-scoped (fix(release): fence publication and recover superseded releases #7510), so changing it requires a changeset. A CI branch filter should not carry a release changeset, and the playbook forbids an empty one. Follow-up: add3.2.xto it in the first3.2.xbackport that already carries a real patch changeset. The obvious candidate is the docs(adagents): define authorized_agents[].url as the full agent endpoint #7827adagentsclarification. Until then,release.ymlstill runs both storyboard gates on3.2.xpushes.forward-merge-3.2.yml: a straight3.1.x→3.2.xsubstitution offorward-merge-3.1.yml. It uses the same App token, the same one-way3.2.x → maindirection, and the same metadata-only auto-resolution. Its PR head isforward-merge/3.2.x.tests/release-workflow-immutability.test.cjs: coversforward-merge-3.2.ymland the new dispatch caseThe matching
3.2.xPRGitHub runs push and
pull_requestworkflows from the copy on the target branch. A change onmainalone therefore does not make pushes to3.2.xrun Release or forward-merge. The companion PR #7860 carries the identical diff. It also cherry-picks the post-tag GA hygiene onto3.2.x: #7840, #7839, thev3.2.1docs snapshot #7842, and #7843.#7860 is the more urgent of the two. Cutting
3.2.xswitched ontests/docs-nav-validation.test.cjs's comparison againstorigin/3.2.x, which still defaults its docs to3.1. As a result,Canonical tests (2/4)now fails on everymainPR, this one included, until #7860 lands.Branch protection
No branch protection or ruleset covers
3.1.xtoday. ThemainandIPR signaturesrulesets target~DEFAULT_BRANCHonly, and3.1.xreportsprotected: false. Nothing was mirrored to3.2.x. If the maintainer wants protection on maintenance lines, that is a separate admin decision.Open decision (maintainer)
How long
3.1.xstays a security and critical-fix line. The runbook and playbook leave this window to the maintainer.How fixes flow between
3.1.x,3.2.x, andmain. Forward merges today are3.1.x → mainand (with this PR)3.2.x → main. Nothing moves a3.1.xfix into3.2.x. Options:mainmerge. This is the current convention.forward-merge-3.1.ymlto3.1.x → 3.2.x, chaining into3.2.x → main.Until that is decided, this PR leaves
forward-merge-3.1.ymlunchanged.Test plan
npm run test:release-workflowpasses on this branch and on the3.2.xcompanion branch.🤖 Generated with Claude Code