Skip to content

CI: Move test matrix logic to testing.yml - #352

Draft
swissspidy wants to merge 3 commits into
mainfrom
try/matrix
Draft

CI: Move test matrix logic to testing.yml#352
swissspidy wants to merge 3 commits into
mainfrom
try/matrix

Conversation

@swissspidy

Copy link
Copy Markdown
Member

No description provided.

@swissspidy swissspidy added the scope:testing Related to testing label Aug 7, 2026
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 14714fe1-3854-424b-9f45-fde14fb621f1

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@swissspidy

Copy link
Copy Markdown
Member Author

Grouping: Screenshot 2026-08-07 at 11 51 47

@codecov

codecov Bot commented Aug 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

swissspidy pushed a commit to wp-cli/.github that referenced this pull request Aug 7, 2026
Confirmed against wp-cli/wp-cli-tests#352 that the fanned-out shape does group
the legs in the run view. What it also showed is that the leg names then repeat
their group: a group called "Behat | PHP 8.5" containing "Behat | PHP 8.5 | WP
latest | SQLite".

wordpress-develop handles this by suppressing the prefix in the called workflow
whenever the calling job already states it — its leg name only includes "PHP {0}
with" for the test-group and coverage callers, which are exactly the ones whose
job name is not "PHP {0}". Do the same, with an explicit `grouped` input rather
than inferring it from unrelated inputs.

Wrapped callers leave it at its default of false and are unaffected; their names
still have to stand on their own because their calling job is not surfaced.

The expression is written as `!grouped && <prefix> || ''` rather than the more
natural looking `grouped && '' || <prefix>`, because an empty string is falsy and
the latter would fall through to the prefix in both cases. That is the same trap
that made fetch-depth always evaluate to 1 earlier in this branch; zizmor's
unsound-ternary audit is clean on the form used here.

Noted in the README that a grouped leg name is only unique within its group, so
the back-out is to set `grouped: false` for that caller.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jy4dmjymj9VmoTBaqrV4iX
swissspidy pushed a commit to wp-cli/.github that referenced this pull request Aug 7, 2026
Verified against wp-cli/wp-cli-tests#352. Grouping Behat by PHP version works —
two to eight legs per group — but the unit matrix has exactly one leg per PHP
version, so the same treatment produced nine groups containing one job each.

Give the unit fan-out a single "Unit" group and let the PHP version distinguish
the legs inside it. The grouped form of the unit name therefore keeps the
version, rather than collapsing to a bare constant the way the Behat one does;
the version is the only thing that tells those legs apart.

Behat is unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jy4dmjymj9VmoTBaqrV4iX
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

scope:testing Related to testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant