Conversation
Size Report
Startup median (7 runs, lower is better):
|
8ab2b2c to
41249a0
Compare
|
This does not fix the bare-type half of the flake, at commit 41249a0. Can the route assertion move inside the The rest of the diff (occupancy stub timeout) reads sound, so this is the one blocking change before merge. All ten checks on this commit are still queued or in progress, none have failed yet, and the diff only touches iOS runner XCTest source, so those checks are unlikely to speak to this issue either way. |
testAbandonedTreeCaptureSkipsQuerySweepAndHonorsWarmupExemption runs first in the targeted XCTest lane and absorbed a cold host twice over: - A cold viewport read overran its 1 s cap before the tree capture the test targets, so the abandonment reason read "preparing tree snapshot" (4 CI failures at line 106). The test now pays that read uncapped before the timed section; the production cap is unchanged. - The blocking stub's own 20 s timeout could release the main thread before the test read the abandoned-work count, reading Optional(0) (2 CI failures at line 111). It is now a named leak guard far past the plan deadline, so only the test's release ends the block.
41249a0 to
ba93660
Compare
|
Addressed at ba93660. The bare-type change is gone: #2845 moved bare |
|
The unconditional textEntryRoute assertion on a nil-data failure response from the earlier review (41249a0) is gone at ba93660; this PR now only touches RunnerTests+SnapshotCapturePlanOccupancyTests.swift and is test-only, so it does not carry that risk. 18/18 checks are green on ba93660, and the diff touches only that occupancy test file, which is exactly what the previously failing 'Run targeted iOS runner XCTest regressions' job exercises for this test name, so the green run is direct evidence the fix runs. A single green run does not rule out the cold-host flake recurring, so a repeat run or two on that job would help confirm the fix holds. I did not run the runner XCTest suite myself; this reads on the diff plus your stated validation (5/5 pass on iPhone 17 Pro/iOS 26.2, and a mutation test pinning the stub to the 8s slice budget reproduces Optional(0)) and the 18/18 green checks. I also didn't re-run This looks ready to merge from the code side. |
Summary
Fixes
testAbandonedTreeCaptureSkipsQuerySweepAndHonorsWarmupExemption, which runs first in "Run targeted iOS runner XCTest regressions" and failed 8 times from 09-15 to 09-23 on cold or loaded hosts, once on main. Test-only; 1 file, +9/−1.Optional(0)). It is now a named 75 s leak guard, well past the plan deadline, so only the test's own release ends the block.Dropped after review:
RunnerTests.setUpalso runs before the production runner'stestCommand.typeoff the synthesized route whose dropped keystrokes caused that flake, so the relaxation was obsolete. It was also broken: failure responses carry nodata.Not fixed here: 4 cold
app.launch()timeouts.Validation
ba936608c6, rebased on main:pnpm check:affected --runpassed.Optional(0).