Skip to content

fix: simplify iOS interactive snapshots#578

Merged
thymikee merged 1 commit into
mainfrom
codex/ios-snapshot-presentation
May 21, 2026
Merged

fix: simplify iOS interactive snapshots#578
thymikee merged 1 commit into
mainfrom
codex/ios-snapshot-presentation

Conversation

@thymikee
Copy link
Copy Markdown
Member

@thymikee thymikee commented May 21, 2026

Summary

Simplifies iOS interactive snapshots so table/list rows are represented once, with row-level refs instead of repeated cell/container/button/text duplicates.

Adds a modular iOS snapshot presentation pipeline, shared tree helpers, extracted repeated-nav warning logic, and docs for iOS snapshot elements. Repeated-nav warnings now require overlapping duplicate rects, reducing false positives on ordinary vertical lists. Screenshot overlay refs now use the same interactive/compact presentation path.

Fixes the React Native collapsed Open debugger to view warnings overlay case found during Expensify verification: snapshot -i now warns agents to use react-native dismiss-overlay, preserves the visible banner target instead of the full-screen wrapper, and dismisses via the narrow close affordance. Follow-up deeper RN overlay work is tracked in #577.

Review hardening: switch rows now preserve promoted identifiers, unlabeled row-sized buttons no longer win row collapse by order, and iOS keyboard suppression derives its viewport only from Application/Window nodes instead of scoped roots.

Touched-file count: 26. Scope stayed within snapshot presentation, screenshot overlay refs, RN overlay handling, tests, and docs.

Validation

Ran focused snapshot/RN/output tests: 8 files, 101 tests passed.

Ran pnpm check:quick, pnpm format, and pnpm build successfully.

Manual iOS verification covered Settings snapshots and New Expensify Dev. In Expensify, before the fix react-native dismiss-overlay reported no overlay for the visible Open debugger... banner; after the fix snapshot -i emitted the RN overlay hint, react-native dismiss-overlay tapped the close target at (369, 813), and a follow-up compact snapshot confirmed the overlay was gone.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 21, 2026

PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://callstackincubator.github.io/agent-device/pr-preview/pr-578/

Built to branch gh-pages at 2026-05-21 14:07 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@thymikee thymikee force-pushed the codex/ios-snapshot-presentation branch from c9ee8a2 to 862e775 Compare May 21, 2026 13:46
@thymikee thymikee force-pushed the codex/ios-snapshot-presentation branch from 862e775 to ea714ca Compare May 21, 2026 14:06
@thymikee thymikee merged commit 0bc1b1e into main May 21, 2026
19 checks passed
@thymikee thymikee deleted the codex/ios-snapshot-presentation branch May 21, 2026 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant