Skip to content

MM-008 make Android device selection explicit - #8

Draft
himattm wants to merge 1 commit into
agent/mm-005-lock-version-probefrom
agent/mm-008-report-device-identity
Draft

MM-008 make Android device selection explicit#8
himattm wants to merge 1 commit into
agent/mm-005-lock-version-probefrom
agent/mm-008-report-device-identity

Conversation

@himattm

@himattm himattm commented Jul 17, 2026

Copy link
Copy Markdown
Owner

What changed

Make --device the primary Android selector while retaining --serial compatibility and ANDROID_SERIAL. Add active-profile android_device resolution, reject ambiguous multi-device defaults before capture, query model/API through ADB, and attach serial, model, API level, and selection source to guarded results and doctor checks.

Why

Two ready devices passed preflight and failed later through ambiguous bare ADB calls. Successful results also did not identify which emulator or phone produced them.

Impact

Multi-device runs require an intentional target, single-device defaults remain convenient, and every successful result is auditable to a concrete device.

Validation

  • No-device to single-device transition
  • Two-device ambiguity and explicit --device selection
  • Active-profile device selection
  • Legacy --serial and environment coverage
  • ADB identity unit tests
  • Live API 36 GetGoing layout: emulator-5554, API 36, 56 elements
  • Full workspace tests, Clippy, formatting, and binary build

Stack

Depends on #7; base branch: agent/mm-005-lock-version-probe.

Reproduction: two ready devices passed layout preflight and failed later through ambiguous bare ADB calls, while successful single-device results omitted the serial, model, and API used.

Make --device the primary selector with --serial compatibility, resolve android_device from the active profile, reject ambiguous defaults before capture, read stable ADB identity properties, and attach selection metadata to every guarded result and doctor check.

Verified with no-device-to-single-device, two-device ambiguity, explicit and config selection contracts, legacy serial coverage, ADB identity units, a live API 36 GetGoing layout smoke test, cargo test --workspace, Clippy with warnings denied, formatting checks, and the minimap binary build.
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