ci(fast-checks): pin the admission helper at the one-look picker

Merged
TE
3d ago
+3-2

Why

Every fast-checks run's admit job checks out the admission helper at a pinned feat-cmux-next commit. main still pins ecc5d607 (#30648). That picker polls up to 180 s for an idle fleet runner before it overflows. On run 41718897738 (cmux#34036), the step "Select a live fleet runner or bounded overflow" took 182 s (21:10:04.9Z to 21:13:06.7Z), and the whole admit job took 3m27s, on top of the hosted queue wait.

Change

One line: the helper ref moves to 159a701991677b65aa48d11d54e1579d58f6b1cb (#34270, merged on feat-cmux-next). That picker decides on one census read:

  • an online fleet Linux runner, idle or busy, keeps the checks on the fleet label;
  • with no online fleet runner, the checks go to Blacksmith 8 vCPU at once;
  • an unreadable census is read once more, then overflows.

Fleet first is kept. The lane-gh broker moves a checks job that the fleet label leaves queued 180 s to the Blacksmith overflow, so the bound applies to the job that actually waits.

Code under the new pin (for review)

The helper diff ecc5d607..159a7019 (scripts/ci/fast_checks_runner.py, scripts/ci/pr_runner_pool.py, tests/test_ci_fast_checks_runner.py) is the single commit d411448c on lane/fast-checks-helper-pin-review, with parent ecc5d607. Each change in it landed on feat-cmux-next through its own reviewed PR:

  • #30762: admission credentials and deadline
  • #30822: absolute request deadlines
  • #31896: shared runner state until a wait
  • #33652: overflow at once on a spent quota
  • #34270: one census read

Performance

MetricBeforeAfterDeltaHarness or run
Picker step, fleet busy or gone182 s (run 41718897738)one census read, about 1 sabout -180 sadmit job log; tests/test_ci_fast_checks_runner.py on feat-cmux-next
Whole admit job3m27s (run 41718897738)about 30 s expected (checkout and token mint)about -3 minread on the first run after this lands

Testing

  • python3 tests/test_ci_fast_checks_failover.py: 21 pass.
  • python3 tests/test_ci_fast_checks_swiftpm_artifacts.py: 23 pass.
  • On feat-cmux-next at 159a7019: python3 tests/test_ci_fast_checks_runner.py: 21 pass. python3 tests/test_ci_pr_runner_pool.py: 262 pass.

Changelog

none

Agent session: agent session

šŸ¤– Generated with Claude Code