perf(ci): experiment with two isolated iOS XCTest shards

Closed
TH
5d ago
+332-11

Summary

Experiment with two isolated simulator processes for the iOS PR XCTest selection. Alternate generated method IDs; retain every test, assertion, and timeout. Wait for both workers, preserve failures, upload separate results, and verify exact method coverage. Four files; follow-up to #3802.

Validation

Tested head: 027b43734b26134459be39310eeef0e61a1fd1ab.

  • pnpm check:affected --run --head HEAD: 36 checks passed; receipt run-jsvaj0, exactCommit=true, checkoutChanged=false. Focused reporter/selection tests: 51 passed. Independent review: no findings.
  • Local pilot: 48/48 executions passed at 9beae21eaf; warm 12-test pair improved 39.7%, excluding boot.
  • Hosted CI: all 125 selected methods executed exactly once; 124 passed, one failed (#3800). Worker exits 65/0 propagated; cleanup passed. Later CLI/replay/E2E steps were skipped.
  • Hosted targeted step: 23m02s, plus 3m34s second-simulator boot. Earlier serial run at 9beae21eaf: 21m40s for 124 methods. Different commits/runs prevent a controlled speedup claim. This experiment shows no hosted benefit.
  • Coverage, Integration Tests, repo guards, and all other executable checks passed. Cache matrix skipped; review bot neutral. Not merge-ready: #3800 remains open. Do not adopt this configuration based on the local pilot.