ci(fast-checks): pin the admission helper at the one-look picker
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
| Metric | Before | After | Delta | Harness or run |
|---|---|---|---|---|
| Picker step, fleet busy or gone | 182 s (run 41718897738) | one census read, about 1 s | about -180 s | admit job log; tests/test_ci_fast_checks_runner.py on feat-cmux-next |
Whole admit job | 3m27s (run 41718897738) | about 30 s expected (checkout and token mint) | about -3 min | read 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