ci: no Linux runs-on fails over to the stalled 4 vCPU Blacksmith size
The overflow switch's CI_CLOUD_OVERFLOW_SAVED record has been set since 07:48Z. While it is set, 77 runs-on in 45 workflows failed over to blacksmith-4vcpu-ubuntu-2404, which RUNNER_POOLS marks _dead (09:36Z), so those jobs queued with runner_id 0. This follows cmux#30685 and cmux#30810, which fixed backend.yml and cmux-tui-artifacts.yml the same way.
Change (routing only; environments, secrets and permissions untouched):
- 2 vCPU jobs fail over to 8 vCPU, and 8 vCPU jobs to 16.
.github/runners.jsonlinux_sizesfollows for 41 entries. Measured sizes are unchanged. tests/test_ci_blacksmith_linux_failover.pyallows 2 to fail over to 4 or 8.- The bounded
contains(fromJSON('[...]'), vars.LINUX_RUNNER) && vars.LINUX_RUNNER || '8vcpu'routes in backend.yml (#30761), ci.yml:70 and cmux-next-ios-kit.yml:84 gain the overflow failover their final literal lacked. So does cmux-next-chromium-currency.yml, whose tail resolved to the dead 4 vCPU size whenever LINUX_RUNNER names Blacksmith. Together these clear the failover test's 14 offenders on base. - Four tests that pinned the old 2 vCPU expression (base tier, dev kick, generated catch-up, iOS internal builder) are updated.
Not in this PR: fork pull request branches still pick 4 vCPU (a separate PR). Light jobs whose primary is 4 vCPU fail over to 8, so they are already off the dead size while the record is set.
Tests (local, every test file that names these labels, 51 files): all pass except test_ci_change_areas, test_ci_macos_xcode_selection, test_ci_signing_keychain_is_deleted_before_bundle_code, test_ci_warm_sources and test_ci_self_hosted_guard.sh, which fail identically on base 87b4c905. test_ci_owned_pool_sources also fails on base, on backend.yml's migrations-push-guard; that fix goes to main's owned_pool_rescue.py in its own PR.
Rule: no job waits on a dead label (Leo, 2026-10-24: "THERE SHOULD BE 0 QUEUE EVER HERE").
Agent session: agent session
š¤ Generated with Claude Code