Problem
wait stable on the fixture Automation lab screen (iOS Simulator, iPhone 17 Pro / iOS 26.2, AX-bridge captures) timed out with 0 captures in 15 of 16 calls on 2026-09-24. A timeout could be expected on a screen that keeps changing, but zero captures means the command never observed the surface at all.
Required behavior
wait stable takes captures and compares them until the surface stops changing or its deadline expires.
- A timeout reports what it saw: the capture count and why stability was not reached, as typed details.
- If something stops captures from being taken (routing, a pending post-gesture record, a bridge preparation gate), the reason is reported, not a silent zero.
Evidence
Found while fixing the longpress flake (#2883). The worker tried wait stable as the settle step after an unsettled scroll and dropped it because of this. Reproduce with repeated wait stable calls right after a scroll down 0.75 on the Automation lab list.
Problem
wait stableon the fixture Automation lab screen (iOS Simulator, iPhone 17 Pro / iOS 26.2, AX-bridge captures) timed out with 0 captures in 15 of 16 calls on 2026-09-24. A timeout could be expected on a screen that keeps changing, but zero captures means the command never observed the surface at all.Required behavior
wait stabletakes captures and compares them until the surface stops changing or its deadline expires.Evidence
Found while fixing the longpress flake (#2883). The worker tried
wait stableas the settle step after an unsettled scroll and dropped it because of this. Reproduce with repeatedwait stablecalls right after ascroll down 0.75on the Automation lab list.