Repository navigation
Conversation
`emulator -list-avds` can print its crashdata INFO banner on stdout with exit code 0. The inventory treated every non-empty stdout line as an AVD, so a machine with zero AVDs listed a phantom emulator named after the banner. Accept only lines matching avdmanager's AVD-name grammar. Fixes callstack#3716
This branch has not been deployed
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.
Summary
agent-device deviceslisted a phantom stopped emulator whose id and name were the emulator's crashdata banner (INFO | Storing crashdata in: …).emulator -list-avdsprints that line on stdout with exit 0, andparseAndroidAvdListaccepted every non-empty line.The parser now keeps only lines made of the characters avdmanager allows in AVD names (
A-Z a-z 0-9 . _ -). That rejects emulator logging without matching its text. 2 files changed. Fixes #3716.Validation
Base
0149438fa, headb0277a7. Newinventory.test.tscases feed the real banner alone, and beside AVD names with CRLF line endings. Both fail on base with the banner listed as a device, and pass at head.pnpm check:affected --run --head b0277a7(exactCommit: true): format and lint passed. Typecheck failed attest/integration/command-coverage/declarations.ts:558(linux.gap). That failure is inherited from main and fixed by #3740. Because the runner stops there, I ran the remaining stages separately on the same diff. Layering, fallow, build and provider-integration passed. Unit passed, including everyplatform-androidtest. The only unit failures were unrelated: a parallel-load timeout that passes alone, path-with-space failures in fuzz/webdriver tests that pass from a path without a space, and smoke hitting the samelinux.gaperror.scripts/__tests__/eager-closure-budgets.test.tspassed.No live device run: this is a host-side stdout parser, and the evidence is unit tests on the real banner at the discovery boundary. Coverage and integration are left to CI.