[Android Bad Build] Add liveness check - #5434
Merged
Merged
Conversation
IvanBM18
approved these changes
Aug 24, 2026
IvanBM18
left a comment
Collaborator
There was a problem hiding this comment.
Thanks for looking into this, LGTM!
ViniciustCosta
approved these changes
Aug 25, 2026
Collaborator
Author
|
We had to merge this for the deployment window. Please feel free to leave comments so we can address them in a follow-up PR. |
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.
b/546076952
Problem
On Android,
check_for_bad_buildlaunches the APK viaam start, which exits with return code 0 as soon as the launch intent is delivered regardless of whether the app process survives. If the APK crashes or dies immediately on startup without generating a recognized ASan/security crash pattern in logcat,crash_result.is_crash()returnsFalse. ClusterFuzz treats the build as healthy, falsely recording fuzzing hours for dead builds.Proposed Solution
Add an Android process liveness check in
check_for_bad_build. After launching the app, verify if the package process is actually running viaandroid.adb.get_process_and_child_pids(package_name). If no active PIDs exist for the package, flagis_bad_build = Trueto halt execution before recording fuzzing hours.Testing & Validation
testcase_manager_test.pycovering both dead APK and running APK scenarios.devusing thealuminium_asan_chrome_publicjob onANDROID_EMULATOR, confirming that invalid builds are now caught and stopped atcheck_for_bad_build.