Maestro `eraseText` fails on real Android devices: `test` and `replay` cannot opt in to the test IME
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 74/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- android, typescript
Rechercherichtung
Start with packages/maestro/src/daemon-port/daemon-runtime-port.ts and src/daemon/session-lifecycle/internal/session-open-execution.ts, then trace the test and replay command entry points. Check how open --test-ime activates the helper and how shouldActivateAndroidTestIme handles real devices. Done means test and replay offer an opt-in, eraseText passes on real devices, and the device keyboard is restored while the default remains off.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
On a real Android device, a Maestro flow with eraseText fails under agent-device test --maestro:
Replay failed at step 27 (eraseText): Android text input requires provider-native text injection or the bundled test IME helper for non-ASCII/control characters; the adb-shell fallback supports ASCII text only. On emulators the test IME activates automatically; on real devices pass `open --test-ime` to enable it
The same flow passes on an emulator. ASCII inputText works on the device.
Cause
eraseText types backspace characters:
Backspace is a control character, so it needs the test IME. On real devices the test IME is opt-in through open --test-ime:
test and replay have no such flag, so a flow run on a real device never gets the test IME.
What I tried
open --test-ime --session <name>, thentest --session <name>: fails atlaunchAppwithandroid device <serial> is owned by session "<name>"- same with
replay --maestro --session <name>: same error {"testIme": true}in a config file passed throughAGENT_DEVICE_CONFIG:teststill fails with the error aboveadb shell ime setto the helper beforetest: still fails with the error above
Check with the test IME on
Local patch: shouldActivateAndroidTestIme returns true for real devices. With it, a flow with eraseText passes on the device, and the device keyboard is restored after the run.
Request
An opt-in for flow runs. The real-device default stays off, as decided in #1198. For example:
--test-imeontestandreplay- or
testImefromagent-device.jsonfor flow runs
Environment
- agent-device 0.21.14. Same gating in 0.21.15 and on
mainat 16e0757 - Pixel 8, Android 17, USB
- macOS host
- Vorherrschende Sprache
- TypeScript
- Sterne
- 4.8k
- Forks
- 315
- Ø Merge
- 11 Std. 27 Min.
- Gemergte PRs (30 T.)
- 556
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus callstack/agent-device
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
callstack/agent-device#3062 ·
Maintainer antworten meist innerhalb von 1 Tag
-
ready-for-agent
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
callstack/agent-device#2995 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
callstack/agent-device#1869 ·
Maintainer antworten meist innerhalb von 1 Tag
-
needs-triage
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
callstack/agent-device#3077 ·
Maintainer antworten meist innerhalb von 1 Tag
-
needs-triage
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 68/100
callstack/agent-device#3076 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in callstack/agent-device
Ähnliche Issues
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
lichess-org/api#678 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
PostHog/posthog.com#20628 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug status:Needs Triage
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 92/100
jupyterlab/jupyterlab#19964 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
agentscope-ai/QwenPaw#8064 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
area: notebooks-jupyter bug theme: new notebook frontend
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
posit-dev/positron#16347 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag