The 2026-10-16 run gave the first real diagnostic in six attempts. ci-test.log reached 889,595 bytes and ended at PruneExplicitPrecompiledModules, which is the end of a clean build, and then xcodebuild sat for 150 minutes without printing "Testing started". The watchdog killed it and the gate printed that tail. So on pauls-imac the build succeeds and the test phase never begins; the same commit builds and runs 1289 XCTest plus 578 Swift Testing tests in about 7 minutes on an M3. One xcodebuild call cannot tell a slow compile from a test phase that never starts. build-for-testing and test-without-building each run under their own cap, and the log says which one stopped. Running test-without-building against a warm build exposed a second race in BridgeFailoverTests, of the same kind as the first: onWorked and onAllFailed append to a plain `var` from the transport's queue while the test reads it, which races the callback and shares a variable across two threads. Three assertions read a locked box on a 5-second deadline now. Verified: build-for-testing reports ** TEST BUILD SUCCEEDED **, test-without-building runs all 1289, and BridgeFailoverTests passed 11 of 11 three times in a row. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>