macless.dev

Field diagram — commit to TestFlight

Every way an iOS build dies.

A CI job can print three green checkmarks and still ship nothing. This is a drawn map of the pipeline from git push to a build showing up in TestFlight — sixteen real, diagnosed failure points, in the order they actually happen, each with the mechanism and the fix. No invented cases. Every node below is a real, sourced failure, mostly from Stack Overflow threads that sat unanswered for months and questions this project's own tools were built to answer.

Click any red marker on the diagram, or a line in the index below it, to open the diagnosis.

01 DEPENDENCIES 1 2 3 02 HEADLESS KEYCHAIN 4 5 6 03 CERT & PROFILE 7 8 9 10 04 ARCHIVE & EXPORT 11 12 05 UPLOAD 13 14 06 ASC PROCESSING 15 07 TESTFLIGHT 16 git push → GitHub Actions macOS runner → xcodebuild → TestFlight

↔ scroll to see the full pipeline

Select a marker above — start with 01, or jump straight to the stage that's currently ruining your afternoon.

All sixteen, by stage

Every case above is a real, diagnosed failure — mostly from Stack Overflow threads that sat with zero answers for months, plus packaging and processing bugs caught in this project's own shipped pipeline. Nothing here is invented to fill a slot. If you hit something not on this map, the fix is the same either way: read the actual log a few dozen lines above the summary line the tool gives you, not the summary line itself.

You can fix all sixteen yourself, or run a pipeline that already has.

Macless is the same GitHub Actions pipeline diagrammed above, pre-built with these failure modes already handled — cert/profile selection, keychain search-list ordering, the post-upload processing check — running on your own repo, your own Actions minutes, your own Apple and Google accounts.

$19.99/mo, or $299 once — the same one-time price Natively and Publishd both charge $699 for their done-for-you tier. No Mac required either way.