Skip to content

Repair wp/6.4 branch Actions: Remove obsolete and trunk-only workflows - #109

Closed
desrosj wants to merge 7 commits into
wp/6.4from
fix-actions-6.4/remove-rn-workflows
Closed

desrosj wants to merge 7 commits into
wp/6.4from
fix-actions-6.4/remove-rn-workflows

Conversation

@desrosj

@desrosj desrosj commented Aug 27, 2026 •

Copy link
Copy Markdown
Owner

What?

Removes GitHub Actions workflow files from wp/6.4 that are either fully obsolete or only meaningful when running from trunk.

Workflow Purpose Reason removed
rnmobile-ios-runner.yml React Native iOS E2E tests Runs on macos-12, retired by GitHub in December 2024
rnmobile-android-runner.yml React Native Android E2E tests Runs on macos-12, retired by GitHub in December 2024
gradle-wrapper-validation.yml Validates the Gradle wrapper used by the Android RN build Validates tooling that is itself unused now that the Android RN runner is broken
storybook-pages.yml Deploys the Storybook GitHub Pages site push: branches: [trunk] only; there is one canonical deployed site, not one per branch
upload-release-to-plugin-repo.yml Publishes releases to the WordPress.org plugin repo release: types: [published]; Gutenberg plugin releases are cut from trunk and release branches, never from wp/X.Y branches
stale-issue-gardening.yml Marks stale issues schedule-triggered; GitHub only ever runs a scheduled workflow using the copy on the repository's default branch
check-components-changelog.yml Requires PRs touching packages/components/ to add a ## Unreleased entry to packages/components/CHANGELOG.md linking to the PR Unsatisfiable here: the CHANGELOG is a frozen record last touched for 25.8.0 (September 2023), no @wordpress/components release is cut from wp/X.Y, and the required link pattern is hardcoded to WordPress/gutenberg PR URLs
php-changes-detection.yml Comments on PRs that change PHP, asking whether the change must be synced to WordPress Core for the next WordPress release wp/6.4 mirrors the Gutenberg code already shipped in WordPress 6.4; changes here are maintenance for a released version, handled by the established backport process, so the bot's advice is wrong on every PR it posts to

publish-npm-packages.yml is kept: it is manually dispatched only, and both of its checkout steps hard-code ref: trunk, so it can never publish from this branch.

Why?

None of these workflows can do useful work from a frozen maintenance branch. The React Native mobile workflows can't even schedule a runner anymore since GitHub retired the macos-12 image they're pinned to. The remaining workflows are all gated to trunk (by push branch, release-cut convention, scheduled-workflow semantics, or a hardcoded ref: trunk checkout), so their copies on wp/6.4 never execute anything meaningful and only add noise and maintenance burden.

Both check-components-changelog.yml and php-changes-detection.yml are OPTIONAL (non-blocking) checks with no branches: filter, so unlike the trunk-gated workflows above they really do run against wp/6.4 pull requests. They are removed for the opposite reason: they run, and what they produce is wrong. The CHANGELOG check can only ever fail here, and the PHP detection bot can only ever post backport instructions that do not apply to a released branch. Removing them also drops this branch's last references to tj-actions/changed-files, peter-evans/find-comment, and peter-evans/create-or-update-comment.

Use of AI Tools

This PR was created by Claude Code under my supervision. All code should be treated as AI-produced and not yet reviewed by a human until this PR is marked Ready for Review.

@desrosj
desrosj removed this pull request from stack #114 September 10, 2026 19:34
@desrosj
desrosj added this pull request to stack #188 September 10, 2026 19:37
@desrosj
desrosj force-pushed the fix-actions-6.4/remove-rn-workflows branch from ebcab36 to dc73d60 Compare September 10, 2026 23:52
@desrosj
desrosj removed this pull request from stack #188 September 13, 2026 00:46
@desrosj
desrosj added this pull request to stack #312 September 13, 2026 00:46
@desrosj
desrosj force-pushed the fix-actions-6.4/remove-rn-workflows branch from 45886bf to b4e356d Compare September 14, 2026 01:29
@desrosj
desrosj removed this pull request from stack #312 September 21, 2026 18:37
@desrosj
desrosj added this pull request to stack #402 September 21, 2026 18:47
@desrosj
desrosj removed this pull request from stack #402 September 21, 2026 21:08
@desrosj
desrosj force-pushed the fix-actions-6.4/remove-rn-workflows branch from 311e24c to 807c02c Compare September 21, 2026 21:11
desrosj added a commit that referenced this pull request Sep 21, 2026
The `mobile-unit-js` job (displayed as `Mobile`) runs
`npm run test:native`, the Jest suite for the React Native mobile app.
It is not disabled on this branch and it is not broken: it carries the
ordinary `if: ${{ github.repository == 'WordPress/gutenberg' ||
github.event_name == 'pull_request' }}` condition, runs on every pull
request against this stack, and currently passes in about five and a
half minutes.

It is removed for scope and consistency, not because it fails. #109
already removed `rnmobile-ios-runner.yml`, `rnmobile-android-runner.yml`
and `gradle-wrapper-validation.yml` from this branch on the grounds that
React Native mobile CI does not belong on a frozen release branch: the
mobile app is released from its own repository on its own schedule and
is never built from `wp/6.4`, so nothing here can regress it and no
result produced here is ever consulted. `mobile-unit-js` is the last
remaining piece of that same mobile CI surface, and leaving it behind
means this branch keeps paying for a runner on every pull request to
test a target it does not ship.

No other job references it. Nothing in the workflow uses `needs:
[mobile-unit-js]`, and no job's `outputs:` existed only to feed it, so
the removal is self-contained and the remaining four jobs (`unit-js`,
`test-php`, `phpcs`, `unit-php`) are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
@desrosj
desrosj added this pull request to stack #423 September 21, 2026 21:32
@desrosj
desrosj removed this pull request from stack #423 September 21, 2026 21:48
desrosj added a commit that referenced this pull request Sep 21, 2026
The `mobile-unit-js` job (displayed as `Mobile`) runs
`npm run test:native`, the Jest suite for the React Native mobile app.
It is not disabled on this branch and it is not broken: it carries the
ordinary `if: ${{ github.repository == 'WordPress/gutenberg' ||
github.event_name == 'pull_request' }}` condition, runs on every pull
request against this stack, and currently passes in about five and a
half minutes.

It is removed for scope and consistency, not because it fails. #109
already removed `rnmobile-ios-runner.yml`, `rnmobile-android-runner.yml`
and `gradle-wrapper-validation.yml` from this branch on the grounds that
React Native mobile CI does not belong on a frozen release branch: the
mobile app is released from its own repository on its own schedule and
is never built from `wp/6.4`, so nothing here can regress it and no
result produced here is ever consulted. `mobile-unit-js` is the last
remaining piece of that same mobile CI surface, and leaving it behind
means this branch keeps paying for a runner on every pull request to
test a target it does not ship.

No other job references it. Nothing in the workflow uses `needs:
[mobile-unit-js]`, and no job's `outputs:` existed only to feed it, so
the removal is self-contained and the remaining four jobs (`unit-js`,
`test-php`, `phpcs`, `unit-php`) are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
@desrosj
desrosj added this pull request to stack #428 September 21, 2026 21:54
@desrosj
desrosj removed this pull request from stack #428 September 21, 2026 23:17
desrosj added a commit that referenced this pull request Sep 21, 2026
The `mobile-unit-js` job (displayed as `Mobile`) runs
`npm run test:native`, the Jest suite for the React Native mobile app.
It is not disabled on this branch and it is not broken: it carries the
ordinary `if: ${{ github.repository == 'WordPress/gutenberg' ||
github.event_name == 'pull_request' }}` condition, runs on every pull
request against this stack, and currently passes in about five and a
half minutes.

It is removed for scope and consistency, not because it fails. #109
already removed `rnmobile-ios-runner.yml`, `rnmobile-android-runner.yml`
and `gradle-wrapper-validation.yml` from this branch on the grounds that
React Native mobile CI does not belong on a frozen release branch: the
mobile app is released from its own repository on its own schedule and
is never built from `wp/6.4`, so nothing here can regress it and no
result produced here is ever consulted. `mobile-unit-js` is the last
remaining piece of that same mobile CI surface, and leaving it behind
means this branch keeps paying for a runner on every pull request to
test a target it does not ship.

No other job references it. Nothing in the workflow uses `needs:
[mobile-unit-js]`, and no job's `outputs:` existed only to feed it, so
the removal is self-contained and the remaining four jobs (`unit-js`,
`test-php`, `phpcs`, `unit-php`) are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
@desrosj
desrosj added this pull request to stack #432 September 21, 2026 23:24
@desrosj
desrosj removed this pull request from stack #432 September 21, 2026 23:49
desrosj added a commit that referenced this pull request Sep 21, 2026
The `mobile-unit-js` job (displayed as `Mobile`) runs
`npm run test:native`, the Jest suite for the React Native mobile app.
It is not disabled on this branch and it is not broken: it carries the
ordinary `if: ${{ github.repository == 'WordPress/gutenberg' ||
github.event_name == 'pull_request' }}` condition, runs on every pull
request against this stack, and currently passes in about five and a
half minutes.

It is removed for scope and consistency, not because it fails. #109
already removed `rnmobile-ios-runner.yml`, `rnmobile-android-runner.yml`
and `gradle-wrapper-validation.yml` from this branch on the grounds that
React Native mobile CI does not belong on a frozen release branch: the
mobile app is released from its own repository on its own schedule and
is never built from `wp/6.4`, so nothing here can regress it and no
result produced here is ever consulted. `mobile-unit-js` is the last
remaining piece of that same mobile CI surface, and leaving it behind
means this branch keeps paying for a runner on every pull request to
test a target it does not ship.

No other job references it. Nothing in the workflow uses `needs:
[mobile-unit-js]`, and no job's `outputs:` existed only to feed it, so
the removal is self-contained and the remaining four jobs (`unit-js`,
`test-php`, `phpcs`, `unit-php`) are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
@desrosj
desrosj added this pull request to stack #440 September 21, 2026 23:54
@desrosj
desrosj removed this pull request from stack #440 September 22, 2026 15:39
@desrosj
desrosj force-pushed the fix-actions-6.4/remove-rn-workflows branch from 807c02c to 60a7490 Compare September 22, 2026 15:40
desrosj added a commit that referenced this pull request Sep 22, 2026
The `mobile-unit-js` job (displayed as `Mobile`) runs
`npm run test:native`, the Jest suite for the React Native mobile app.
It is not disabled on this branch and it is not broken: it carries the
ordinary `if: ${{ github.repository == 'WordPress/gutenberg' ||
github.event_name == 'pull_request' }}` condition, runs on every pull
request against this stack, and currently passes in about five and a
half minutes.

It is removed for scope and consistency, not because it fails. #109
already removed `rnmobile-ios-runner.yml`, `rnmobile-android-runner.yml`
and `gradle-wrapper-validation.yml` from this branch on the grounds that
React Native mobile CI does not belong on a frozen release branch: the
mobile app is released from its own repository on its own schedule and
is never built from `wp/6.4`, so nothing here can regress it and no
result produced here is ever consulted. `mobile-unit-js` is the last
remaining piece of that same mobile CI surface, and leaving it behind
means this branch keeps paying for a runner on every pull request to
test a target it does not ship.

No other job references it. Nothing in the workflow uses `needs:
[mobile-unit-js]`, and no job's `outputs:` existed only to feed it, so
the removal is self-contained and the remaining four jobs (`unit-js`,
`test-php`, `phpcs`, `unit-php`) are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8

# Conflicts:
#	.github/workflows/unit-test.yml
@desrosj
desrosj added this pull request to stack #458 September 22, 2026 15:44
desrosj and others added 7 commits September 22, 2026 16:12
`rnmobile-ios-runner.yml` and `rnmobile-android-runner.yml` both run
their only job on `macos-12`, a runner image GitHub fully retired in
December 2024. Neither workflow was updated to point at a supported
image before this branch was frozen, so both now fail to even
schedule a runner on any push or pull request that triggers them.
`gradle-wrapper-validation.yml` exists solely to validate the Gradle
wrapper used by that same broken Android tooling, and is equally
unused as a result.
`storybook-pages.yml` deploys the single canonical Storybook GitHub
Pages site and only triggers on pushes to `trunk`; there is one
deployed site, not one per branch.
`upload-release-to-plugin-repo.yml` triggers on GitHub release
publication; Gutenberg plugin releases are cut from `trunk` and
release branches, never from `wp/X.Y` branches.
`stale-issue-gardening.yml` is schedule-triggered, and GitHub only
ever runs a scheduled workflow using the copy on the repository's
default branch, regardless of any copy present elsewhere.
…ch filter, so PRs opened against this branch still get fixed-issue assignment and first-time-contributor labeling.
`check-components-changelog.yml` requires every pull request touching
`packages/components/` to add an entry to
`packages/components/CHANGELOG.md`, inside that file's `## Unreleased`
section, linking to
`https://github.com/WordPress/gutenberg/pull/<number>`. Neither half of
that can be satisfied here: the components CHANGELOG on `wp/6.4` is a
frozen historical record whose `## Unreleased` section has been stale
since the 25.8.0 entry of September 2023, and no `@wordpress/components`
release is ever published from a `wp/X.Y` branch, so new "Unreleased"
entries would be inaccurate. The required link pattern is also
hardcoded to `WordPress/gutenberg` pull request URLs, so the check
cannot pass for a pull request opened anywhere else. The job can only
fail or no-op, which on an optional check means nothing but a red X.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
`php-changes-detection.yml` posts and maintains a bot comment on every
pull request that changes PHP, asking the author to confirm whether the
change needs to be synced to WordPress Core "and therefore featured in
the next release of WordPress", and to open a new Trac ticket for it.
That advice only applies to work landing on `trunk`. `wp/6.4` mirrors
the Gutenberg code already shipped in WordPress 6.4; changes made here
are maintenance for an already-released version and are coordinated
through the established backport process for that specific release, not
discovered by a bot prompt. The workflow's only output on this branch
is a comment that gives the wrong instructions.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8
@desrosj
desrosj removed this pull request from stack #458 September 22, 2026 20:15
@desrosj
desrosj force-pushed the fix-actions-6.4/remove-rn-workflows branch from 60a7490 to 0ac85e8 Compare September 22, 2026 21:30
desrosj added a commit that referenced this pull request Sep 22, 2026
The `mobile-unit-js` job (displayed as `Mobile`) runs
`npm run test:native`, the Jest suite for the React Native mobile app.
It is not disabled on this branch and it is not broken: it carries the
ordinary `if: ${{ github.repository == 'WordPress/gutenberg' ||
github.event_name == 'pull_request' }}` condition, runs on every pull
request against this stack, and currently passes in about five and a
half minutes.

It is removed for scope and consistency, not because it fails. #109
already removed `rnmobile-ios-runner.yml`, `rnmobile-android-runner.yml`
and `gradle-wrapper-validation.yml` from this branch on the grounds that
React Native mobile CI does not belong on a frozen release branch: the
mobile app is released from its own repository on its own schedule and
is never built from `wp/6.4`, so nothing here can regress it and no
result produced here is ever consulted. `mobile-unit-js` is the last
remaining piece of that same mobile CI surface, and leaving it behind
means this branch keeps paying for a runner on every pull request to
test a target it does not ship.

No other job references it. Nothing in the workflow uses `needs:
[mobile-unit-js]`, and no job's `outputs:` existed only to feed it, so
the removal is self-contained and the remaining four jobs (`unit-js`,
`test-php`, `phpcs`, `unit-php`) are untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DtSAAJkQ9P6vPtDumqStg8

# Conflicts:
#	.github/workflows/unit-test.yml
@desrosj
desrosj added this pull request to stack #482 September 22, 2026 21:34
@desrosj
desrosj removed this pull request from stack #482 September 23, 2026 01:30
@desrosj
desrosj added this pull request to stack #485 September 23, 2026 01:38
@desrosj
desrosj removed this pull request from stack #485 September 24, 2026 04:44
@desrosj
desrosj added this pull request to stack #508 September 24, 2026 04:48
@desrosj
desrosj removed this pull request from stack #508 September 24, 2026 17:43
@desrosj
desrosj added this pull request to stack #514 September 24, 2026 17:44
@desrosj
desrosj marked this pull request as ready for review September 25, 2026 16:44
@github-actions

Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: desrosj <desrosj@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@desrosj
desrosj removed this pull request from stack #514 September 25, 2026 17:16
@desrosj
desrosj added this pull request to stack #533 September 25, 2026 17:16
@desrosj
desrosj removed this pull request from stack #533 September 28, 2026 15:23
@desrosj
desrosj added this pull request to stack #550 September 28, 2026 15:24
@desrosj
desrosj removed this pull request from stack #550 September 28, 2026 16:24
@desrosj
desrosj added this pull request to stack #555 September 28, 2026 16:25
@desrosj
desrosj removed this pull request from stack #555 September 28, 2026 18:59
@desrosj
desrosj added this pull request to stack #565 September 28, 2026 19:01
@desrosj

desrosj commented Sep 28, 2026

Copy link
Copy Markdown
Owner Author

Moved to WordPress#83667. The branch is left in place.

@desrosj desrosj closed this Sep 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant