ci(cmux-next): the landing DEV compile never overflows to Blacksmith macOS

Merged
TE
4d ago
+36-99

Leo-ask: ask-6ebdd36a0d

Leo: "...Now the 12-core option is only used when nothing else is waiting for Blacksmith Macs." but we have the fleet we have linux blacksmith... why are we STILL TALKING ABOUT BLACKSMITH MACOS

What changed

Every feat-cmux-next landing compiles the DEV Release app (dev-landing-compile) on the owned Mac whose host tree is nearest. When no owned Mac was free for about two minutes, it overflowed to blacksmith-12vcpu-macos-26. That is the 12-core label from Leo's quote, which also started nothing for about a day on 2026-10-28 and again on 2026-10-30. Now it overflows nowhere:

  • scripts/ci/dev_landing_place.py: with no owned Mac free after the wait, with owned pools off, or with the runners unreadable, it prints an empty runs_on and pool=none. overflow_label() and the snapshot read are gone.
  • cmux-next.yml: dev-landing-compile runs only when the placement chose a runner. OVERFLOW_LABEL is removed.

Why skipping costs nothing: a landing compile exists to warm a host tree for the next landing. A Blacksmith VM keeps no tree, and the DEV run compiles that commit on its own route anyway. The DEV daily placement (place_daily) is unchanged.

Risk: low. If no owned Mac is free, a landing just has no early compile. A skipped job blocks nothing downstream.

Changelog

none

Observed / Not run

Ran on the head: tests/test_dev_landing_place.py (22 OK), tests/test_cmux_next_dev_landing_workflow.py (7 OK), tests/test_nightly_sign_runner.py (49 OK). Not observed yet: a real landing that finds no owned Mac free.

šŸ¤– Generated with Claude Code

Agent session: agent session