Restore launcher readiness check after boot; require dual logcat markers for launch validation - #82
Merged
mattleibow merged 5 commits intoFeb 22, 2026
Conversation
…t markers Co-authored-by: mattleibow <1096616+mattleibow@users.noreply.github.com>
…ring Co-authored-by: mattleibow <1096616+mattleibow@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Investigate issues with Android emulator app installation on macOS
Restore launcher readiness check after boot; require dual logcat markers for launch validation
Feb 22, 2026
Test Results 4 files 4 suites 22m 21s ⏱️ Results for commit 42c0919. ♻️ This comment has been updated with latest results. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
macOS CI (no KVM,
--gpu guest) fails at launch validation because removing the launcher focus check in PR #81 leftboot_completed=1+ CPU threshold as the only readiness signal — insufficient on slow emulators. The system reports "ready" while still initializing, so the test app never fully starts.Evidence from run 22268361795: boot 394s ✅, CPU 7.24 (threshold 30) ✅, install ✅, monkey launch ✅, but
E2E_APP_STARTED_SUCCESSFULLYnever appeared in logcat across 25 attempts / 10 min. Same commit on Ubuntu (KVM): marker found on attempt 2.Emulator.cs— Restore launcher readiness checkAfter
boot_completed=1, polldumpsys window displaysfor launcher focus with:--timeout— never blocks indefinitely (the hang that motivated PR Fix macOS emulator boot hang: remove launcher focus check, unify --timeout budget #81's removal)KEYCODE_BACK— handles the macOS-specific ANR focus-steal that caused the original hangrun.yml— Dual-marker launch validationRequire both markers, log each individually to reveal ordering:
E2E_APP_STARTED_SUCCESSFULLY— app-emitted markerDisplayed $TEST_APP_PACKAGE— system ActivityManager markerThis tells us definitively whether the activity displayed (system-level) vs whether the app's managed code ran to completion (app-level).
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.