If you're building an iOS app with GitHub Actions, you're probably burning through macOS runner minutes like they're free. Spoiler: they're not — macOS runners cost 10x more than Linux runners, and a 25-minute test run that fires on every push adds up fast. We run a Swift/SwiftUI app with 3000+ tests across BLE integration, calibration logic, snapshot testing, and more. Here's how we went from "run everything on every push" to an opt-in, routable, self-hosted-friendly CI. TL;DR — you can get the speed of self-hosted runners without the usual operational overhead, and in a way that's completely developer-independent: No shared build box to maintain, no daemons running on anyone's laptop, no hardcoded machine names in CI configs. Every developer's Mac is self-aware: it reads its own identity from the runner config on disk, auto-starts in single-job mode only when a commit explicitly asks for it, and shuts down the moment the job finishes.…