iOS physical device over Wi‑Fi: every tap fails with "lost its transport response" while snapshots work (USB works)

Offen
#4,107 7 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
ios, node.js, typescript
Bereich
mobile-dev

Rechercherichtung

Start by tracing how press and click reach the iOS runner listener, then compare the Wi‑Fi connection failure in the runner logs with the successful USB case. The issue names no source files or tests, so locate the relevant transport entry points before making changes. Done means taps work over Wi‑Fi, or the CLI clearly reports that Wi‑Fi input is unsupported.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug ready-for-agent

Summary

On a Wi‑Fi‑paired physical iPhone, every press / click fails with Runner command "tap" lost its transport response, while open and snapshot -i work. The same device, app and env over a USB cable taps successfully on the first try.

Environment

  • agent-device 0.21.35 (global npm), Node 22
  • macOS 27, Xcode 27.0
  • iPhone 18 Pro Max, iOS 27.0.1, Developer Mode on; Mac DevToolsSecurity enabled
  • Runner signed with automatic signing via AGENT_DEVICE_IOS_TEAM_ID / AGENT_DEVICE_IOS_BUNDLE_ID
  • Device paired over Wi‑Fi (CoreDevice), unlocked

Steps

  1. agent-device open <bundle-id> --platform ios --udid <udid> --foreground → healthy 33‑node snapshot
  2. Any of: press @e33 --settle, click 'label="You"' --settle, press 377 891

Actual

Error (COMMAND_FAILED): Runner command "tap" lost its transport response and the status probe failed, so agent-device invalidated the runner session instead of replaying the command.

On retry after the restart: iOS runner was already restarted during this request and "tap" still failed…. 4/4 attempts failed; snapshots between attempts keep succeeding.

The runner log never shows the tap command starting. The runner's listener rejects the incoming connection:

nw_path_evaluator_create_flow_inner NECP_CLIENT_ACTION_ADD_FLOW <uuid> [17: File exists]
nw_endpoint_flow_setup_channel [C3 fe80::<redacted>%en0.<port> initial channel-flow (satisfied (Path is satisfied), viable, interface: en0[802.11], …)] failed to request add nexus flow
nw_connection_create_from_protocol_on_nw_queue [C3] Failed to create connection from listener

On the next runner start: tcp_output [C3:1] flags=[R.] … state=CLOSED.

Expected

Taps work over Wi‑Fi like snapshots do, or agent-device reports that the Wi‑Fi transport is unsupported for input.

Isolation

  • Connecting the same iPhone by USB (no other changes) → press @e33 --settle succeeds immediately (AGENT_DEVICE_RUNNER_COMMAND_COMPLETED command=tap ok=1).
  • A second agent-device daemon (0.21.31, embedded in another app) was running during both the Wi‑Fi failures and the USB success, so it does not appear to be the cause.

Side note

find <selector> performed a tap on the match, which surprised me — if that's intended, it might be worth calling out in help find.

Vorherrschende Sprache
TypeScript
Sterne
5.3k
Forks
377
Ø Merge
13 Std. 58 Min.
Gemergte PRs (30 T.)
654

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus callstack/agent-device

Alle Issues in callstack/agent-device

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.