Skip to content

e2e: relaunch emulator when Maestro driver fails to start - #31

Merged
tiensonqin merged 1 commit into
mainfrom
devin/android-driver-recovery
Sep 26, 2026
Merged

tiensonqin merged 1 commit into
mainfrom
devin/android-driver-recovery

Conversation

@tiensonqin

Copy link
Copy Markdown
Contributor

Summary

Main's Android e2e failed with AndroidDriverTimeoutException — the Maestro instrumentation never bound its port (adbd: failed to connect to socket 'tcp:45705' for 5+ min) while the adb channel stayed healthy.

The existing retry took the cheap recovery path — adb shell echo ok succeeded → recover_device only force-stopped dev.mobile.maestro and returned in ~4s → the retry hit the same wedged driver instantly.

Now the retry loop captures maestro output per attempt; on AndroidDriverTimeoutException / "driver did not start" it calls recover_device force, which skips the connectivity ladder and goes straight to the full emulator relaunch + app reinstall + adb reverse restore path (already written, previously only reached when adb itself was dead).

Link to Devin session: https://app.devin.ai/sessions/9a91e201984a4d4f96ce3e0f86ac6668
Open in Devin Desktop: https://app.devin.ai/desktop/session/9a91e201984a4d4f96ce3e0f86ac6668?variant=devin
Requested by: @tiensonqin

A wedged instrumentation (port never bound, adb channel healthy) took
the cheap recover path — force-stop only — so the retry failed in ~4s.
Detect AndroidDriverTimeoutException in the captured maestro output and
escalate to a full emulator relaunch instead.
@devin-ai-integration

Copy link
Copy Markdown

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

@tiensonqin
tiensonqin merged commit 1f570c3 into main Sep 26, 2026
5 checks passed
@tiensonqin
tiensonqin deleted the devin/android-driver-recovery branch September 26, 2026 15:10
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