[INFO] fetching crate android-doctor 0.5.1...
[INFO] testing android-doctor-0.5.1 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate android-doctor 0.5.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate android-doctor 0.5.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate android-doctor 0.5.1
[INFO] tweaked toml for crates.io crate android-doctor 0.5.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate android-doctor 0.5.1 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate android-doctor 0.5.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ppmd-rust v1.5.0
[INFO] [stderr]   Downloaded lzma-rust2 v0.21.0
[INFO] [stderr]   Downloaded doctor-kit v0.2.2
[INFO] [stderr]   Downloaded reedline v0.40.0
[INFO] [stderr]   Downloaded indoc v2.0.8
[INFO] [stderr]   Downloaded pest_derive v2.9.3
[INFO] [stderr]   Downloaded pest_generator v2.9.3
[INFO] [stderr]   Downloaded pest_meta v2.9.3
[INFO] [stderr]   Downloaded pest v2.9.3
[INFO] [stderr]   Downloaded doctor-core v0.1.0
[INFO] [stderr]   Downloaded lzma-rs v0.3.0
[INFO] [stderr]   Downloaded am-fs-erofs v0.3.0
[INFO] [stderr]   Downloaded am-fs-core v0.2.23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047
[INFO] running `Command { std: "docker" "start" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.190
[INFO] [stderr]    Compiling unicode-ident v1.0.26
[INFO] [stderr]    Compiling cfg-if v1.0.5
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling thiserror v2.0.21
[INFO] [stderr]    Compiling log v0.4.34
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.14
[INFO] [stderr]    Compiling smallvec v1.16.2
[INFO] [stderr]    Compiling rustix v1.1.5
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling pkg-config v0.3.34
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling zerocopy v0.8.59
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling time-core v0.1.9
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling crc32fast v1.5.2
[INFO] [stderr]    Compiling indoc v2.0.8
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling powerfmt v0.2.1
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling syn v3.0.6
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling simd-adler32 v0.3.10
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling line-clipping v0.3.8
[INFO] [stderr]    Compiling lru v0.18.5
[INFO] [stderr]    Compiling indexmap v2.14.2
[INFO] [stderr]    Compiling twox-hash v2.1.5
[INFO] [stderr]    Compiling zstd-safe v7.3.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling jobserver v0.1.35
[INFO] [stderr]    Compiling miniz_oxide v0.9.1
[INFO] [stderr]    Compiling crc32c v0.6.8
[INFO] [stderr]    Compiling cc v1.6.0
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling num-integer v0.1.47
[INFO] [stderr]    Compiling anyhow v1.0.104
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling vte v0.14.1
[INFO] [stderr]    Compiling time v0.3.55
[INFO] [stderr]    Compiling inout v0.2.2
[INFO] [stderr]    Compiling spki v0.7.3
[INFO] [stderr]    Compiling portable-atomic v1.15.0
[INFO] [stderr]    Compiling alloc-no-stdlib v3.0.0
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling crc-catalog v2.5.0
[INFO] [stderr]    Compiling spin v0.9.9
[INFO] [stderr]    Compiling zlib-rs v0.6.8
[INFO] [stderr]    Compiling num-bigint-dig v0.8.6
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling clap_lex v1.1.1
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling lazy_static v1.5.1
[INFO] [stderr]    Compiling clap_builder v4.6.7
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling pkcs8 v0.10.2
[INFO] [stderr]    Compiling alloc-stdlib v0.3.0
[INFO] [stderr]    Compiling cipher v0.5.2
[INFO] [stderr]    Compiling strip-ansi-escapes v0.2.1
[INFO] [stderr]    Compiling num-iter v0.1.46
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling hmac v0.13.0
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling bumpalo v3.20.3
[INFO] [stderr]    Compiling cpubits v0.1.1
[INFO] [stderr]    Compiling libbz2-rs-sys v0.2.5
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling darling_core v0.24.1
[INFO] [stderr]    Compiling zopfli v0.8.3
[INFO] [stderr]    Compiling zstd-sys v2.1.0+zstd.1.5.7
[INFO] [stderr]    Compiling bzip2 v0.6.1
[INFO] [stderr]    Compiling android-doctor v0.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling lzma-rs v0.3.0
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling prost-derive v0.14.4
[INFO] [stderr]    Compiling aes v0.9.3
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling clap_derive v4.6.7
[INFO] [stderr]    Compiling flate2 v1.1.10
[INFO] [stderr]    Compiling pbkdf2 v0.13.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling brotli-decompressor v6.0.1
[INFO] [stderr]    Compiling pkcs1 v0.7.5
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling lzma-rust2 v0.16.5
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling ratatui-core v0.1.2
[INFO] [stderr]    Compiling rand v0.8.8
[INFO] [stderr]    Compiling darling_macro v0.24.1
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling console v0.16.6
[INFO] [stderr]    Compiling darling v0.24.1
[INFO] [stderr]    Compiling instability v0.3.14
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling ruzstd v0.8.3
[INFO] [stderr]    Compiling sha1 v0.11.0
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling clap v4.6.7
[INFO] [stderr]    Compiling unit-prefix v0.5.2
[INFO] [stderr]    Compiling lz4_flex v0.11.6
[INFO] [stderr]    Compiling am-fs-core v0.2.23
[INFO] [stderr]    Compiling typed-path v0.12.3
[INFO] [stderr]    Compiling ppmd-rust v1.5.0
[INFO] [stderr]    Compiling owo-colors v4.4.0
[INFO] [stderr]    Compiling deflate64 v0.1.12
[INFO] [stderr]    Compiling prost v0.14.4
[INFO] [stderr]    Compiling brotli v9.0.0
[INFO] [stderr]    Compiling indicatif v0.18.6
[INFO] [stderr]    Compiling ratatui-widgets v0.3.2
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.2
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling tar v0.4.46
[INFO] [stderr]    Compiling lzma-rust2 v0.21.0
[INFO] [stderr]    Compiling lz4_flex v0.14.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling ratatui-macros v0.7.2
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling ratatui v0.30.2
[INFO] [stderr]    Compiling doctor-core v0.1.0
[INFO] [stderr]    Compiling am-fs-erofs v0.3.0
[INFO] [stderr]    Compiling rsa v0.9.10
[INFO] [stderr]    Compiling ruzstd v0.9.0
[INFO] [stderr]    Compiling md-5 v0.11.0
[INFO] [stderr]    Compiling reedline v0.40.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling doctor-kit v0.2.2
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling zip v8.6.0
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 3m 34s
[INFO] running `Command { std: "docker" "inspect" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.8
[INFO] [stderr]    Compiling num-bigint-dig v0.8.6
[INFO] [stderr]    Compiling rsa v0.9.10
[INFO] [stderr]    Compiling android-doctor v0.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 56s
[INFO] running `Command { std: "docker" "inspect" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.37s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/android_doctor-086961e029193214)
[INFO] [stdout] 
[INFO] [stdout] running 568 tests
[INFO] [stdout] test amlogic::tests::a_truncated_file_is_an_error_not_a_panic ... ok
[INFO] [stdout] test amlogic::tests::a_wrong_magic_is_refused ... ok
[INFO] [stdout] test amlogic::tests::an_align_size_smaller_than_the_header_is_refused ... ok
[INFO] [stdout] test amlogic::tests::a_valid_header_parses_and_accounts_for_the_whole_file ... ok
[INFO] [stdout] test amlogic::tests::a_gzip_wrapped_container_is_read_through_the_gzip ... ok
[INFO] [stdout] test apk::tests::an_apk_with_no_manifest_still_parses_without_error ... ok
[INFO] [stdout] test apk::tests::a_malformed_certificate_does_not_panic_and_yields_no_signers ... ok
[INFO] [stdout] test apk::tests::a_v2_signed_apk_is_not_v1_only_and_a_clean_one_has_no_findings ... ok
[INFO] [stdout] test amlogic::tests::a_lying_size_is_refused_rather_than_trusted ... ok
[INFO] [stdout] test amlogic::tests::a_high_entropy_payload_is_reported_as_encrypted ... ok
[INFO] [stdout] test apk::tests::a_v1_only_apk_is_flagged ... ok
[INFO] [stdout] test apk::tests::debuggable_is_high_and_false_is_clean ... ok
[INFO] [stdout] test apk::tests::exported_component_guards_do_not_fire ... ok
[INFO] [stdout] test apk::tests::a_file_that_is_not_a_zip_is_reported_not_panicked_on ... ok
[INFO] [stdout] test apk::tests::intent_filter_actions_categories_and_data_are_extracted ... ok
[INFO] [stdout] test apk::tests::cleartext_is_medium_and_only_when_explicitly_true ... ok
[INFO] [stdout] test apk::tests::allow_backup_true_is_info_and_false_or_absent_is_clean ... ok
[INFO] [stdout] test apk::tests::a_certificate_not_yet_valid_is_flagged ... ok
[INFO] [stdout] test amlogic::tests::a_low_entropy_payload_is_not_called_encrypted ... ok
[INFO] [stdout] test apk::tests::implicit_export_follows_the_documented_defaults_one_level_lower ... ok
[INFO] [stdout] test apk::tests::utf8_flagged_string_pool_is_read_correctly ... ok
[INFO] [stdout] test amlogic::tests::the_real_device_tree_is_recognised_and_reported_encrypted ... ok
[INFO] [stdout] test apk::tests::exported_provider_without_permission_is_high ... ok
[INFO] [stdout] test apk::tests::an_expired_certificate_is_flagged_against_the_given_clock ... ok
[INFO] [stdout] test apk::tests::shared_user_id_is_medium_and_absent_is_clean ... ok
[INFO] [stdout] test apk::tests::exported_component_without_permission_is_medium ... ok
[INFO] [stdout] test apk::tests::only_a_typed_boolean_counts_not_a_string_or_a_foreign_attribute ... ok
[INFO] [stdout] test apk::tests::an_aosp_test_key_is_flagged_as_a_weak_signing_cert ... ok
[INFO] [stdout] test apk::tests::many_issues_are_all_reported_with_a_cap_on_the_component_list ... ok
[INFO] [stdout] test apk::tests::validity_times_parse_both_encodings_and_reject_junk ... ok
[INFO] [stdout] test apk::tests::an_apk_is_parsed_rather_than_reported_unreadable ... ok
[INFO] [stdout] test audit::tests::a_locked_build_has_no_findings_but_a_clear_adb_summary ... ok
[INFO] [stdout] test audit::tests::a_property_set_twice_is_listed_for_each_file_once ... ok
[INFO] [stdout] test apk::tests::test_only_is_medium_and_false_is_clean ... ok
[INFO] [stdout] test audit::tests::a_read_error_names_the_file ... ok
[INFO] [stdout] test apk::tests::the_android_debug_cert_is_flagged_for_both_schemes ... ok
[INFO] [stdout] test archive::tests::a_failed_extraction_leaves_no_staging_directory ... ok
[INFO] [stdout] test apk::tests::launcher_activity_is_not_flagged_but_other_exported_activity_is ... ok
[INFO] [stdout] test audit::tests::apk_signing_posture_becomes_findings_with_build_aware_severity ... ok
[INFO] [stdout] test audit::tests::apk_manifest_issues_become_findings_json_and_remedies ... ok
[INFO] [stdout] test archive::tests::a_jios_tb_tar_md5_is_verified_then_extracted ... ok
[INFO] [stdout] test archive::tests::a_tar_md5_that_does_not_match_is_refused ... ok
[INFO] [stdout] test audit::tests::content_findings_are_collected ... ok
[INFO] [stdout] test archive::tests::a_device_entry_is_refused ... ok
[INFO] [stdout] test audit::tests::images_are_collected_from_files_and_directories ... ok
[INFO] [stdout] test audit::tests::no_properties_is_reported_as_unknown_not_as_secure ... ok
[INFO] [stdout] test archive::tests::a_gzip_wrapped_tar_round_trips ... ok
[INFO] [stdout] test archive::tests::a_plain_tar_round_trips ... ok
[INFO] [stdout] test archive::tests::an_entry_that_climbs_out_is_refused ... ok
[INFO] [stdout] test audit::tests::init_services_are_parsed_with_their_options ... ok
[INFO] [stdout] test audit::tests::risky_properties_become_findings_with_the_file_named ... ok
[INFO] [stdout] test audit::tests::service_findings_distinguish_adbd_su_and_shell ... ok
[INFO] [stdout] test audit::tests::only_small_text_files_are_read ... ok
[INFO] [stdout] test audit::tests::setuid_files_world_writable_files_and_capabilities_are_listed ... ok
[INFO] [stdout] test audit::tests::json_and_text_carry_everything ... ok
[INFO] [stdout] test audit::tests::the_number_and_size_of_text_files_read_is_bounded ... ok
[INFO] [stdout] test audit::tests::su_binaries_are_found_by_name_directory_and_label ... ok
[INFO] [stdout] test audit::tests::the_write_bits_are_told_apart ... ok
[INFO] [stdout] test audit::tests::long_lists_are_capped_in_text_and_complete_in_json ... ok
[INFO] [stdout] test avb::tests::a_changed_byte_breaks_the_digest ... ok
[INFO] [stdout] test avb::tests::a_slot_suffixed_file_name_finds_its_descriptor ... ok
[INFO] [stdout] test avb::tests::an_unsigned_image_has_no_digest_and_flags_are_named ... ok
[INFO] [stdout] test apk::tests::hostile_manifests_never_panic_or_hang ... ok
[INFO] [stdout] test avb::tests::a_vbmeta_with_no_flags_has_no_security_states ... ok
[INFO] [stdout] test avb::tests::an_unsigned_block_has_no_signature_check ... ok
[INFO] [stdout] test avb::tests::an_unsupported_algorithm_reports_not_checked ... ok
[INFO] [stdout] test avb::tests::findings_are_included_in_json_output ... ok
[INFO] [stdout] test avb::tests::allows_rollback_flag_produces_unlocked_device_finding ... ok
[INFO] [stdout] test avb::tests::findings_are_included_in_text_output ... ok
[INFO] [stdout] test avb::tests::an_unsigned_partition_footer_is_informational_but_an_unsigned_vbmeta_is_high ... ok
[INFO] [stdout] test avb::tests::an_unsigned_image_with_clean_flags_still_produces_a_finding ... ok
[INFO] [stdout] test avb::tests::hostile_headers_are_refused_with_a_reason ... ok
[INFO] [stdout] test avb::tests::json_and_text_carry_the_main_fields ... ok
[INFO] [stdout] test avb::tests::an_unsupported_algorithm_is_not_a_failure ... ok
[INFO] [stdout] test avb::tests::cross_check_chained_detects_downgrade_in_rollback_index ... ok
[INFO] [stdout] test audit::tests::every_tree_command_refuses_a_fifo_at_once_instead_of_blocking ... ok
[INFO] [stdout] test avb::tests::an_unsigned_footer_on_a_chained_partition_is_still_high ... ok
[INFO] [stdout] test avb::tests::cross_check_chained_no_findings_when_indices_match_or_exceed ... ok
[INFO] [stdout] test avb::tests::malformed_descriptors_are_refused ... ok
[INFO] [stdout] test avb::tests::parses_every_descriptor_kind ... ok
[INFO] [stdout] test avb::tests::partition_hashes_are_checked_against_the_descriptors ... ok
[INFO] [stdout] test avb::tests::sha512_algorithms_use_a_64_byte_digest ... ok
[INFO] [stdout] test apk::tests::a_truncated_or_corrupt_signing_block_never_panics ... ok
[INFO] [stdout] test avb::tests::verification_disabled_produces_a_high_severity_finding ... ok
[INFO] [stdout] test bootimg::tests::a_vendor_table_longer_than_one_page_pushes_the_bootconfig_back ... ok
[INFO] [stdout] test bootimg::tests::a_section_that_runs_past_the_file_is_an_error_at_every_cut ... ok
[INFO] [stdout] test bootimg::tests::a_directory_and_a_missing_path_get_clear_errors ... ok
[INFO] [stdout] test avb::tests::rollback_index_interpretation_reports_nonzero_index ... ok
[INFO] [stdout] test avb::tests::rollback_index_interpretation_reports_zero_index ... ok
[INFO] [stdout] test bootimg::tests::header_values_are_decoded ... ok
[INFO] [stdout] test bootimg::tests::hostile_vendor_tables_are_rejected ... ok
[INFO] [stdout] test bootimg::tests::a_failed_write_leaves_no_part_files ... ok
[INFO] [stdout] test bootimg::tests::bad_boot_headers_are_rejected_with_a_reason ... ok
[INFO] [stdout] test bootimg::tests::os_version_and_patch_level_decode_like_aosp ... ok
[INFO] [stdout] test bootimg::tests::every_boot_header_version_finds_every_section ... ok
[INFO] [stdout] test bootimg::tests::a_fifo_is_refused_at_once_instead_of_blocking ... ok
[INFO] [stdout] test bootimg::tests::planted_symlinks_are_not_written_through ... ok
[INFO] [stdout] test bootimg::tests::sections_that_overflow_or_run_off_the_file_are_named_in_the_error ... ok
[INFO] [stdout] test bootimg::tests::parse_alone_leaves_formats_out_of_the_output ... ok
[INFO] [stdout] test bootimg::tests::huge_sizes_cannot_overflow_the_layout ... ok
[INFO] [stdout] test bootimg::tests::the_vendor_table_entry_limit_is_the_literal_4096 ... ok
[INFO] [stdout] test bootimg::tests::v3_and_v4_headers_decode_the_os_version_from_their_own_field ... ok
[INFO] [stdout] test bootimg::tests::text_and_json_rendering ... ok
[INFO] [stdout] test avb::tests::reads_a_padded_vbmeta_image_and_a_partition_with_a_footer ... ok
[INFO] [stdout] test bootimg::tests::sections_with_no_data_are_omitted_and_pages_are_respected ... ok
[INFO] [stdout] test bootimg::tests::vendor_boot_v3_has_one_ramdisk_and_a_dtb ... ok
[INFO] [stdout] test bootimg::tests::vendor_boot_v4_has_a_table_of_ramdisks_and_a_bootconfig ... ok
[INFO] [stdout] test bootimg::tests::vendor_boot_page_sizes_other_than_4096_work ... ok
[INFO] [stdout] test bootimg::tests::read_labels_every_section_with_what_it_looks_like ... ok
[INFO] [stdout] test bootimg::tests::no_truncation_of_any_image_panics ... ok
[INFO] [stdout] test bsdiff::tests::an_extra_only_patch_reproduces_the_output ... ok
[INFO] [stdout] test bsdiff::tests::a_patch_reading_past_the_source_is_refused ... ok
[INFO] [stdout] test bsdiff::tests::corrupt_bzip2_blocks_are_an_error ... ok
[INFO] [stdout] test bsdiff::tests::diff_and_extra_interleave_in_one_control_triple ... ok
[INFO] [stdout] test ci::tests::a_quote_in_the_path_is_escaped_and_hostile_values_are_refused ... ok
[INFO] [stdout] test bsdiff::tests::an_implausible_output_size_is_refused_without_allocating ... ok
[INFO] [stdout] test ci::tests::the_workflow_has_the_exact_expected_structure ... ok
[INFO] [stdout] test ci::tests::nothing_is_written_through_a_symlink ... ok
[INFO] [stdout] test ci::tests::write_creates_dirs_refuses_to_overwrite_and_force_replaces ... ok
[INFO] [stdout] test bsdiff::tests::a_truncated_patch_is_an_error_not_a_panic ... ok
[INFO] [stdout] test bsdiff::tests::a_bad_magic_is_refused ... ok
[INFO] [stdout] test bootimg::tests::writing_sections_produces_the_right_files_and_refuses_to_overwrite ... ok
[INFO] [stdout] test bsdiff::tests::a_patch_that_overruns_the_declared_size_is_refused ... ok
[INFO] [stdout] test bsdiff::tests::a_diff_patch_adds_source_bytes ... ok
[INFO] [stdout] test bsdiff::tests::a_negative_seek_in_z_is_honoured ... ok
[INFO] [stdout] test content::tests::cloud_credentials_fires_on_aws_key_id_and_not_on_short_or_lowercase ... ok
[INFO] [stdout] test content::tests::debug_endpoints_fires_on_adb_tcpip_and_jtag_but_not_on_clean_text ... ok
[INFO] [stdout] test content::tests::hardcoded_credentials_fires_on_private_key_markers_and_not_on_clean_text ... ok
[INFO] [stdout] test content::tests::multiple_rules_fire_independently ... ok
[INFO] [stdout] test detect::tests::a_damaged_zip_is_still_a_zip_with_a_note ... ok
[INFO] [stdout] test detect::tests::cpio_legacy_lz4_and_amlogic_magics ... ok
[INFO] [stdout] test detect::tests::erofs_is_recognised_by_its_magic_at_1024 ... ok
[INFO] [stdout] test detect::tests::a_unix_socket_is_refused_with_the_same_clear_message ... ok
[INFO] [stdout] test detect::tests::anything_else_is_not_recognised ... ok
[INFO] [stdout] test detect::tests::character_devices_and_missing_paths_still_behave ... ok
[INFO] [stdout] test detect::tests::f2fs_needs_the_full_four_bytes_at_the_right_offset ... ok
[INFO] [stdout] test detect::tests::every_ext4_feature_bit_alone_makes_ext4_and_classic_bits_do_not ... ok
[INFO] [stdout] test detect::tests::every_magic_maps_to_its_id ... ok
[INFO] [stdout] test detect::tests::f2fs_sniffs_to_the_f2fs_id ... ok
[INFO] [stdout] test detect::tests::ext_family_is_told_apart_by_feature_flags ... ok
[INFO] [stdout] test detect::tests::a_fifo_is_refused_at_once_instead_of_blocking ... ok
[INFO] [stdout] test detect::tests::f2fs_is_recognised_by_its_magic_in_the_superblock ... ok
[INFO] [stdout] test detect::tests::files_on_disk_are_read_from_the_start_and_short_files_are_fine ... ok
[INFO] [stdout] test detect::tests::directories_and_files_on_disk ... ok
[INFO] [stdout] test detect::tests::filesystems_keep_their_specific_ids ... ok
[INFO] [stdout] test detect::tests::near_misses_are_not_recognised ... ok
[INFO] [stdout] test detect::tests::no_input_length_can_panic ... ok
[INFO] [stdout] test detect::tests::the_journal_flag_is_0x4_and_ext_attr_0x8_is_not_a_journal ... ok
[INFO] [stdout] test doctor::quality_tests::a_normal_file_merely_starting_with_test_is_not_flagged ... ok
[INFO] [stdout] test doctor::quality_tests::a_duplicate_service_is_reported ... ok
[INFO] [stdout] test doctor::quality_tests::a_property_defined_once_is_not_reported ... ok
[INFO] [stdout] test doctor::quality_tests::a_leftover_test_file_is_reported_and_a_normal_file_is_not ... ok
[INFO] [stdout] test detect::tests::no_input_length_makes_sniff_panic ... ok
[INFO] [stdout] test detect::tests::the_name_never_matters_only_the_bytes ... ok
[INFO] [stdout] test doctor::quality_tests::a_property_defined_twice_is_reported ... ok
[INFO] [stdout] test doctor::quality_tests::an_image_with_no_labels_reports_unknown_rather_than_clean ... ok
[INFO] [stdout] test doctor::tests::coverage_with_expected_images_has_no_error_severity ... ok
[INFO] [stdout] test detect::tests::pac_files_are_recognised_by_extension_and_structure ... ok
[INFO] [stdout] test dt::tests::a_cell_property_renders_as_hex_cells ... ok
[INFO] [stdout] test doctor::tests::no_images_at_all_is_an_error ... ok
[INFO] [stdout] test dt::tests::a_bad_magic_is_refused ... ok
[INFO] [stdout] test dt::tests::a_dtbo_table_parses_its_entries ... ok
[INFO] [stdout] test dt::tests::a_lying_totalsize_is_refused ... ok
[INFO] [stdout] test dt::tests::a_malformed_dtbo_is_refused_without_panicking ... ok
[INFO] [stdout] test doctor::tests::directories_are_not_unhandled_input ... ok
[INFO] [stdout] test doctor::tests::unhandled_input_fires_for_unknown_files ... ok
[INFO] [stdout] test doctor::tests::scan_emits_findings_when_no_vbmeta_present ... ok
[INFO] [stdout] test dt::tests::a_gzip_wrapped_image_is_described_by_what_it_holds ... ok
[INFO] [stdout] test doctor::tests::transfer_list_partitions_count_as_present ... ok
[INFO] [stdout] test detect::tests::zips_are_told_apart_by_their_contents ... ok
[INFO] [stdout] test dt::tests::a_valid_fdt_parses_its_properties ... ok
[INFO] [stdout] test elf::tests::a_broken_elf_in_the_tree_is_reported_not_fatal ... ok
[INFO] [stdout] test elf::tests::a_missing_gnu_stack_is_exec_stack_on_an_executable_only ... ok
[INFO] [stdout] test dt::tests::a_truncated_fdt_is_an_error_not_a_panic ... ok
[INFO] [stdout] test dt::tests::a_string_property_renders_as_a_quoted_string ... ok
[INFO] [stdout] test dt::tests::an_unrecognised_container_is_described_rather_than_guessed ... ok
[INFO] [stdout] test elf::tests::the_unhardened_executable_trips_every_rule ... ok
[INFO] [stdout] test elf::tests::each_rule_fires_alone ... ok
[INFO] [stdout] test elf::tests::the_tree_scan_reads_only_candidates_and_aggregates_findings ... ok
[INFO] [stdout] test elf::tests::thirty_two_bit_and_big_endian_are_read ... ok
[INFO] [stdout] test erofsfs::tests::all_zero_chunks_are_not_written ... ok
[INFO] [stdout] test elf::tests::the_hardened_object_trips_none ... ok
[INFO] [stdout] test elf::tests::no_dynamic_section_is_not_judged_for_canary_or_fortify ... ok
[INFO] [stdout] test erofsfs::tests::a_directory_loop_is_refused ... ok
[INFO] [stdout] test erofsfs::tests::cat_refuses_what_is_not_a_file ... ok
[INFO] [stdout] test elf::tests::non_executables_are_skipped_and_non_elf_is_refused ... ok
[INFO] [stdout] test erofsfs::tests::lists_the_whole_tree_with_metadata ... ok
[INFO] [stdout] test erofsfs::tests::path_lookup_and_listing_do_not_follow_symlinks ... ok
[INFO] [stdout] test erofsfs::tests::reading_data_of_something_that_is_not_a_file_is_refused ... ok
[INFO] [stdout] test erofsfs::tests::size_limits_are_enforced ... ok
[INFO] [stdout] test erofsfs::tests::refuses_bad_images_clearly ... ok
[INFO] [stdout] test erofsfs::tests::a_trailing_stretch_of_zeros_keeps_the_file_length ... ok
[INFO] [stdout] test audit::tests::an_f2fs_image_is_read_and_audited_like_any_other ... ok
[INFO] [stdout] test ext4fs::tests::a_directory_that_contains_itself_is_a_loop ... ok
[INFO] [stdout] test ext4fs::tests::a_128_byte_inode_has_no_in_inode_attributes_and_does_not_panic ... ok
[INFO] [stdout] test erofsfs::tests::walk_limits_are_enforced ... ok
[INFO] [stdout] test elf::tests::hostile_and_truncated_files_never_panic ... ok
[INFO] [stdout] test ext4fs::tests::a_two_level_extent_tree_is_followed_and_bad_trees_are_refused ... ok
[INFO] [stdout] test ext4fs::tests::an_absurd_file_size_is_refused_without_reading ... ok
[INFO] [stdout] test ext4fs::tests::case_collisions_follow_the_policy ... ok
[INFO] [stdout] test ext4fs::tests::a_file_with_a_trailing_hole_keeps_its_length_and_hash ... ok
[INFO] [stdout] test ext4fs::tests::a_60_byte_symlink_is_read_from_its_block_not_the_inode ... ok
[INFO] [stdout] test ext4fs::tests::cat_handles_trailing_holes_unwritten_extents_and_refuses_non_files ... ok
[INFO] [stdout] test ext4fs::tests::cat_stops_cleanly_when_the_reader_goes_away ... ok
[INFO] [stdout] test ext4fs::tests::cat_returns_the_exact_bytes_including_holes ... ok
[INFO] [stdout] test ext4fs::tests::data_beyond_a_truncated_image_is_an_error ... ok
[INFO] [stdout] test erofsfs::tests::a_file_with_zero_stretches_extracts_to_the_exact_bytes ... ok
[INFO] [stdout] test ext4fs::tests::directory_entries_that_point_nowhere_or_are_malformed_are_refused ... ok
[INFO] [stdout] test ext4fs::tests::extended_attribute_damage_is_reported_and_unknown_blocks_are_ignored ... ok
[INFO] [stdout] test ext4fs::tests::extents_128_byte_inodes ... ok
[INFO] [stdout] test ext4fs::tests::extents_256_byte_inodes ... ok
[INFO] [stdout] test ext4fs::tests::classic_block_map_256_byte_inodes ... ok
[INFO] [stdout] test ext4fs::tests::group_table_and_64bit_descriptors_are_checked ... ok
[INFO] [stdout] test ext4fs::tests::hardlinked_names_are_one_file_on_disk ... ok
[INFO] [stdout] test erofsfs::tests::extracts_exact_bytes_and_a_manifest ... ok
[INFO] [stdout] test ext4fs::tests::classic_block_map_128_byte_inodes ... ok
[INFO] [stdout] test ext4fs::tests::hardlinks_share_content_and_zero_mode_files_stay_readable ... ok
[INFO] [stdout] test ext4fs::tests::extract_trees_writes_each_ext_image_and_leaves_other_images_alone ... ok
[INFO] [stdout] test ext4fs::tests::list_dir_lists_one_level_or_the_file_itself ... ok
[INFO] [stdout] test ext4fs::tests::lookup_resolves_paths_without_following_symlinks ... ok
[INFO] [stdout] test ext4fs::tests::overlapping_or_unordered_extents_are_refused ... ok
[INFO] [stdout] test ext4fs::tests::owner_ids_use_the_high_halves ... ok
[INFO] [stdout] test ext4fs::tests::unwritten_extents_read_as_zeros_even_when_the_blocks_hold_data ... ok
[INFO] [stdout] test ext4fs::tests::three_case_variants_get_numbered_names ... ok
[INFO] [stdout] test ext4fs::tests::size_limits_are_enforced_per_file_and_in_total ... ok
[INFO] [stdout] test extract::tests::a_compressed_tar_name_loses_its_suffixes_to_become_the_directory_name ... ok
[INFO] [stdout] test ext4fs::tests::refuses_bad_images_clearly ... ok
[INFO] [stdout] test ext4fs::tests::xattrs_from_the_inode_and_from_a_block ... ok
[INFO] [stdout] test extract::tests::a_partition_or_unknown_file_is_not_scaffolding ... ok
[INFO] [stdout] test extract::tests::a_corrupt_piece_in_a_zip_fails_the_partition_cleanly ... ok
[INFO] [stdout] test extract::tests::a_refused_run_writes_nothing_new ... ok
[INFO] [stdout] test extract::tests::a_piece_read_error_after_the_consumer_finished_is_not_reported_as_success_or_truncation ... ok
[INFO] [stdout] test extract::tests::a_gzip_image_that_is_not_a_tar_is_copied_unchanged_and_the_run_continues ... ok
[INFO] [stdout] test erofsfs::tests::every_compression_and_index_format_reads_back ... ok
[INFO] [stdout] test extract::tests::a_super_partition_that_collides_with_an_extracted_image_is_not_overwritten ... ok
[INFO] [stdout] test extract::tests::a_symlink_named_like_an_output_counts_as_existing ... ok
[INFO] [stdout] test extract::tests::a_tar_gz_in_an_update_is_unpacked_into_a_directory_of_its_stem ... ok
[INFO] [stdout] test ext4fs::tests::an_extent_past_the_image_or_out_of_order_is_an_error ... ok
[INFO] [stdout] test ext4fs::tests::device_numbers_are_decoded_for_both_encodings ... ok
[INFO] [stdout] test extract::tests::a_super_empty_image_never_overwrites_the_partitions_built_from_the_update ... ok
[INFO] [stdout] test extract::tests::a_trailing_comma_in_only_is_rejected_not_ignored ... ok
[INFO] [stdout] test extract::tests::a_whole_data_file_wins_over_pieces ... ok
[INFO] [stdout] test extract::tests::a_super_image_is_split_into_its_partitions_and_the_images_after_it_are_written ... ok
[INFO] [stdout] test extract::tests::allow_partial_succeeds_but_still_reports_the_unhandled_file ... ok
[INFO] [stdout] test extract::tests::data_files_orders_pieces_numerically_and_reports_compression ... ok
[INFO] [stdout] test extract::tests::allow_partial_silences_the_skip_error ... ok
[INFO] [stdout] test extract::tests::a_tar_md5_update_is_unpacked_rather_than_copied ... ok
[INFO] [stdout] test extract::tests::an_unknown_top_level_file_fails_the_run_and_scaffolding_does_not ... ok
[INFO] [stdout] test extract::tests::a_tar_md5_whose_body_was_edited_is_refused ... ok
[INFO] [stdout] test extract::tests::existing_output_is_refused_without_force_and_replaced_with_it ... ok
[INFO] [stdout] test extract::tests::extract_all_tracked_reports_skipped_files ... ok
[INFO] [stdout] test extract::tests::extract_all_tracked_reports_no_skips_when_all_files_are_recognised ... ok
[INFO] [stdout] test extract::tests::failed_raw_copy_leaves_nothing_behind ... ok
[INFO] [stdout] test extract::tests::an_image_that_fails_to_unpack_is_copied_raw_and_the_run_continues ... ok
[INFO] [stdout] test extract::tests::failed_extraction_leaves_no_image_behind ... ok
[INFO] [stdout] test extract::tests::input_without_transfer_lists_is_an_error ... ok
[INFO] [stdout] test extract::tests::extracts_every_partition_from_a_zip ... ok
[INFO] [stdout] test extract::tests::known_ota_scaffolding_is_ignored_not_unhandled ... ok
[INFO] [stdout] test extract::tests::extracts_every_partition_from_a_directory ... ok
[INFO] [stdout] test extract::tests::list_does_not_care_about_existing_output ... ok
[INFO] [stdout] test extract::tests::listed_size_matches_the_extracted_image_when_the_header_count_is_smaller ... ok
[INFO] [stdout] test extract::tests::one_bad_partition_fails_the_run_but_good_ones_still_finish ... ok
[INFO] [stdout] test extract::tests::every_standard_partition_image_is_identified_and_extracted ... ok
[INFO] [stdout] test extract::tests::only_ignores_existing_files_that_are_not_selected ... ok
[INFO] [stdout] test extract::tests::only_selects_partitions_and_raw_images_by_name ... ok
[INFO] [stdout] test extract::tests::only_with_an_unknown_name_lists_the_valid_ones_and_writes_nothing ... ok
[INFO] [stdout] test extract::tests::nested_zip_entries_are_ignored ... ok
[INFO] [stdout] test extract::tests::only_matches_names_exactly_not_ignoring_case ... ok
[INFO] [stdout] test extract::tests::pieces_missing_from_the_sequence_are_an_error ... ok
[INFO] [stdout] test extract::tests::output_names_differing_only_by_case_are_rejected ... ok
[INFO] [stdout] test extract::tests::quiet_mode_suppresses_per_image_lines ... ok
[INFO] [stdout] test extract::tests::partition_names_lists_sorted_partitions_without_reading_data ... ok
[INFO] [stdout] test extract::tests::raw_image_colliding_with_a_partition_is_an_error_before_writing ... ok
[INFO] [stdout] test extract::tests::result_lines_show_the_filesystem_only_when_recognised ... ok
[INFO] [stdout] test extract::tests::missing_data_file_is_an_error ... ok
[INFO] [stdout] test extract::tests::a_consumer_that_stops_early_never_leaves_the_piece_reader_blocked ... ok
[INFO] [stdout] test extract::tests::raw_images_are_copied_unchanged_after_the_partitions ... ok
[INFO] [stdout] test extract::tests::skipped_files_are_reported_and_fail_without_allow_partial ... ok
[INFO] [stdout] test extract::tests::split_brotli_pieces_are_joined_before_decompressing ... ok
[INFO] [stdout] test extract::tests::repeated_names_in_only_extract_each_image_once ... ok
[INFO] [stdout] test extract::tests::split_pieces_work_from_a_zip_too ... ok
[INFO] [stdout] test extract::tests::split_raw_pieces_are_joined_in_order_whatever_their_sizes ... ok
[INFO] [stdout] test extract::tests::list_reports_sizes_without_writing_anything ... ok
[INFO] [stdout] test extract::tests::short_data_in_pieces_is_an_error ... ok
[INFO] [stdout] test extract::tests::unsafe_partition_names_are_rejected ... ok
[INFO] [stdout] test extract::tests::surplus_data_in_pieces_is_an_error_and_does_not_hang ... ok
[INFO] [stdout] test extract::tests::strict_mode_fails_on_unrecognised_files ... ok
[INFO] [stdout] test extract::tests::many_partitions_extract_in_parallel_and_come_back_sorted ... ok
[INFO] [stdout] test extract::tests::strict_mode_passes_when_no_unrecognised_files ... ok
[INFO] [stdout] test extract::tests::unsafe_raw_image_names_are_rejected ... ok
[INFO] [stdout] test extract::tests::symlinks_in_the_output_dir_are_never_written_through ... ok
[INFO] [stdout] test f2fsfs::tests::a_node_must_name_itself_in_its_footer ... ok
[INFO] [stdout] test f2fsfs::tests::a_hard_link_is_extracted_once ... ok
[INFO] [stdout] test f2fsfs::tests::a_file_in_too_many_pieces_is_refused ... ok
[INFO] [stdout] test f2fsfs::tests::a_stream_continues_from_the_inline_area_into_the_node ... ok
[INFO] [stdout] test f2fsfs::tests::cat_returns_bytes_and_refuses_what_is_not_a_file ... ok
[INFO] [stdout] test f2fsfs::tests::an_inode_with_absurd_layout_fields_is_refused ... ok
[INFO] [stdout] test f2fsfs::tests::compressed_files_are_refused_not_misread ... ok
[INFO] [stdout] test f2fsfs::tests::a_node_with_its_own_header_stands_alone_when_the_inline_area_is_empty ... ok
[INFO] [stdout] test f2fsfs::tests::dentry_parsing_handles_slots_and_rejects_bad_entries ... ok
[INFO] [stdout] test f2fsfs::tests::an_xattr_node_that_belongs_to_another_inode_is_refused ... ok
[INFO] [stdout] test f2fsfs::tests::extra_attribute_and_flexible_inline_xattr_sizes_move_the_address_array ... ok
[INFO] [stdout] test f2fsfs::tests::inline_directories_are_listed ... ok
[INFO] [stdout] test f2fsfs::tests::lists_the_whole_tree_with_metadata ... ok
[INFO] [stdout] test f2fsfs::tests::path_lookup_and_listing_do_not_follow_symlinks ... ok
[INFO] [stdout] test f2fsfs::tests::selinux_labels_and_file_capabilities_are_exposed_like_ext4 ... ok
[INFO] [stdout] test f2fsfs::tests::extraction_writes_exact_bytes_a_manifest_and_hashes ... ok
[INFO] [stdout] test f2fsfs::tests::a_pack_with_a_bad_checksum_or_a_mismatched_last_block_is_skipped ... ok
[INFO] [stdout] test avb::tests::a_flipped_signature_byte_breaks_rsa_verification ... ok
[INFO] [stdout] test f2fsfs::tests::file_contents_with_holes_read_back_exactly ... ok
[INFO] [stdout] test f2fsfs::tests::checkpoint_fields_are_validated ... ok
[INFO] [stdout] test f2fsfs::tests::the_crc_is_standard_crc32_seeded_with_the_magic_and_not_inverted ... ok
[INFO] [stdout] test f2fsfs::tests::size_and_address_limits_are_enforced ... ok
[INFO] [stdout] test f2fsfs::tests::the_encrypt_feature_alone_is_not_a_refusal_but_encrypted_inodes_are ... ok
[INFO] [stdout] test f2fsfs::tests::symlinks_inline_and_in_a_block ... ok
[INFO] [stdout] test f2fsfs::tests::block_addressing_follows_direct_indirect_and_double_indirect_nodes ... ok
[INFO] [stdout] test f2fsfs::tests::the_journal_of_a_normal_summary_is_read_from_its_own_offset ... ok
[INFO] [stdout] test f2fsfs::tests::short_and_garbage_images_are_refused_without_a_panic ... ok
[INFO] [stdout] test f2fsfs::tests::xattr_names_cover_every_namespace_and_damage_is_reported ... ok
[INFO] [stdout] test findings::tests::a_noisy_rule_is_capped_and_a_gap_blocks_100 ... ok
[INFO] [stdout] test findings::tests::fingerprint_ignores_message_slashes_and_order_but_not_scope_or_key ... ok
[INFO] [stdout] test f2fsfs::tests::the_newer_valid_checkpoint_wins_and_a_tie_goes_to_the_first ... ok
[INFO] [stdout] test findings::tests::sarif_carries_every_required_2_1_0_property ... ok
[INFO] [stdout] test f2fsfs::tests::unusable_nat_entries_are_errors ... ok
[INFO] [stdout] test findings::tests::score_does_not_depend_on_order ... ok
[INFO] [stdout] test findings::tests::score_is_100_only_when_clean_and_never_negative ... ok
[INFO] [stdout] test findings::tests::severity_scale_orders_and_maps ... ok
[INFO] [stdout] test fix::tests::caps_findings ... ok
[INFO] [stdout] test findings::tests::uri_is_scope_slash_path_and_percent_encoded_in_sarif ... ok
[INFO] [stdout] test fix::tests::firmware_text_is_stripped_and_cannot_close_the_fence ... ok
[INFO] [stdout] test fix::tests::hostile_path_is_quoted ... ok
[INFO] [stdout] test fix::tests::agent_detection ... ok
[INFO] [stdout] test fix::tests::untrusted_and_no_suppression_clauses ... ok
[INFO] [stdout] test hashtree::tests::a_hash_block_smaller_than_a_digest_is_refused ... ok
[INFO] [stdout] test fwdiff::tests::sepolicy_paths_are_recognised ... ok
[INFO] [stdout] test fix::tests::worst_first_with_rerun_last ... ok
[INFO] [stdout] test hashtree::tests::a_tree_matches_an_independent_implementation_of_the_avb_spec ... ok
[INFO] [stdout] test hashtree::tests::a_wrong_root_digest_is_an_error_not_a_silent_wrong_tree ... ok
[INFO] [stdout] test hashtree::tests::a_zero_block_size_is_refused_rather_than_dividing_by_zero ... ok
[INFO] [stdout] test hashtree::tests::an_unsupported_algorithm_is_reported_not_treated_as_sha256 ... ok
[INFO] [stdout] test hashtree::tests::an_empty_image_does_not_panic ... ok
[INFO] [stdout] test hashtree::tests::a_partial_final_data_block_is_padded_not_dropped ... ok
[INFO] [stdout] test huawei::tests::identify_names_it_by_magic_whatever_the_file_is_called ... ok
[INFO] [stdout] test huawei::tests::only_selects_and_unknown_names_fail ... ok
[INFO] [stdout] test huawei::tests::corrupt_containers_are_refused_not_guessed ... ok
[INFO] [stdout] test huawei::tests::extract_all_routes_through_the_shared_entry_points ... ok
[INFO] [stdout] test f2fsfs::tests::the_superblock_checksum_is_checked_when_the_feature_is_on ... ok
[INFO] [stdout] test info::tests::json_round_trips ... ok
[INFO] [stdout] test huawei::tests::unwraps_to_the_partition_images ... ok
[INFO] [stdout] test f2fsfs::tests::the_nat_journal_wins_over_the_table_and_the_bitmap_picks_the_copy ... ok
[INFO] [stdout] test info::tests::oversized_metadata_is_rejected_in_zip_and_dir ... ok
[INFO] [stdout] test avb::tests::a_flipped_header_byte_breaks_digest_and_signature ... ok
[INFO] [stdout] test info::tests::parse_trims_skips_noise_and_splits_on_first_equals ... ok
[INFO] [stdout] test info::tests::zip_without_metadata_is_an_error ... ok
[INFO] [stdout] test f2fsfs::tests::walk_limits_are_enforced_and_loops_refused ... ok
[INFO] [stdout] test info::tests::table_is_aligned_and_sorted ... ok
[INFO] [stdout] test info::tests::reads_metadata_from_a_zip ... ok
[INFO] [stdout] test info::tests::reads_metadata_from_a_directory_and_rejects_empty_or_missing ... ok
[INFO] [stdout] test lgkdz::tests::a_dz_unwraps_chunks_into_partitions ... ok
[INFO] [stdout] test lgkdz::tests::corrupt_input_is_refused_not_guessed ... ok
[INFO] [stdout] test lgkdz::tests::a_kdz_is_unwrapped_through_its_dz_entry ... ok
[INFO] [stdout] test libbrotli::brotli_bench::empty_and_truncated_input_are_errors_not_silent_truncation ... ok
[INFO] [stdout] test libbrotli::brotli_bench::the_c_decoder_is_faster_on_real_firmware ... ignored, needs the local firmware; run with --ignored
[INFO] [stdout] test lp::tests::a_corrupted_geometry_checksum_is_still_refused ... ok
[INFO] [stdout] test lp::tests::is_super_detects_magic ... ok
[INFO] [stdout] test lp::tests::is_super_rejects_plain_bytes ... ok
[INFO] [stdout] test manifest::tests::a_malformed_scatter_line_is_an_error_not_a_panic ... ok
[INFO] [stdout] test manifest::tests::a_commented_out_partition_is_not_parsed ... ok
[INFO] [stdout] test manifest::tests::a_directory_with_no_manifest_is_a_clear_error ... ok
[INFO] [stdout] test manifest::tests::a_missing_image_is_reported_rather_than_skipped ... ok
[INFO] [stdout] test manifest::tests::a_sparse_scatter_marker_is_reported ... ok
[INFO] [stdout] test manifest::tests::an_unreferenced_image_is_reported ... ok
[INFO] [stdout] test manifest::tests::attribute_order_and_quoting_do_not_matter ... ok
[INFO] [stdout] test manifest::tests::malformed_xml_is_an_error_not_a_panic ... ok
[INFO] [stdout] test mcp::tests::a_notification_gets_no_response ... ok
[INFO] [stdout] test mcp::tests::an_unknown_method_is_an_error_not_silence ... ok
[INFO] [stdout] test mcp::tests::calling_a_tool_without_its_argument_reports_an_error_not_a_crash ... ok
[INFO] [stdout] test mcp::tests::initialize_advertises_tool_capability ... ok
[INFO] [stdout] test mcp::tests::tools_list_returns_parseable_schemas ... ok
[INFO] [stdout] test lp::tests::a_super_image_laid_out_like_aosp_writes_it_is_parsed_and_split ... ok
[INFO] [stdout] test manifest::tests::a_scatter_file_parses_with_comments_and_blank_lines ... ok
[INFO] [stdout] test manifest::tests::a_rawprogram_file_parses_to_its_partitions ... ok
[INFO] [stdout] test mcp::tests::an_unknown_tool_is_an_error_result ... ok
[INFO] [stdout] test nokianb0::tests::lists_and_extracts_both_partitions ... ok
[INFO] [stdout] test oem::tests::names_are_sanitised ... ok
[INFO] [stdout] test oem::tests::cpb_is_named_but_refused_with_a_clear_reason ... ok
[INFO] [stdout] test oem::tests::synthetic_fixtures_can_be_written_for_a_manual_run ... ok
[INFO] [stdout] test oem::tests::identify_names_each_container ... ok
[INFO] [stdout] test nokianb0::tests::a_name_already_ending_in_img_is_not_doubled ... ok
[INFO] [stdout] test otameta::tests::a_raw_write_needs_its_own_second_argument ... ok
[INFO] [stdout] test libbrotli::brotli_bench::the_c_decoder_matches_the_pure_rust_decoder_byte_for_byte ... ok
[INFO] [stdout] test otameta::tests::an_rsa_certificate_is_read_completely ... ok
[INFO] [stdout] test otameta::tests::an_argument_window_never_splits_a_character ... ok
[INFO] [stdout] test otameta::tests::a_raw_write_target_must_be_a_device_path ... ok
[INFO] [stdout] test otameta::tests::dates_oids_and_helpers ... ok
[INFO] [stdout] test otameta::tests::an_ec_certificate_and_a_weak_one_are_read_and_flagged ... ok
[INFO] [stdout] test otameta::tests::details_come_from_a_directory_and_from_a_zip ... ok
[INFO] [stdout] test otameta::tests::escaped_quotes_and_backslashes_inside_strings_are_unescaped_not_terminators ... ok
[INFO] [stdout] test otameta::tests::incremental_scripts_are_recognised ... ok
[INFO] [stdout] test otameta::tests::der_lengths_are_checked ... ok
[INFO] [stdout] test otameta::tests::pem_and_der_inputs_give_the_same_certificate ... ok
[INFO] [stdout] test otameta::tests::checks_need_a_getprop_comparison_with_a_quoted_value ... ok
[INFO] [stdout] test otameta::tests::quotes_comments_and_odd_scripts_do_not_confuse_the_reader ... ok
[INFO] [stdout] test otameta::tests::text_and_json_carry_everything ... ok
[INFO] [stdout] test otameta::tests::missing_unreadable_and_oversized_members_are_handled ... ok
[INFO] [stdout] test otameta::tests::the_updater_script_is_summarised ... ok
[INFO] [stdout] test ozip::tests::a_header_parses_and_reads_its_size ... ok
[INFO] [stdout] test ozip::tests::a_short_or_non_numeric_header_is_an_error_not_a_panic ... ok
[INFO] [stdout] test ozip::tests::a_synthetic_ozip_round_trips_to_its_zip_bytes ... ok
[INFO] [stdout] test f2fsfs::tests::the_superblock_is_validated_before_anything_is_allocated_or_read ... ok
[INFO] [stdout] test ozip::tests::a_wrong_magic_is_refused ... ok
[INFO] [stdout] test avb::tests::a_partition_footer_is_judged_against_the_signed_top_level_vbmeta ... ok
[INFO] [stdout] test otameta::tests::a_fifo_never_blocks_a_read ... ok
[INFO] [stdout] test ozip::tests::an_unknown_key_is_not_guessed ... ok
[INFO] [stdout] test ozip::tests::an_undecryptable_ozip_writes_nothing ... ok
[INFO] [stdout] test pac::tests::decode_name_strips_nul_padding ... ok
[INFO] [stdout] test ozip::tests::the_key_table_is_populated ... ok
[INFO] [stdout] test ozip::tests::the_probe_identifies_the_right_key ... ok
[INFO] [stdout] test pac::tests::build_pac_for_test_creates_valid_pac ... ok
[INFO] [stdout] test payload::tests::a_deflated_payload_in_a_zip_gets_a_clear_message ... ok
[INFO] [stdout] test payload::tests::a_corrupt_operation_hash_fails_everything_and_leaves_nothing ... ok
[INFO] [stdout] test payload::tests::a_partition_count_over_the_limit_is_refused_before_anything_is_made ... ok
[INFO] [stdout] test payload::tests::a_partition_listed_twice_is_refused_so_two_writers_never_share_a_file ... ok
[INFO] [stdout] test payload::tests::an_operation_can_scatter_over_several_extents ... ok
[INFO] [stdout] test payload::tests::a_wrong_partition_hash_is_an_error_naming_both_hashes ... ok
[INFO] [stdout] test payload::tests::corrupt_compressed_data_is_an_error_not_a_panic ... ok
[INFO] [stdout] test payload::tests::blob_order_in_the_payload_does_not_matter ... ok
[INFO] [stdout] test otameta::tests::every_truncation_and_many_byte_flips_of_a_certificate_are_errors_not_panics ... ok
[INFO] [stdout] test payload::tests::declared_size_larger_than_the_extents_leaves_zero_padding ... ok
[INFO] [stdout] test payload::tests::a_zero_length_verity_extent_does_not_count_as_verity_data ... ok
[INFO] [stdout] test payload::tests::data_that_does_not_fill_its_extents_exactly_is_an_error ... ok
[INFO] [stdout] test payload::tests::extent_overflow_edges_are_rejected_on_their_own ... ok
[INFO] [stdout] test payload::tests::existing_output_is_refused_without_force_and_replaced_with_it ... ok
[INFO] [stdout] test payload::tests::hashing_a_file_shorter_than_expected_is_an_error ... ok
[INFO] [stdout] test payload::tests::headers_that_are_wrong_are_rejected_with_a_reason ... ok
[INFO] [stdout] test otameta::tests::the_script_statement_count_is_bounded ... ok
[INFO] [stdout] test payload::tests::incremental_partitions_are_fine_when_not_selected ... ok
[INFO] [stdout] test payload::tests::inputs_that_are_not_ab_otas_are_left_alone ... ok
[INFO] [stdout] test payload::tests::locate_finds_the_payload_inside_a_stored_zip_entry ... ok
[INFO] [stdout] test payload::tests::a_partition_with_many_operations_is_decoded_in_parallel_correctly ... ok
[INFO] [stdout] test payload::tests::only_and_list_select_partitions_and_report_sizes ... ok
[INFO] [stdout] test payload::tests::operation_type_numbers_are_the_literal_values_from_the_proto ... ok
[INFO] [stdout] test payload::tests::hostile_manifests_are_rejected_before_any_file_is_made ... ok
[INFO] [stdout] test payload::tests::every_operation_type_rebuilds_the_image_and_is_verified ... ok
[INFO] [stdout] test payload::tests::the_extent_writer_places_bytes_correctly_whatever_the_write_sizes ... ok
[INFO] [stdout] test payload::tests::missing_hashes_and_verity_data_are_reported_honestly ... ok
[INFO] [stdout] test payload::tests::planted_symlinks_are_never_written_through ... ok
[INFO] [stdout] test payload::tests::the_operation_type_table_matches_the_proto ... ok
[INFO] [stdout] test payload::tests::the_limits_are_the_documented_values ... ok
[INFO] [stdout] test ramdisk::tests::a_boot_image_ramdisk_is_found_and_read ... ok
[INFO] [stdout] test payload::tests::incremental_operations_are_refused_before_anything_is_written ... ok
[INFO] [stdout] test payload::tests::the_command_prints_a_note_per_image ... ok
[INFO] [stdout] test ramdisk::tests::a_directory_input_names_the_problem ... ok
[INFO] [stdout] test ramdisk::tests::a_hardlink_group_that_never_carries_data_gives_empty_files ... ok
[INFO] [stdout] test payload::tests::zero_block_extents_inside_an_operation_are_skipped ... ok
[INFO] [stdout] test ramdisk::tests::a_path_below_a_symlink_is_refused_when_extracting ... ok
[INFO] [stdout] test ramdisk::tests::a_property_repeated_in_one_file_is_reported_once ... ok
[INFO] [stdout] test ramdisk::tests::a_planted_symlink_as_the_staging_name_is_not_followed ... ok
[INFO] [stdout] test ramdisk::tests::an_unrecognised_ramdisk_gets_an_honest_explanation ... ok
[INFO] [stdout] test ramdisk::tests::a_vendor_boot_ramdisk_is_found_and_extracted_under_its_own_name ... ok
[INFO] [stdout] test ramdisk::tests::compression_is_detected_from_the_magic_bytes ... ok
[INFO] [stdout] test ramdisk::tests::a_path_listed_twice_keeps_the_later_content ... ok
[INFO] [stdout] test ramdisk::tests::a_property_file_over_the_size_cap_is_not_read ... ok
[INFO] [stdout] test ramdisk::tests::data_and_symlink_size_problems_are_reported_precisely ... ok
[INFO] [stdout] test ramdisk::tests::different_property_files_are_all_reported ... ok
[INFO] [stdout] test ramdisk::tests::concatenated_archives_and_zero_padding_are_read ... ok
[INFO] [stdout] test ramdisk::tests::entropy_threshold_separates_noise_from_structured_data ... ok
[INFO] [stdout] test ramdisk::tests::entropy_values ... ok
[INFO] [stdout] test ramdisk::tests::concatenated_bzip2_streams_form_one_archive ... ok
[INFO] [stdout] test ramdisk::tests::empty_linked_names_get_their_parents_and_special_bits_are_dropped_everywhere ... ok
[INFO] [stdout] test ramdisk::tests::hardlink_data_may_come_first_last_or_in_the_middle ... ok
[INFO] [stdout] test ramdisk::tests::hardlink_names_keep_their_own_modes_and_get_their_parent_directories ... ok
[INFO] [stdout] test ramdisk::tests::hardlinks_share_their_data ... ok
[INFO] [stdout] test ramdisk::tests::extraction_refuses_conflicts_and_cleans_up ... ok
[INFO] [stdout] test ramdisk::tests::extraction_writes_files_and_dirs_but_never_symlinks_or_devices ... ok
[INFO] [stdout] test ramdisk::tests::header_and_name_corruption_is_reported_precisely ... ok
[INFO] [stdout] test ramdisk::tests::hostile_paths_are_rejected ... ok
[INFO] [stdout] test ramdisk::tests::inputs_that_are_not_files_are_refused ... ok
[INFO] [stdout] test ramdisk::tests::near_miss_magics_are_not_taken_for_a_format ... ok
[INFO] [stdout] test ramdisk::tests::only_entries_with_the_same_inode_and_device_share_data ... ok
[INFO] [stdout] test ramdisk::tests::output_directory_rules ... ok
[INFO] [stdout] test ramdisk::tests::padding_is_right_for_every_name_and_data_length ... ok
[INFO] [stdout] test ramdisk::tests::permissions_are_applied_and_special_bits_are_dropped ... ok
[INFO] [stdout] test ramdisk::tests::properties_are_found_through_symlinks_and_deduplicated ... ok
[INFO] [stdout] test ramdisk::tests::property_files_are_read_through_a_hardlink_name ... ok
[INFO] [stdout] test ramdisk::tests::section_classification_covers_every_format ... ok
[INFO] [stdout] test ramdisk::tests::symlink_chains_cycles_and_escapes_are_handled ... ok
[INFO] [stdout] test payload::tests::the_failed_run_removes_part_files_even_when_workers_stop_midway ... ok
[INFO] [stdout] test ramdisk::tests::the_cap_allows_exactly_its_size_and_no_more ... ok
[INFO] [stdout] test ramdisk::tests::text_and_json_output ... ok
[INFO] [stdout] test ramdisk::tests::the_limits_are_the_documented_values ... ok
[INFO] [stdout] test ramdisk::tests::two_entries_of_one_inode_that_both_carry_data_are_refused ... ok
[INFO] [stdout] test report::tests::analyze_reads_metadata_and_computes_age ... ok
[INFO] [stdout] test ramdisk::tests::malformed_archives_are_errors_never_panics ... ok
[INFO] [stdout] test report::tests::days_from_civil_matches_known_dates ... ok
[INFO] [stdout] test report::tests::future_patch_level_is_reported_as_such_not_as_negative_age ... ok
[INFO] [stdout] test report::tests::json_report_has_machine_readable_fields ... ok
[INFO] [stdout] test report::tests::patch_level_accepts_day_and_month_forms_and_rejects_junk ... ok
[INFO] [stdout] test report::tests::text_report_has_every_row_and_the_verdict ... ok
[INFO] [stdout] test report::tests::missing_fields_are_unknown_not_errors_but_malformed_ones_are ... ok
[INFO] [stdout] test report::tests::unknown_sdk_has_no_android_name_and_never_underflows ... ok
[INFO] [stdout] test report::tests::verdict_thresholds_are_exact ... ok
[INFO] [stdout] test reporting::tests::a_gate_displays_its_message ... ok
[INFO] [stdout] test sdat::tests::brotli_stream_round_trips_into_an_image ... ok
[INFO] [stdout] test ramdisk::tests::legacy_lz4_edge_cases ... ok
[INFO] [stdout] test sdat::tests::corrupt_brotli_input_is_an_error ... ok
[INFO] [stdout] test sdat::tests::absurd_range_end_is_an_error ... ok
[INFO] [stdout] test sdat::tests::image_size_is_the_furthest_range_end_in_bytes ... ok
[INFO] [stdout] test sdat::tests::image_spans_the_furthest_range_of_any_command ... ok
[INFO] [stdout] test sdat::tests::writes_new_blocks_in_order_at_their_offsets ... ok
[INFO] [stdout] test sdat::tests::short_data_is_an_error ... ok
[INFO] [stdout] test sdat::tests::zero_and_erase_stay_zero_and_count_toward_size ... ok
[INFO] [stdout] test sdat::tests::extra_data_is_an_error ... ok
[INFO] [stdout] test skill::tests::cursor_gets_an_mdc_rule_and_codex_an_agents_md_block ... ok
[INFO] [stdout] test skill::tests::install_creates_the_file_and_dir ... ok
[INFO] [stdout] test skill::tests::install_all_agents_writes_valid_files ... FAILED
[INFO] [stdout] test skill::tests::install_is_idempotent ... FAILED
[INFO] [stdout] test skill::tests::install_writes_frontmatter ... ok
[INFO] [stdout] test sonysin::tests::an_ext4_payload_is_copied_through_and_still_identified ... ok
[INFO] [stdout] test sonysin::tests::a_sparse_payload_is_expanded_for_the_existing_pipeline ... ok
[INFO] [stdout] test sparse::tests::a_correct_crc_chunk_passes_and_a_wrong_one_fails ... ok
[INFO] [stdout] test sparse::tests::a_failed_command_leaves_nothing_behind ... ok
[INFO] [stdout] test sparse::tests::a_huge_dont_care_gap_is_instant_and_writes_nothing ... ok
[INFO] [stdout] test sparse::tests::absurd_sizes_are_refused_before_any_output ... ok
[INFO] [stdout] test sparse::tests::a_checksum_after_a_huge_gap_is_still_verified ... ok
[INFO] [stdout] test sparse::tests::block_accounting_must_match_the_header ... ok
[INFO] [stdout] test sonysin::tests::unprocessable_or_malformed_input_is_refused_by_name ... ok
[INFO] [stdout] test sparse::tests::chunk_errors_are_reported ... ok
[INFO] [stdout] test sparse::tests::crc_is_not_checked_when_merging_several_files ... ok
[INFO] [stdout] test sparse::tests::crc_covers_fill_chunks_too ... ok
[INFO] [stdout] test sparse::tests::every_chunk_type_lands_at_its_offset ... ok
[INFO] [stdout] test sparse::tests::header_errors_are_reported ... ok
[INFO] [stdout] test sparse::tests::longer_headers_are_skipped_and_trailing_bytes_ignored ... ok
[INFO] [stdout] test sparse::tests::fill_larger_than_the_copy_buffer_repeats_correctly ... ok
[INFO] [stdout] test sparse::tests::output_is_full_size_even_when_it_ends_with_a_gap ... ok
[INFO] [stdout] test sparse::tests::files_describing_different_images_are_rejected ... ok
[INFO] [stdout] test sparse::tests::raw_larger_than_the_copy_buffer_is_copied_whole ... ok
[INFO] [stdout] test sparse::tests::the_command_writes_the_image_and_refuses_to_overwrite_without_force ... ok
[INFO] [stdout] test sparse::tests::the_real_format_bytes_are_what_we_read_and_write ... ok
[INFO] [stdout] test sparse::tests::zeros_crc_composes_with_data_on_both_sides ... ok
[INFO] [stdout] test sparse::tests::several_files_for_one_image_merge_without_erasing_each_other ... ok
[INFO] [stdout] test term::tests::an_error_renders_its_cause_chain_indented ... ok
[INFO] [stdout] test sparse::tests::zeros_crc_equals_hashing_the_zeros_one_by_one ... ok
[INFO] [stdout] test term::tests::colour_off_emits_no_escape_sequences ... ok
[INFO] [stdout] test term::tests::colour_on_wraps_and_strips_cleanly ... ok
[INFO] [stdout] test term::tests::severity_orders_from_info_to_error ... ok
[INFO] [stdout] test tests::cli_definition_is_valid ... ok
[INFO] [stdout] test term::tests::human_sizes_are_binary_and_trim_trailing_zeros ... ok
[INFO] [stdout] test transfer_list::tests::parses_v4_with_all_commands ... ok
[INFO] [stdout] test transfer_list::tests::rejects_bad_header ... ok
[INFO] [stdout] test transfer_list::tests::rejects_bad_ranges ... ok
[INFO] [stdout] test transfer_list::tests::rejects_incremental_commands ... ok
[INFO] [stdout] test transfer_list::tests::v1_has_no_stash_lines ... ok
[INFO] [stdout] test testutil::tests::the_directory_is_removed_on_drop ... ok
[INFO] [stdout] test payload::tests::every_truncation_of_a_payload_is_an_error_or_a_clean_failure ... ok
[INFO] [stdout] test ramdisk::tests::every_compression_gives_the_same_entries ... ok
[INFO] [stdout] test sparse::tests::truncated_input_is_an_error_everywhere ... ok
[INFO] [stdout] test avb::tests::a_signed_image_with_clean_flags_produces_no_findings ... ok
[INFO] [stdout] test ramdisk::tests::the_decompression_cap_is_an_explicit_error ... ok
[INFO] [stdout] test avb::tests::rsa_signature_verifies_for_a_signed_block ... ok
[INFO] [stdout] test avb::tests::flipping_any_header_or_descriptor_byte_never_panics ... ok
[INFO] [stdout] test nokianb0::tests::hostile_input_is_refused_without_panic ... ok
[INFO] [stdout] test otameta::tests::the_number_of_items_kept_is_bounded ... ok
[INFO] [stdout] test avb::tests::sha512_rsa4096_signature_verifies ... ok
[INFO] [stdout] test erofsfs::tests::corrupting_metadata_bytes_never_panics ... ok
[INFO] [stdout] test otameta::tests::a_hostile_script_cannot_make_the_scan_quadratic ... ok
[INFO] [stdout] test ext4fs::tests::corrupting_any_metadata_byte_never_panics_or_hangs ... ok
[INFO] [stdout] test f2fsfs::tests::corrupting_metadata_bytes_never_panics has been running for over 60 seconds
[INFO] [stdout] test f2fsfs::tests::corrupting_metadata_bytes_never_panics ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- skill::tests::install_all_agents_writes_valid_files stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'skill::tests::install_all_agents_writes_valid_files' (4715) panicked at src/skill.rs:152:56:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: /tmp/ad-test-skill-codex-3676/android-doctor.md: File exists (os error 17)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <anyhow::kind::Adhoc>::new::<alloc::string::String>
[INFO] [stdout]    1: android_doctor::skill::install_in
[INFO] [stdout]    2: android_doctor::skill::tests::install_in_scratch
[INFO] [stdout]    3: android_doctor::skill::tests::install_all_agents_writes_valid_files
[INFO] [stdout]    4: <android_doctor::skill::tests::install_all_agents_writes_valid_files::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]    5: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]    6: test::run_test::{closure#0}
[INFO] [stdout]    7: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]    8: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]    9: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   10: <unknown>
[INFO] [stdout]   11: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x627feec7efd1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x627feec9866a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x627feec8443c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x627feec55606 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x627feec74a99 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x627fee9e56f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x627feec74dc2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x627feec556b2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x627feec4d889 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x627feec5674d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x627feec98d9c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x627feec98b72 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x627fee59e3f4 - android_doctor[e867acaf6d208c44]::skill::tests::install_in_scratch
[INFO] [stdout]   13:     0x627fee59ee0f - android_doctor[e867acaf6d208c44]::skill::tests::install_all_agents_writes_valid_files
[INFO] [stdout]   14:     0x627fee6ea6d9 - <android_doctor[e867acaf6d208c44]::skill::tests::install_all_agents_writes_valid_files::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   15:     0x627fee9d89db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   16:     0x627fee9e6045 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   17:     0x627fee9df904 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   18:     0x627fee9e91a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   19:     0x627feec7dee9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   20:     0x75425b6cbdfa - <unknown>
[INFO] [stdout]   21:     0x75425b75f3d4 - clone
[INFO] [stdout]   22:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- skill::tests::install_is_idempotent stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'skill::tests::install_is_idempotent' (4717) panicked at src/skill.rs:152:56:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: /tmp/ad-test-skill-codex-3676/android-doctor.md: No such file or directory (os error 2)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <anyhow::kind::Adhoc>::new::<alloc::string::String>
[INFO] [stdout]    1: android_doctor::skill::install_in
[INFO] [stdout]    2: android_doctor::skill::tests::install_in_scratch
[INFO] [stdout]    3: android_doctor::skill::tests::install_is_idempotent
[INFO] [stdout]    4: <android_doctor::skill::tests::install_is_idempotent::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]    5: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]    6: test::run_test::{closure#0}
[INFO] [stdout]    7: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]    8: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]    9: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   10: <unknown>
[INFO] [stdout]   11: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x627feec7efd1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x627feec9866a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x627feec8443c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x627feec55606 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x627feec74a99 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x627fee9e56f0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x627feec74dc2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x627feec556b2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x627feec4d889 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x627feec5674d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x627feec98d9c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x627feec98b72 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]   12:     0x627fee59e3f4 - android_doctor[e867acaf6d208c44]::skill::tests::install_in_scratch
[INFO] [stdout]   13:     0x627fee59e470 - android_doctor[e867acaf6d208c44]::skill::tests::install_is_idempotent
[INFO] [stdout]   14:     0x627fee6ea679 - <android_doctor[e867acaf6d208c44]::skill::tests::install_is_idempotent::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   15:     0x627fee9d89db - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   16:     0x627fee9e6045 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   17:     0x627fee9df904 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   18:     0x627fee9e91a2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   19:     0x627feec7dee9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   20:     0x75425b6cbdfa - <unknown>
[INFO] [stdout]   21:     0x75425b75f3d4 - clone
[INFO] [stdout]   22:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     skill::tests::install_all_agents_writes_valid_files
[INFO] [stdout]     skill::tests::install_is_idempotent
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 565 passed; 2 failed; 1 ignored; 0 measured; 0 filtered out; finished in 124.02s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin android-doctor`
[INFO] running `Command { std: "docker" "inspect" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047", kill_on_drop: false }`
[INFO] [stdout] 0b1bc0e5fb15522fedc0e7afda9620d16f8a42c6614ef49244e0f90e4ed64047
