fix(ci): start fast checks on fleet Linux
Leo asked: “WHY ARE TEST RUNS EVEN GETTING F***ING STUCK” and “I hate pins.”
The dispatch-only fast-checks workflow used a Blacksmith pool variable as its default, so lane cmux-ci runs could queue indefinitely on a stalled Blacksmith size. It now starts on the GCP JIT fleet label cmux-fleet-linux-x64; the broker can still select the declared Blacksmith labels as bounded overflow after a stall. The input is validated against that declared set, and the default never names a Blacksmith size.
The workflow's read-only checkout and permissions are unchanged. tests/test_ci_fast_checks_failover.py and tests/test_ci_runner_set.py enforce fleet-first ordering and reject a Blacksmith-only route.
Prior art: cmux #29757 (the equivalent feat-cmux-next change), HQ #5751 (JIT no-start overflow), and the existing cmux-fleet-linux-x64 group declaration.
Validation: fleet cmux-ci test -- python3 -m unittest tests/test_ci_fast_checks_failover.py tests/test_ci_runner_set.py.
Agent session: agent session
🤖 Generated with Claude Code
Summary by CodeRabbit
- Chores
- Updated runner selection for fast checks to support the fleet runner and listed Blacksmith runners, with the fleet runner as the fallback.
- Updated CI runner selection and checks to reflect the current runner configuration.