Skip to content

iOS test-app Form screen: scroll-inert to synthetic gestures and recurring slow-AX deferral #1542

Description

@thymikee

Two pre-existing main defects found while producing the #1536 live test-app:replay:ios evidence, both attribution-tested byte-identical on a pre-stack main binary (same simulator, same minutes), so unrelated to the #1478 stack:

1. The Form screen does not respond to synthetic scrolls at all. examples/test-app/replays/checkout-form.ad fails at click id="shipping-pickup" ("resolved to an off-screen element"). Probing interactively on iPhone 17 Pro / iOS 26.2: scroll down 0.6/0.9 and gesture pan 200 600 0 -500 400 all report success but the ScrollView content does not move (snapshot before/after identical; verified with real click probes, not get attrs, which also matches off-screen elements). The screen recently gained the "Android IME capture" section, pushing Delivery/checkbox/submit below the fold, so the fixture now depends on scrolling that doesn't work. Note the replay pan executes degenerately fast (~288ms wall for a 400ms-duration pan), and interactively a negative-dy pan reports to: {x:200, y:100} yet content stays put — possibly the drag lands on an editable field (text-selection semantics) or the pan synthesis releases early; relates to the known iOS scroll-landing weakness (#1366 discussion).

2. Recurring slow-AX deferral wedge on the same screen (the #1105 family): after one open/close cycle the daemon reports "No snapshot backend could read this screen (XCTest-backed snapshot tiers were deferred after recent slow accessibility work on this screen)" and react-native dismiss-overlay fails with "accessibility tree is unreadable" — checkout-form.ad then dies at step 2 in ~2.8s. A simulator shutdown/boot clears it for exactly one run.

Repro for both: pnpm build && pnpm clean:daemon && node bin/agent-device.mjs test examples/test-app/replays/checkout-form.ad --platform ios — first run after sim boot fails at step 11 (defect 1); second run fails at step 2 (defect 2).

Until fixed, iOS test-app:replay evidence for the #1478 stack covers gesture-lab.ad (passing) with checkout-form.ad documented as residual risk. Also worth noting for P5 planning: this corpus is the prescribed live evidence for the ad-replay extraction, so these defects sit on P5's critical path too.

Refs #1478

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions