Skip to content

ci: skip re-testing on the release PR and parallelize the slowest jobs - #1474

Merged
tenphi merged 2 commits into
mainfrom
andrew/ci-release-pr-and-parallel-tests
Oct 6, 2026
Merged

tenphi merged 2 commits into
mainfrom
andrew/ci-release-pr-and-parallel-tests

Conversation

@tenphi

@tenphi tenphi commented Oct 6, 2026 •

Copy link
Copy Markdown
Member

Describe changes

Version Packages PR (changeset-release/main)

  • Its CI never ran on updates. changesets opens the PR with UIKIT_GITHUB_TOKEN, so the run on the opening commit works. Every later update is a git push that authenticates with the GITHUB_TOKEN actions/checkout persists, which beats the PAT changesets writes to ~/.netrc. Those runs are created as github-actions[bot], wait at action_required, and are marked failed on merge (Version Packages #1469, Version Packages #1473). publish-release now checks out with persist-credentials: false, so the push uses the PAT. The PAT already creates the GitHub releases, so it has contents: write.
  • It skips what re-tests the same tree. It changes only versions, changelogs and spent changesets, and main takes only up-to-date green PRs. Tests & lint, the React Compiler jobs, browser tests, Chromatic, size-limit and CodeQL now skip it.
    • A job skipped by its if reports success, so the required Tests & lint check still passes.
    • A new skip-chromatic job runs chromaui/action with skip: true, which marks the commit as passing, so the required UI Tests / UI Review statuses report without a build. Its real builds ran with TurboSnap disabled and snapshotted all 1085 stories.
    • Build & canary release still builds the tree about to ship (it already skipped the canary publish).

Regular PRs (same coverage, shorter critical path; ~590s today, from "Browser tests / React 18")

  • Browser tests: each compiler mode is now its own matrix job (React 18/19 × compiler off/on) instead of two serial ~270s steps in one job.
  • React Compiler: test:compiled (~330s) moves into its own job on the same React matrix, beside the Form and package checks instead of among them.
  • CodeQL: a new push to a PR cancels the analysis of the previous one.

Expected critical path afterwards: Tests & lint, ~430s. Required check names are unchanged. The renamed jobs (React Compiler, Browser tests) are not required checks.

Checklist

No changeset: CI only.

Closes: N/A

Other information

Measured on this PR

  • Regular path: the Pull Request workflow took 424s wall-clock, against ~590s before. The longest jobs are Tests & lint (420s), React Compiler / React 18 / All components (350s) and the slowest browser job (326s).
  • Release path: I tested it with a temporary commit that pointed the release-branch condition at this branch, and dropped it before the final push. UI Tests and UI Review reported success ("Skipped build."), the test jobs reported skipped, Build & canary release passed in 77s, and the PR's merge state was CLEAN, so all four required checks were satisfied.
  • Not testable before merge: persist-credentials: false only takes effect on the first release-PR update after this merges.

🤖 Generated with Claude Code

The Version Packages PR changes only versions, changelogs and spent
changesets. main takes only up-to-date, green PRs, so its tree is what the
last merged PR already tested. Skip the test, browser, compiler, Chromatic,
size and CodeQL jobs there. A job skipped by its `if` reports success, so
the required `Tests & lint` check still passes, and a new job marks the
commit as passing in Chromatic (`skip: true`) so `UI Tests` and `UI Review`
report without a build. That build re-snapshotted all ~1100 stories with
TurboSnap disabled. `Build & canary release` still builds the tree about to
ship.

Updates of that PR never ran CI at all: changesets pushed them with the
`GITHUB_TOKEN` that actions/checkout persists, which takes precedence over
the PAT, so each run waited at `action_required`. Check out without
persisted credentials so the push uses the PAT.

On regular PRs, browser tests run each compiler mode as its own matrix job
instead of two serial ~4.5-minute steps, and the compiled full suite runs
beside the Form and package checks instead of among them. CodeQL cancels
the analysis of a superseded PR push.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 79b5250

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
cube-ui-kit Ready Ready Preview Oct 6, 2026 1:15pm UTC

Request Review

@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

📦 NPM canary release

Deployed canary version 0.0.0-canary-0486611.

@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

🧪 Storybook is successfully deployed!

@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

🏋️ Size limit report

Name Size Passed?
All 604.64 KB (0% 🟰) Yes 🎉
Tree shaking (just a Button) 129.89 KB (0% 🟰) Yes 🎉

Compared against main at 225b7e4 — run 37469139459, 2026-10-06T13:13:40Z.

To see which modules changed, download the size-limit-statoscope-report artifact from this run and open report.html.

@tenphi
tenphi merged commit c118a8d into main Oct 6, 2026
23 checks passed
@tenphi
tenphi deleted the andrew/ci-release-pr-and-parallel-tests branch October 6, 2026 13:41

This branch was successfully deployed

2 active deployments
Preview — 79b52504 Deployed Oct 6, 2026 by vercel[bot]
Chromatic staging — 79b52504 Deployed Oct 6, 2026 by tenphi via Prepare Storybook for review & tests #3993
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant