Skip to content

Run 2 of 4 Gradle hosted Windows cells on PRs - #1353

Closed
Mikola Lysenko (mikolalysenko) wants to merge 3 commits into
mainfrom
ci-perf/1300-gradle-windows-hosted
Closed

Mikola Lysenko (mikolalysenko) wants to merge 3 commits into
mainfrom
ci-perf/1300-gradle-windows-hosted

Conversation

@mikolalysenko

@mikolalysenko Mikola Lysenko (mikolalysenko) commented Oct 9, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #1300

Problem

Every PR that matches gradle-compatibility.yml's paths: (~60–100 full runs/day) runs the 43-test hosted Gradle suite on Windows four times, once per Gradle line. Baseline run 37960054571 (2026-10-09 16:34):

cell (windows-latest) job min
8.14.3 / jdk 21 / hosted 42.3
9.8.0 / jdk 21 / hosted 33.3
7.6.6 / jdk 17 / hosted 28.1
6.9.4 / jdk 11 / hosted 28.0
4 vendor cells 36.6
4 agent cells 16.4
build 4.1
total ~189 Windows job-min, wall clock ~47 min

The 4 hosted cells are 132 of the ~189 Windows job-min (70%), and the 8.14.3 cell sets the wall clock. None failed on a PR in the windows sampled by #1300 / #1177 / #1255.

Change

Two exclude entries in cells, keyed on the event like the existing macOS/ubuntu ones: on pull_request only, skip windows-latest × {7.6.6, 8.14.3} × hosted. On schedule / workflow_dispatch the os value is '', which matches no cell, so the nightly grid is still the full 36 cells. Header comment updated.

Expected saving

Measured result

This PR's run 37970547476 (head 3edc241, success) vs baseline 37960054571:

Windows jobs baseline (job-min) this PR (job-min)
hosted 6.9.4 28.0 21.8
hosted 7.6.6 28.1 not run
hosted 8.14.3 42.3 not run
hosted 9.8.0 33.3 33.5
4 vendor cells 36.6 39.5
4 agent cells 16.4 18.3
build 4.1 4.1
total Windows 188.8 117.2 (−71.6, −38%)
  • Critical path to the last Windows cell: build + slowest hosted cell went from 4.1 + 42.3 ≈ 46 min to 4.1 + 33.5 ≈ 38 min.
  • The two excluded cells don't appear in the run at all, so the exclude matches as intended. This run also ran the ubuntu extras (the PR touches the workflow file, so gradle_core=true). Those aren't in the baseline and don't change the Windows comparison.
  • macOS: 0 before and 0 after. Merge queue: not affected (this workflow has no merge_group trigger).

Where each moved test still runs

  • Hosted suite on Windows, Gradle 7.6.6 and 8.14.3: nightly (17 4 * * *) and workflow_dispatch of gradle-compatibility.yml.
  • Hosted suite on all 4 lines: ubuntu, ci.yml e2e on every PR and in the merge queue (unchanged).
  • Hosted on Windows on 6.9.4 and 9.8.0, plus all 4 agent and 4 vendor Windows cells: still every matching PR.

Risk

A regression that hits only Windows and only hosted mode on the middle two Gradle lines would surface in the next nightly instead of on the PR. No test, assertion or required check changes. Local checks: scripts/tests/test_ci_e2e_tiers.py + test_ci_gradle_prefixes.py pass (33 tests); zizmor and actionlint report the same findings as on main (pre-existing).

🤖 Generated with Claude Code

https://claude.ai/code/session_01VrgiQoDwt3vjxG2zNfZBAA


Generated by Claude Code

Each matching PR ran the 43-test hosted Gradle suite on Windows four
times, once per Gradle line, at 28-42 min a cell: about 70% of the
workflow's Windows minutes and its wall clock. Keep the oldest (6.9.4)
and newest (9.8.0) lines on PRs and leave 7.6.6 and 8.14.3 hosted on
Windows to the nightly and manual runs. ci.yml's e2e still runs hosted
on all four lines on ubuntu on every PR and in the merge queue.

Fixes #1300.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VrgiQoDwt3vjxG2zNfZBAA
@mikolalysenko Mikola Lysenko (mikolalysenko) added the ci-perf CI / merge-queue performance finding (profiler routine) label Oct 9, 2026
@mikolalysenko

Copy link
Copy Markdown
Collaborator Author

bugbot run


Generated by Claude Code

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

Reviewed by Cursor Bugbot for commit 2418944. Configure here.

hosted-e2e (and the other live minimist suites) fail on every head:
production now serves minimist@1.2.2 patch 642d7f02 while the tests
pin 80630680 (#1293). This is #1301's change, applied verbatim; it
becomes a no-op once #1301 lands.

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

Copy link
Copy Markdown
Collaborator Author

hosted-e2e failed on 2418944: production now serves minimist@1.2.2 patch 642d7f02 while the live suites pin 80630680 (#1293), so 8 hosted install proofs fail on every head. Not this PR's change. Ported #1301's repin verbatim in bc3d7f6 (no-op once #1301 lands).


Generated by Claude Code

@mikolalysenko
Mikola Lysenko (mikolalysenko) added this pull request to the merge queue Oct 9, 2026
@mikolalysenko Mikola Lysenko (mikolalysenko) added the Ready for review Agent-verified: mergeable, CI green, Bugbot clean — awaiting human review label Oct 9, 2026
@mikolalysenko

Copy link
Copy Markdown
Collaborator Author

Ready for review at 3edc2411dd39.

  • CI: required checks ci-ok and clippy green; 8 check suites succeeded.
  • Mergeable against main, no CHANGELOG.md change.
  • Bugbot reviewed this head; no unresolved review threads.

Labeled Ready for review by the burn-down agent. Slack announcement pending (connector unavailable this run).


Generated by Claude Code

@mikolalysenko
Mikola Lysenko (mikolalysenko) removed this pull request from the merge queue due to a manual request Oct 9, 2026
@mikolalysenko

Copy link
Copy Markdown
Collaborator Author

Taken out of the merge queue: it conflicts with #1362 (Depot runners, at the head of the queue), and its change (Windows Gradle hosted PR coverage on 6.9.4 + 9.8.0 only) is included in #1355, which also Fixes #1300. If #1355 lands, this can be closed as superseded.

@mikolalysenko

Copy link
Copy Markdown
Collaborator Author

Folded into #1375 at the maintainer's request (#1362 already merged). #1375 carries this change (2 of 4 Gradle hosted Windows cells on PRs) unchanged, re-applying the Depot runner mapping from #1362. Closing in favour of #1375.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-perf CI / merge-queue performance finding (profiler routine) Ready for review Agent-verified: mergeable, CI green, Bugbot clean — awaiting human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI perf: Gradle compatibility — 4 Windows hosted cells (36–42 min each) on every matching PR are 70% of the run (~5,000 Windows job-min/day)

3 participants