Plans

Plan 0015

Retire the Mac from CI entirely

Finish Plan 0009: no CI step executes on macOS. Every darwin artifact is cross-compiled from the Linux fleet, every darwin check gets a cross-built or host-independent equivalent, and the Mac becomes purely a substitution target.

Status
Sketch
Ambition
6 finishes what Plan 0009 started: zero darwin execution anywhere in CI
Impact
7 darwin lanes are the flakiest and least observable part of CI
Effort
6 every remaining darwin-only check needs a cross or emulated equivalent
Risk
5 cross-built artifacts can diverge from what a real Mac runs
Maturity
5 the cross substrate is load-bearing; the long tail of checks is not moved
Leverage
7 every new package skips the mac lane by construction
Taste
4 the destination is agreed; the tail is enumeration and porting
Authors
andrewgazelka
Created
Updated
Tracking issue
-
Supersedes
-
Superseded by
-

Summary

Plan 0009 made cross-compiled darwin packages load-bearing, but CI still runs darwin-only steps for the parts nobody has ported: native checks, cache pushes from Macs, lint lanes that assume a darwin host. Those lanes are the least reliable part of CI and the issues keep coming. The end state is simple: the Linux fleet builds everything, cache.ix.dev serves everything, and a Mac only ever substitutes.

Non-goals

Dropping darwin support; the point is darwin artifacts without darwin executors.

Absorbed issues

#3606, #3586, #3585, #3582, #3573, #3133, #1142, #1093, #1088, #1082, #1076, #1065, #1061, #2672, #2671, #2670

Drafted by Claude Code (Fable) from the open-issue corpus; scores are seed estimates.

© 2026 Indexable, Inc.