You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Split the Apple runner xctestrun god module into focused modules for artifact build/discovery/env prep, cache evaluation, cache metadata fingerprinting, and XCTestDevices redirection while preserving the consumed runner-xctestrun import surface.
Rebased onto latest origin/main so the moved toolchain fingerprint cache uses the shared TTL memo from #1060, and tightened the new module exports to satisfy Fallow.
Ran pnpm format, pnpm check:quick, pnpm exec vitest run src/platforms/apple/core/__tests__ (22 files, 405 tests), and pnpm check:fallow --base origin/main.
Swift runner code was not changed, so pnpm build:xcuitest was not run.
Residual risk: CI is rerunning on the pushed rebased head.
The reason will be displayed to describe this comment to others. Learn more.
Review: LGTM. The acceptance bar from #1041 is met precisely: runner-xctestrun.ts is a 3-line barrel; cache (443) / artifact (519) / device-set (256) plus the env and metadata satellites all land under the 600-line ceiling, and import sites are untouched. 403 apple-core tests, provider 87/87, typecheck — all green locally.
Merge-order note for the maintainer:#1060 (TTL memo) edits the fingerprint cache inside the pre-split runner-xctestrun.ts; this PR relocates that code. Whichever merges second must rebase — mechanically trivial but not auto-mergeable. Suggest #1060 first (small), then rebase this split on top so the moved code carries the memo migration with it.
Coordinator re-review: no actionable blockers on current head ea9e8b4. CI is green (21/21). The rebased split still keeps runner-xctestrun.ts as a barrel while preserving the runner build/cache/env/device-set seams in focused Apple-runner modules. Merge-readiness is for maintainer judgment; no live device path changed beyond the existing runner artifact preparation behavior.
Preview removed because the pull request was closed.
2026-07-03 11:11 UTC
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ready-for-humanValid work that needs human implementation, judgment, or maintainer merge
1 participant
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Split the Apple runner xctestrun god module into focused modules for artifact build/discovery/env prep, cache evaluation, cache metadata fingerprinting, and XCTestDevices redirection while preserving the consumed runner-xctestrun import surface.
Rebased onto latest
origin/mainso the moved toolchain fingerprint cache uses the shared TTL memo from #1060, and tightened the new module exports to satisfy Fallow.Closes #1041
Touched files: 6.
Validation
Ran
pnpm format,pnpm check:quick,pnpm exec vitest run src/platforms/apple/core/__tests__(22 files, 405 tests), andpnpm check:fallow --base origin/main.Swift runner code was not changed, so
pnpm build:xcuitestwas not run.Residual risk: CI is rerunning on the pushed rebased head.