[INFO] cloning repository https://github.com/godaddy/libenclaveapp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/godaddy/libenclaveapp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgodaddy%2Flibenclaveapp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgodaddy%2Flibenclaveapp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3b4ac1bcb637fb60ac18d4cd9877dba989c46dba
[INFO] testing godaddy/libenclaveapp against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgodaddy%2Flibenclaveapp" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc1/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/godaddy/libenclaveapp
[INFO] finished tweaking git repo https://github.com/godaddy/libenclaveapp
[INFO] tweaked toml for git repo https://github.com/godaddy/libenclaveapp written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/godaddy/libenclaveapp on toolchain 1.98.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/godaddy/libenclaveapp 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.98.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 winresource v0.1.31
[INFO] [stderr]   Downloaded libredox v0.1.17
[INFO] [stderr]   Downloaded mbox v0.7.1
[INFO] [stderr]   Downloaded bitfield-macros v0.19.4
[INFO] [stderr]   Downloaded picky-asn1-der v0.5.6
[INFO] [stderr]   Downloaded hostname-validator v1.1.1
[INFO] [stderr]   Downloaded oid v0.2.1
[INFO] [stderr]   Downloaded dbus-secret-service v4.1.0
[INFO] [stderr]   Downloaded bitfield v0.19.4
[INFO] [stderr]   Downloaded fs4 v0.9.1
[INFO] [stderr]   Downloaded picky-asn1 v0.10.1
[INFO] [stderr]   Downloaded log v0.4.31
[INFO] [stderr]   Downloaded bitflags v2.12.1
[INFO] [stderr]   Downloaded dbus v0.9.11
[INFO] [stderr]   Downloaded picky-asn1-x509 v0.15.4
[INFO] [stderr]   Downloaded tss-esapi v7.7.0
[INFO] [stderr]   Downloaded tss-esapi-sys v0.6.0
[INFO] [stderr]   Downloaded libdbus-sys v0.2.7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22
[INFO] running `Command { std: "docker" "start" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", 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" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", 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" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling const-oid v0.9.6
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling zerocopy v0.8.50
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling pem-rfc7468 v0.7.0
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling base16ct v0.2.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling bitflags v2.12.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling tss-esapi v7.7.0
[INFO] [stderr]    Compiling log v0.4.31
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling mbox v0.7.1
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling hostname-validator v1.1.1
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling libdbus-sys v0.2.7
[INFO] [stderr]    Compiling tss-esapi-sys v0.6.0
[INFO] [stderr]    Compiling hardware-enclave v0.2.10 (/opt/rustwide/workdir/crates/hardware-enclave)
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling fs2 v0.4.3
[INFO] [stderr]    Compiling dbus v0.9.11
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling fs4 v0.9.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.50
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling bitfield-macros v0.19.4
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling dbus-secret-service v4.1.0
[INFO] [stderr]    Compiling bitfield v0.19.4
[INFO] [stderr]    Compiling keyring v3.6.3
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling crypto-bigint v0.5.5
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling spki v0.7.3
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling rfc6979 v0.4.0
[INFO] [stderr]    Compiling pkcs8 v0.10.2
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling sec1 v0.7.3
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling elliptic-curve v0.13.8
[INFO] [stderr]    Compiling primeorder v0.13.6
[INFO] [stderr]    Compiling ecdsa v0.16.9
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling p256 v0.13.2
[INFO] [stderr]    Compiling oid v0.2.1
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling picky-asn1 v0.10.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling picky-asn1-der v0.5.6
[INFO] [stderr]    Compiling picky-asn1-x509 v0.15.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 30.35s
[INFO] running `Command { std: "docker" "inspect" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", 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" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tss-esapi v7.7.0
[INFO] [stderr]    Compiling hardware-enclave v0.2.10 (/opt/rustwide/workdir/crates/hardware-enclave)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 25.00s
[INFO] running `Command { std: "docker" "inspect" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", 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" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.13s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/hardware_enclave-6705e759073588e2)
[INFO] [stdout] 
[INFO] [stdout] running 1029 tests
[INFO] [stdout] test auth::tests::evict_presence_cache_is_noop_on_linux ... ok
[INFO] [stdout] test auth::tests::platform_capabilities_does_not_panic ... ok
[INFO] [stdout] test auth::tests::request_presence_never_panics ... ok
[INFO] [stdout] test auth::tests::evict_presence_cache_never_panics ... ok
[INFO] [stdout] test auth::tests::request_presence_returns_not_available_on_linux ... ok
[INFO] [stdout] test auth::tests::request_presence_returns_not_available_when_no_biometric ... ok
[INFO] [stdout] test capabilities::tests::has_keychain_entitlement_returns_false_for_unknown_group ... ok
[INFO] [stdout] test capabilities::tests::is_binary_signed_returns_false_in_cargo_test ... ok
[INFO] [stdout] test capabilities::tests::security_capabilities_does_not_panic ... ok
[INFO] [stdout] test encryption::tests::debug_does_not_expose_key_material ... ok
[INFO] [stdout] test error::tests::from_storage_error_all_variants_convert ... ok
[INFO] [stdout] test error::tests::from_storage_error_policy_mismatch_preserves_detail ... ok
[INFO] [stdout] test factory::tests::create_auth_does_not_panic ... ok
[INFO] [stdout] test hardening::tests::harden_process_zeroes_core_dump_rlimit ... ok
[INFO] [stdout] test integrity::tests::path_to_label_differs_for_different_paths ... ok
[INFO] [stdout] test integrity::tests::path_to_label_is_64_chars ... ok
[INFO] [stdout] test integrity::tests::path_to_label_is_stable ... ok
[INFO] [stdout] test integrity::tests::read_store_unavailable_returns_content ... ok
[INFO] [stdout] test integrity::tests::sidecar_missing_sidecar_is_legacy ... ok
[INFO] [stdout] test integrity::tests::sidecar_not_found_on_missing_file ... ok
[INFO] [stdout] test integrity::tests::trust_anchor_mode_is_not_default ... ok
[INFO] [stdout] test integrity::tests::sidecar_store_unavailable_returns_correct_outcome ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::app_spec_clone_is_equal ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::config_override_command_line_flag_stores_flag ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::config_override_different_variants_are_not_equal ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::config_override_environment_variable_stores_name ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::config_override_none_variant_equality ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::supports_all_three_integration_types_when_all_listed ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::supports_returns_false_for_empty_supported_list ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::supports_returns_false_when_integration_is_not_in_list ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::supports_returns_true_when_integration_is_in_list ... ok
[INFO] [stdout] test internal::app_adapter::app_spec::tests::supports_temp_materialized_config_only ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::app_data_dir_delegates_to_with_env ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::default_config_dir_env_derives_correctly ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::app_data_dir_with_env_default_uses_derived_env_var ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::app_data_dir_with_env_falls_through_when_unset ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_creates_parent_dir_with_restricted_permissions ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::app_data_dir_with_env_joins_app_name ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_get_nonexistent_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_delete_nonexistent_returns_false ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::app_data_dir_with_env_respects_override ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_list_on_empty_directory_returns_empty_vec ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_delete_removes_record ... ok
[INFO] [stdout] test integrity::tests::sidecar_migrate_creates_valid_sidecar ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_concurrent_upserts_with_different_ids_both_persist ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::memory_store_round_trip ... ok
[INFO] [stdout] test internal::app_adapter::common::tests::restore_previous_secret_overwrites_existing ... ok
[INFO] [stdout] test internal::app_adapter::common::tests::restore_previous_secret_with_none ... ok
[INFO] [stdout] test internal::app_adapter::common::tests::restore_previous_secret_with_none_when_no_existing_value ... ok
[INFO] [stdout] test internal::app_adapter::common::tests::restore_previous_secret_with_some ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::boundary_exactly_at_max_age ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::cache_file_path_empty_components_list ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_persistence_round_trip ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_mutate_nonexistent_id_leaves_store_unchanged ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::cache_file_path_encodes_special_chars ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::cache_file_path_multiple_components ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_mutate_applies_and_persists_change ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::cache_file_path_single_component ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::classify_exactly_at_grace_end ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_list_returns_all_records ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_upsert_overwrites_existing_record ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::classify_exactly_at_refresh_window_end ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_corrupt_file_returns_error_no_panic ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::classify_one_before_grace_end ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::classify_exactly_one_before_refresh_window ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::classify_one_before_refresh_window_end ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::encode_cache_component_empty ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::encode_cache_component_special_chars ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::classify_issued_in_future_is_fresh ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::encode_cache_component_simple ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::upserts_and_reads_records ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::encode_cache_component_unicode_multi_byte ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::exec_with_credential_rejects_empty_command ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::expired_after_grace ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::no_session_timeout_by_default ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::fresh_within_max_age ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::grace_after_refresh_window ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::encode_cache_component_tilde_is_encoded ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::now_secs_returns_nonzero ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::refresh_window_after_max_age ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::session_timeout_at_exact_boundary_is_expired ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::session_timeout_overrides_fresh ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::session_timeout_one_before_boundary_is_not_expired ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::system_time_secs_before_epoch_returns_zero ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::validate_https_url_accepts_https ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::validate_https_url_empty_string_is_error ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::validate_https_url_rejects_http ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::validate_https_url_no_scheme ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::validate_https_url_rejects_other ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::validate_https_url_ftp_scheme_is_error ... ok
[INFO] [stdout] test internal::app_adapter::credential_cache::tests::zero_age_is_fresh ... ok
[INFO] [stdout] test internal::app_adapter::error::tests::all_variants_display_nonempty_messages ... ok
[INFO] [stdout] test internal::app_adapter::error::tests::from_storage_error_produces_storage_variant ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::all_three_prefers_helper_tool ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::chooses_least_secret_exposing_mode ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::duplicate_entries_still_selects_correct_priority ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::empty_supported_list_returns_error ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::env_interpolation_wins_over_temp_materialized_config ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::helper_tool_wins_over_env_interpolation ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::helper_tool_wins_over_temp_materialized_config ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::only_env_interpolation_is_selected ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::only_helper_tool_is_selected ... ok
[INFO] [stdout] test internal::app_adapter::execution_plan::tests::only_temp_materialized_config_is_selected ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::env_key_eq_empty_strings_are_equal ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::env_key_starts_with_empty_prefix_always_true ... ok
[INFO] [stdout] test integrity::tests::trust_anchor_sidecar_deletion_is_still_match_or_legacy ... ok
[INFO] [stdout] test integrity::tests::sidecar_write_and_verify_match ... ok
[INFO] [stdout] test integrity::tests::sidecar_invalid_hex_returns_tamper ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::env_key_eq_exact_match_is_case_sensitive ... ok
[INFO] [stdout] test integrity::tests::sidecar_delete_sidecar_is_legacy_not_tamper ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::env_key_starts_with_full_key_as_prefix_matches ... ok
[INFO] [stdout] test integrity::tests::sidecar_truncated_sidecar_is_tamper ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::env_key_starts_with_longer_prefix_does_not_match ... ok
[INFO] [stdout] test integrity::tests::sidecar_tampered_file_detected ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_bare_star_matches_any_key ... ok
[INFO] [stdout] test integrity::tests::sidecar_read_tampered_returns_error ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_empty_never_matches ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_empty_patterns_never_matches ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_exact ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_exact_does_not_match_longer_key ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_multiple_patterns_any_match_wins ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::matches_scrub_pattern_prefix ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::run_returns_err_when_binary_does_not_exist ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::child_inherits_zero_core_limit ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::run_returns_ok_with_failure_for_nonzero_exit ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::with_env_scrub_appends_patterns ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::zeroize_str_clears_contents ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::zeroize_str_preserves_length_and_zeroes_bytes ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::best_launch_errors_when_no_candidate_matches ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::run_returns_ok_with_success_for_exit_zero ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::env_interpolation_without_config_bytes_produces_no_temp_file ... ok
[INFO] [stdout] 1000
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::helper_tool_selected_first_when_all_three_integrations_supported ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::prepared_launch_without_temp_config_has_no_temp_config_path ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::prepares_helper_tool_launch_without_temp_config ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::scrub_prefix_strips_all_matching_vars_not_just_first ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::rejects_unsupported_integration_payload ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::applies_to_config_path_returns_true_when_set ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::has_any_install_provenance_empty_record ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::has_any_install_provenance_with_legacy_metadata ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::install_provenance_serde_round_trip ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::legacy_provenance_does_not_match_different_path ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::legacy_provenance_fallback ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::remove_legacy_provenance ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::has_any_install_provenance_with_provenance ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::run_with_large_argument_list_does_not_panic ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::remove_provenance_for_path_single_entry ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::remove_provenance_for_path_with_multiple_entries ... ok
[INFO] [stdout] test internal::app_adapter::launcher::tests::scrub_removes_inherited_env_from_child_and_own_process ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::set_and_get_provenance_for_path ... ok
[INFO] [stdout] test internal::app_adapter::provenance::tests::remove_provenance_nonexistent_path ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_aliased_to_marker ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::empty_path_component_does_not_panic ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_is_an_alias_for_marker ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_multiword_command_preserved ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_no_marker_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_strips_backtick ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_trims_trailing_whitespace ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_function_command_basic ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_alias_command_strips_single_quotes ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_function_command_closing_before_opening_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_function_command_no_braces_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_function_command_only_comment_lines_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_function_command_skips_comment_lines ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::extract_function_command_skips_empty_lines ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_builtin_prefix_stripped ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::missing_config_override_when_none_used_with_temp_materialized_config ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_empty_vec_unchanged ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_command_with_double_dash ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_env_dash_dash_and_assignment_stripped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_env_with_assignment_stripped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_command_prefix_stripped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_exec_prefix_stripped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_env_prefix_stripped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_nested_command_builtin ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_no_wrapper_unchanged ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::normalize_wrapper_tokens_preserves_trailing_args ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_empty_after_strip_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_raw_preserved ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_simple_program ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_strips_dollar_at ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_strips_quoted_dollar_at ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_with_fixed_args ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parse_command_string_wrapper_stripped ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::prepares_best_launch_using_least_secret_exposing_available_candidate ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parses_alias_description ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parses_function_description ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::parses_shell_builtin_wrapper_function_description ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::prepares_env_interpolation_launch_with_temp_file ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::shell_quote_dollar_sign_not_escaped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::shell_quote_simple_string ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::shell_quote_empty_string ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::shell_quote_string_with_spaces ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::shell_quote_string_with_single_quote ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_backtick_wrapped ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_double_quoted ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_empty_string ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_no_quotes_unchanged ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_trims_whitespace ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_whitespace_then_single_quotes ... ok
[INFO] [stdout] test internal::app_adapter::prepare_launch::tests::prepares_temp_materialized_launch_with_flag_override ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::get_read_on_memory_store_returns_present_even_for_sentinel_bytes ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::unquote_command_single_quoted ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::get_read_on_memory_store_wraps_absent ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::is_redacted_placeholder_false_for_other_strings ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::is_redacted_placeholder_false_for_empty_string ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::get_read_on_memory_store_wraps_present ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::is_redacted_placeholder_true_for_sentinel ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::memory_store_delete_nonexistent_returns_false ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::memory_store_get_nonexistent_returns_none ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::memory_store_mark_redacted_makes_get_read_return_redacted ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::memory_store_mark_redacted_makes_legacy_get_return_sentinel ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::memory_store_round_trip ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::memory_store_set_overwrites ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::redacted_placeholder_constant_is_not_empty ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::redacted_placeholder_is_recognizable ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::get_read_on_read_only_store_returns_absent_when_no_entry ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::secret_read_clone_preserves_variant ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::secret_read_helpers ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::read_only_store_delete_returns_error ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::secret_read_into_present_returns_value ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::secret_read_is_present_false_for_redacted_and_absent ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::secret_read_is_absent_false_for_present_and_redacted ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::secret_read_is_redacted_false_for_present_and_absent ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::resolves_explicit_path ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::get_read_on_read_only_store_returns_redacted_for_existing_entry ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::read_only_store_returns_none_when_no_file ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::read_only_store_set_returns_error ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::read_only_store_returns_none_when_dir_missing ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_state_error_with_dirty_contains_inconsistent_message ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_state_error_with_mutating_contains_mutating_message ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_state_error_with_none_is_none ... ok
[INFO] [stdout] test internal::app_adapter::secret_store::tests::read_only_store_returns_redacted_for_existing_secret ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_state_error_with_stable_is_none ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_dirty_with_dirty_prefix_is_true ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_dirty_with_empty_string_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_dirty_with_mutating_prefix_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_dirty_with_none_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_dirty_with_stable_prefix_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_mutating_with_dirty_prefix_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_mutating_with_mutating_prefix_is_true ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_mutating_with_none_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_mutating_with_empty_string_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::state_version_is_mutating_with_stable_prefix_is_false ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_lock_recovers_stale_mutating_state_with_unlocked_lock_file ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::shred_file_empty_file_is_noop ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::shred_file_nonexistent_path_is_noop ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_lock_detects_unlocked_state_change ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::drop_shreds_temp_file_before_deletion ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_lock_recovers_stale_mutating_state_without_lock ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::shred_file_large_file_all_zeros ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::read_only_lock_rejects_dirty_state_version ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::temp_config_write_empty_contents ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_clone_is_equal ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_debug_format_contains_value ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_empty_string ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_from_str_ref_produces_equal_value ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_from_str_and_from_string_are_equal ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_from_string_produces_equal_value ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_new_stores_and_as_str_returns_same_string ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_ord_lexicographic ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_serde_json_roundtrip ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_id_serde_json_serializes_as_plain_string ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::temp_config_path_is_inside_temp_dir ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::shred_file_overwrites_contents_with_zeros ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::auto_resolution_prefers_command_v_over_path_lookup ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_record_empty_metadata_roundtrips ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::binding_record_serde_roundtrip ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::integration_type_all_variants_equal_to_themselves ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::integration_type_all_variants_not_equal_to_others ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::integration_type_debug_format_nonempty ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::integration_type_serde_roundtrip_all_variants ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::resolution_strategy_all_variants_equal_to_themselves ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::resolution_strategy_distinct_variants_not_equal ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::resolved_program_clone_is_equal ... ok
[INFO] [stdout] test internal::app_adapter::types::tests::resolved_program_struct_construction ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::kind_str_roundtrips_through_parse_kind ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::kind_str_values_are_lowercase_ascii ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::parse_kind_keyring_returns_keyring ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::path_lookup_ignores_non_executable_files ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::temp_config_write_binary_contents ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::parse_kind_se_returns_secure_enclave ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::parse_kind_tpm_bridge_returns_tpm_bridge ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::parse_kind_unknown_returns_none ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::parse_kind_tpm_returns_tpm ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::parse_kind_windows_dpapi_returns_windows_dpapi ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::read_returns_none_when_marker_absent ... ok
[INFO] [stdout] test internal::app_adapter::temp_config::tests::writes_and_reads_temp_config ... ok
[INFO] [stdout] test internal::app_storage::encryption::tests::ensure_key_generates_new_key_when_none_exists ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::backend_kind_all_pairs_not_equal ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::backend_kind_all_variants_display_nonempty ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::backend_kind_clone ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::backend_kind_debug_nonempty ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::backend_kind_display ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::backend_kind_eq ... ok
[INFO] [stdout] test internal::app_storage::encryption::tests::ensure_key_with_missing_metadata_but_existing_key_uses_as_is ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::stateful_lock_marks_state_dirty_on_panic ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::check_meta_integrity_succeeds_when_meta_file_absent ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::read_returns_none_for_unrecognized_kind ... ok
[INFO] [stdout] test internal::app_storage::tests::re_exports_work ... ok
[INFO] [stdout] test internal::app_storage::tests::storage_config_clone ... ok
[INFO] [stdout] test internal::app_storage::tests::storage_config_debug ... ok
[INFO] [stdout] test internal::app_storage::tests::storage_config_default_field_values ... ok
[INFO] [stdout] test internal::app_storage::tests::storage_config_with_access_group ... ok
[INFO] [stdout] test internal::app_storage::tests::storage_config_with_keys_dir_override ... ok
[INFO] [stdout] test internal::app_storage::tests::storage_error_display ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::find_bridge_executable_returns_none_on_dev_machine ... ok
[INFO] [stdout] test internal::app_storage::platform::tests::verify_meta_integrity_succeeds_when_meta_file_absent ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::with_state_lock_happy_path_returns_value ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_decrypt_initializes_before_decrypting ... ok
[INFO] [stdout] test internal::app_storage::encryption::tests::ensure_key_with_mismatched_policy_deletes_and_regenerates ... ok
[INFO] [stdout] test internal::app_adapter::state_lock::tests::with_state_lock_writes_stable_version_on_success ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_decrypt_rejects_missing_result_payload ... ok
[INFO] [stdout] test internal::app_storage::encryption::tests::ensure_key_with_matching_policy_is_noop ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_delete_alias_works ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::resolves_alias_chain_via_fake_shell ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::resolve_in_path_only_mode_with_shell_env_absent_does_not_panic ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_delete_sends_delete_request ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::write_overwrites_existing_marker ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_delete_signing_sends_delete_signing_method ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_destroy_sends_delete_method_on_wire ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_encrypt_initializes_before_encrypting ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::alias_recursion_depth_exceeded_returns_error ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_encrypt_rejects_missing_result_payload ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_init_encodes_access_policy_only ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_init_rejects_missing_result_payload ... ok
[INFO] [stdout] test internal::app_storage::backend_marker::tests::write_then_read_roundtrips_each_kind ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_init_sends_key_label ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_init_signing_sends_init_signing_method ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_list_keys_is_standalone ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_public_key_is_standalone ... ok
[INFO] [stdout] test internal::app_adapter::resolver::tests::rejects_non_path_command_v_output ... ok
[INFO] [stdout] test internal::app_adapter::binding_store::tests::json_store_large_record_count_lists_correctly ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_read_times_out_on_silent_bridge ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_rejects_empty_response ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_rejects_invalid_json_response ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_rejects_oversized_response ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_params_any_access_policy ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_params_biometric_only_access_policy ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_params_default_values ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_params_roundtrip_preserves_all_fields ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_params_wire_format_omits_biometric_field ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_request_all_methods ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_request_defaults_for_missing_fields ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_request_ignores_legacy_biometric_field ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_request_serde_roundtrip ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_decode_result_empty_string ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_decode_result_rejects_invalid_base64 ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_decode_result_works ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_error_construction ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_error_preserves_message ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_ok_construction ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_require_ok_rejects_error ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_require_ok_rejects_null ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_require_ok_succeeds_on_ok ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_require_result_rejects_error ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_require_result_rejects_null ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_serde_roundtrip ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_success_construction ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::bridge_response_success_with_empty_result ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::decode_data_empty_string_returns_empty_vec ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::decode_data_invalid_base64_returns_error ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::decode_data_rejects_invalid_base64 ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::effective_access_policy_with_all_variants ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::encode_decode_binary_data_with_null_bytes ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::encode_decode_large_data_1mb ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::encode_decode_roundtrip_empty ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::encode_decode_roundtrip_large ... ok
[INFO] [stdout] test internal::bridge::protocol::tests::encode_decode_roundtrip_small ... ok
[INFO] [stdout] test internal::cache::envelope::tests::counter_path_appends_suffix ... ok
[INFO] [stdout] test internal::cache::envelope::tests::counter_path_no_extension_appends_counter_suffix ... ok
[INFO] [stdout] test internal::cache::envelope::tests::counter_path_preserves_parent_directory ... ok
[INFO] [stdout] test internal::cache::envelope::tests::counter_read_missing_returns_zero ... ok
[INFO] [stdout] test internal::cache::envelope::tests::counter_write_read_roundtrip ... ok
[INFO] [stdout] test internal::cache::envelope::tests::envelope_error_header_mismatch_display ... ok
[INFO] [stdout] test internal::cache::envelope::tests::envelope_error_rollback_display ... ok
[INFO] [stdout] test internal::cache::envelope::tests::envelope_overhead_is_correct ... ok
[INFO] [stdout] test internal::cache::envelope::tests::next_counter_both_zero_gives_one ... ok
[INFO] [stdout] test internal::cache::envelope::tests::next_counter_observed_larger_wins ... ok
[INFO] [stdout] test internal::cache::envelope::tests::next_counter_saturates_at_u64_max ... ok
[INFO] [stdout] test internal::cache::envelope::tests::next_counter_sidecar_larger_wins ... ok
[INFO] [stdout] test internal::cache::envelope::tests::next_counter_takes_max_and_increments ... ok
[INFO] [stdout] test internal::cache::envelope::tests::read_counter_short_file_returns_zero ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_accepts_counter_eq_min ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_exactly_overhead_empty_payload_roundtrips ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_legacy_payload_method ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_legacy_plaintext_passes_through ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_rejects_header_tamper ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_rejects_rollback ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_too_short_is_treated_as_legacy ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_versioned_into_payload ... ok
[INFO] [stdout] test internal::cache::envelope::tests::unwrap_versioned_payload_method ... ok
[INFO] [stdout] test internal::cache::envelope::tests::wrap_plaintext_empty_payload_produces_overhead_only ... ok
[INFO] [stdout] test internal::cache::envelope::tests::wrap_unwrap_roundtrip ... ok
[INFO] [stdout] test internal::cache::tests::awsenc_format_round_trip ... ok
[INFO] [stdout] test internal::cache::tests::be_helpers_with_offset ... ok
[INFO] [stdout] test internal::cache::tests::decode_trailing_bytes_less_than_4_ignored ... ok
[INFO] [stdout] test internal::cache::tests::decode_truncated_blob_data ... ok
[INFO] [stdout] test internal::cache::tests::decode_truncated_too_short_for_header_data ... ok
[INFO] [stdout] test internal::cache::tests::decode_truncated_too_short_for_prefix ... ok
[INFO] [stdout] test internal::cache::tests::decode_wrong_magic ... ok
[INFO] [stdout] test internal::cache::tests::decode_wrong_version ... ok
[INFO] [stdout] test internal::cache::tests::error_display_bad_magic ... ok
[INFO] [stdout] test internal::cache::tests::error_display_bad_version ... ok
[INFO] [stdout] test internal::cache::tests::error_display_io ... ok
[INFO] [stdout] test internal::cache::tests::error_display_truncated ... ok
[INFO] [stdout] test internal::cache::tests::error_source_io ... ok
[INFO] [stdout] test internal::cache::tests::error_source_non_io ... ok
[INFO] [stdout] test internal::cache::tests::i64_be_helpers ... ok
[INFO] [stdout] test internal::cache::tests::read_header_nonexistent_returns_none ... ok
[INFO] [stdout] test internal::cache::tests::read_header_only ... ok
[INFO] [stdout] test internal::cache::tests::read_header_truncated_file ... ok
[INFO] [stdout] test internal::cache::tests::read_nonexistent_returns_none ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_empty_blobs ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_large_blob ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_no_header_data ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_one_blob ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_three_blobs ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_two_blobs ... ok
[INFO] [stdout] test internal::cache::tests::round_trip_zero_blobs ... ok
[INFO] [stdout] test internal::cache::tests::ssojwt_format_round_trip ... ok
[INFO] [stdout] test internal::cache::tests::u32_be_helpers ... ok
[INFO] [stdout] test internal::cache::tests::u64_be_helpers ... ok
[INFO] [stdout] test internal::cache::tests::write_and_read_file ... ok
[INFO] [stdout] test internal::cache::tests::write_atomic_old_fd_sees_old_content_new_reader_sees_new_content ... ok
[INFO] [stdout] test internal::cache::tests::write_creates_parent_directories ... ok
[INFO] [stdout] test internal::cache::tests::write_is_atomic_overwrites_existing ... ok
[INFO] [stdout] test internal::cache::tests::write_sets_restricted_permissions ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::app_name_parameterizes_windows_install_dir ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::binary_discovery_context_default_all_none ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::candidate_dirs_deduplicates_exe_sibling_matching_stable_dir ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::candidate_dirs_exe_sibling_appended_as_fallback ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::candidate_dirs_no_home_no_exe_includes_fixed_unix_dirs ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::candidate_dirs_with_home_prepends_user_dirs ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::find_trusted_binary_with_context_prefers_stable_dir_over_exe_sibling ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::find_trusted_binary_with_context_returns_none_for_absent_binary ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::finds_current_exe_sibling_as_fallback ... ok
[INFO] [stdout] test internal::core::bin_discovery::tests::non_executable_file_is_not_discovered ... ok
[INFO] [stdout] test internal::core::config::tests::load_toml_empty_file_uses_defaults ... ok
[INFO] [stdout] test internal::core::config::tests::load_toml_parses_valid ... ok
[INFO] [stdout] test internal::core::config::tests::load_toml_partial_fields_uses_defaults_for_missing ... ok
[INFO] [stdout] test internal::core::config::tests::load_toml_rejects_invalid ... ok
[INFO] [stdout] test internal::core::config::tests::load_toml_returns_default_for_missing ... ok
[INFO] [stdout] test internal::core::config::tests::save_load_roundtrip_with_special_characters_in_name ... ok
[INFO] [stdout] test internal::core::config::tests::save_load_toml_roundtrip ... ok
[INFO] [stdout] test internal::core::config::tests::save_toml_creates_parent_dirs ... ok
[INFO] [stdout] test internal::core::config::tests::save_toml_overwrites_existing_file ... ok
[INFO] [stdout] test internal::core::config::tests::save_toml_produces_valid_toml_content ... ok
[INFO] [stdout] test internal::core::config_block::tests::build_block_adds_markers ... ok
[INFO] [stdout] test internal::core::config_block::tests::build_block_body_already_has_trailing_newline ... ok
[INFO] [stdout] test internal::core::config_block::tests::build_block_empty_body ... ok
[INFO] [stdout] test internal::core::config_block::tests::build_block_ensures_trailing_newline_on_body ... ok
[INFO] [stdout] test internal::core::config_block::tests::custom_markers_exact_strings ... ok
[INFO] [stdout] test internal::core::config_block::tests::custom_markers_used_in_build_and_upsert ... ok
[INFO] [stdout] test internal::core::config_block::tests::custom_markers_used_in_find_block ... ok
[INFO] [stdout] test internal::core::config_block::tests::find_block_locates_markers ... ok
[INFO] [stdout] test internal::core::config_block::tests::find_block_no_trailing_newline_at_end_of_string ... ok
[INFO] [stdout] test internal::core::config_block::tests::find_block_returns_none_for_begin_without_end ... ok
[INFO] [stdout] test internal::core::config_block::tests::find_block_returns_none_when_missing ... ok
[INFO] [stdout] test internal::core::config_block::tests::has_block_false_when_absent ... ok
[INFO] [stdout] test internal::core::config_block::tests::has_block_false_with_only_begin_no_end ... ok
[INFO] [stdout] test internal::core::config_block::tests::has_block_true_when_present ... ok
[INFO] [stdout] test internal::core::config_block::tests::install_and_remove_file_round_trip ... ok
[INFO] [stdout] test internal::core::config_block::tests::install_block_creates_file_if_missing ... ok
[INFO] [stdout] test internal::core::config_block::tests::markers_with_id ... ok
[INFO] [stdout] test internal::core::config_block::tests::markers_with_id_blocks_distinguish_by_id ... ok
[INFO] [stdout] test internal::core::config_block::tests::multiple_blocks_with_different_ids ... ok
[INFO] [stdout] test internal::core::config_block::tests::read_config_file_empty_file_returns_some_empty_string ... ok
[INFO] [stdout] test internal::core::config_block::tests::read_config_file_normalizes_crlf ... ok
[INFO] [stdout] test internal::core::config_block::tests::read_config_file_returns_none_for_missing ... ok
[INFO] [stdout] test internal::core::config_block::tests::remove_block_at_end_of_content ... ok
[INFO] [stdout] test internal::core::config_block::tests::remove_block_at_start_of_content ... ok
[INFO] [stdout] test internal::core::config_block::tests::remove_block_from_file_missing_file_is_not_present ... ok
[INFO] [stdout] test internal::core::config_block::tests::remove_block_leaves_empty_string_when_only_content ... ok
[INFO] [stdout] test internal::core::config_block::tests::remove_block_not_present ... ok
[INFO] [stdout] test internal::core::config_block::tests::remove_block_removes_and_cleans ... ok
[INFO] [stdout] test internal::core::config_block::tests::standard_markers ... ok
[INFO] [stdout] test internal::core::config_block::tests::upsert_appends_to_empty ... ok
[INFO] [stdout] test internal::core::config_block::tests::upsert_appends_with_separator ... ok
[INFO] [stdout] test internal::core::config_block::tests::upsert_content_already_ending_with_double_newline ... ok
[INFO] [stdout] test internal::core::config_block::tests::upsert_preserves_content_around_block ... ok
[INFO] [stdout] test internal::core::config_block::tests::upsert_replaces_existing ... ok
[INFO] [stdout] test internal::core::config_block::tests::write_config_file_sets_permissions ... ok
[INFO] [stdout] test internal::core::daemon::tests::already_running_short_circuits_without_spawning ... ok
[INFO] [stdout] test internal::core::daemon::tests::binary_exits_nonzero_returns_spawn_failed_promptly ... ok
[INFO] [stdout] test internal::core::daemon::tests::binary_exits_zero_without_socket_returns_not_ready_promptly ... ok
[INFO] [stdout] test internal::core::daemon::tests::fork_style_daemon_exit_zero_after_socket_bound_returns_spawned ... ok
[INFO] [stdout] test internal::core::daemon::tests::missing_binary_reports_binary_not_found ... ok
[INFO] [stdout] test internal::core::daemon::tests::not_ready_diagnostic_caps_stderr_at_8kib ... ok
[INFO] [stdout] test internal::core::daemon::tests::not_ready_diagnostic_includes_child_stderr_on_exit_zero_path ... ok
[INFO] [stdout] test internal::core::daemon::tests::not_ready_display_embeds_diagnostic ... ok
[INFO] [stdout] test internal::core::error::tests::display_config ... ok
[INFO] [stdout] test internal::core::error::tests::display_decrypt_failed ... ok
[INFO] [stdout] test internal::core::error::tests::display_duplicate_label ... ok
[INFO] [stdout] test internal::core::error::tests::display_encrypt_failed ... ok
[INFO] [stdout] test internal::core::error::tests::display_generate_failed ... ok
[INFO] [stdout] test internal::core::error::tests::display_invalid_label ... ok
[INFO] [stdout] test internal::core::error::tests::display_key_not_found ... ok
[INFO] [stdout] test internal::core::error::tests::display_key_operation ... ok
[INFO] [stdout] test internal::core::error::tests::display_keychain_auth_denied ... ok
[INFO] [stdout] test internal::core::error::tests::display_keychain_interaction_required ... ok
[INFO] [stdout] test internal::core::error::tests::display_keychain_no_window_server ... ok
[INFO] [stdout] test internal::core::error::tests::display_not_available ... ok
[INFO] [stdout] test internal::core::error::tests::display_serialization ... ok
[INFO] [stdout] test internal::core::error::tests::display_sign_failed ... ok
[INFO] [stdout] test internal::core::error::tests::display_user_cancelled ... ok
[INFO] [stdout] test internal::core::error::tests::from_io_error ... ok
[INFO] [stdout] test internal::core::error::tests::from_serde_json_error ... ok
[INFO] [stdout] test internal::core::error::tests::from_toml_de_error ... ok
[INFO] [stdout] test internal::core::metadata::tests::atomic_write_creates_file ... ok
[INFO] [stdout] test internal::core::metadata::tests::atomic_write_ignores_preexisting_legacy_tmp_file ... ok
[INFO] [stdout] test internal::core::metadata::tests::atomic_write_syncs_parent_directory_after_rename ... ok
[INFO] [stdout] test internal::core::metadata::tests::compute_meta_hmac_bytes_different_data_produces_different_tag ... ok
[INFO] [stdout] test internal::core::metadata::tests::compute_meta_hmac_bytes_different_key_produces_different_tag ... ok
[INFO] [stdout] test internal::core::metadata::tests::compute_meta_hmac_bytes_is_deterministic ... ok
[INFO] [stdout] test internal::core::metadata::tests::compute_meta_hmac_bytes_long_key_exercises_hash_path ... ok
[INFO] [stdout] test internal::core::metadata::tests::compute_meta_hmac_bytes_output_is_32_bytes ... ok
[INFO] [stdout] test internal::core::metadata::tests::compute_meta_hmac_is_stable ... ok
[INFO] [stdout] test internal::core::metadata::tests::config_dir_returns_absolute_path ... ok
[INFO] [stdout] test internal::core::metadata::tests::constant_time_eq_empty_slices_are_equal ... ok
[INFO] [stdout] test internal::core::metadata::tests::constant_time_eq_rejects_length_mismatch ... ok
[INFO] [stdout] test internal::core::metadata::tests::delete_key_files_removes_all ... ok
[INFO] [stdout] test internal::core::metadata::tests::delete_key_files_returns_key_not_found ... ok
[INFO] [stdout] test internal::core::metadata::tests::dir_lock_acquire_and_drop ... ok
[INFO] [stdout] test internal::core::metadata::tests::dir_lock_blocks_until_first_holder_releases ... ok
[INFO] [stdout] test internal::core::metadata::tests::ensure_dir_creates_nested ... ok
[INFO] [stdout] test internal::core::metadata::tests::key_meta_app_field_roundtrip ... ok
[INFO] [stdout] test internal::core::metadata::tests::key_meta_clone_preserves_all_fields ... ok
[INFO] [stdout] test internal::core::metadata::tests::key_meta_new_sets_timestamp ... ok
[INFO] [stdout] test internal::core::metadata::tests::key_meta_serde_roundtrip ... ok
[INFO] [stdout] test internal::core::metadata::tests::keys_dir_returns_absolute_path ... ok
[INFO] [stdout] test internal::core::metadata::tests::list_labels_empty_for_nonexistent_dir ... ok
[INFO] [stdout] test internal::core::metadata::tests::list_labels_finds_meta_files ... ok
[INFO] [stdout] test internal::core::metadata::tests::list_labels_for_extensions_includes_unique_sorted_stems ... ok
[INFO] [stdout] test internal::core::metadata::tests::list_labels_for_extensions_skips_invalid_labels ... ok
[INFO] [stdout] test internal::core::metadata::tests::load_meta_returns_default_for_missing ... ok
[INFO] [stdout] test internal::core::metadata::tests::load_pub_key_returns_key_not_found ... ok
[INFO] [stdout] test internal::core::metadata::tests::meta_hmac_legacy_mode_accepts_missing_sidecar ... ok
[INFO] [stdout] test internal::core::metadata::tests::meta_hmac_rejects_tampered_meta ... ok
[INFO] [stdout] test internal::core::metadata::tests::meta_hmac_rejects_wrong_key ... ok
[INFO] [stdout] test internal::core::metadata::tests::meta_hmac_roundtrip_accepts_unchanged_meta ... ok
[INFO] [stdout] test internal::core::metadata::tests::meta_hmac_strict_rejects_missing_sidecar ... ok
[INFO] [stdout] test internal::core::metadata::tests::metadata_label_operations_reject_invalid_labels ... ok
[INFO] [stdout] test internal::core::metadata::tests::migrate_meta_to_hmac_errors_for_missing_meta ... ok
[INFO] [stdout] test internal::core::metadata::tests::migrate_meta_to_hmac_writes_sidecar_for_legacy_meta ... ok
[INFO] [stdout] test internal::core::metadata::tests::read_no_follow_reads_file_content ... ok
[INFO] [stdout] test internal::core::metadata::tests::read_no_follow_returns_error_for_missing_file ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_rejects_existing_target ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_rejects_existing_target_pub_without_meta ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_rejects_missing_source ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_renames_and_updates_meta ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_rolls_back_when_metadata_update_fails ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_with_sidecar_recomputes_hmac_under_new_label ... ok
[INFO] [stdout] test internal::core::metadata::tests::rename_key_files_with_sidecar_requires_hmac_key ... ok
[INFO] [stdout] test internal::core::metadata::tests::restrict_file_permissions_succeeds ... ok
[INFO] [stdout] test internal::core::metadata::tests::save_load_meta_roundtrip ... ok
[INFO] [stdout] test internal::core::metadata::tests::save_load_pub_key_roundtrip ... ok
[INFO] [stdout] test internal::core::metadata::tests::sync_pub_key_repairs_mismatched_cache ... ok
[INFO] [stdout] test internal::core::metadata::tests::sync_pub_key_writes_missing_cache ... ok
[INFO] [stdout] test internal::core::platform::tests::hardware_name_is_not_empty ... ok
[INFO] [stdout] test internal::core::platform::tests::hardware_name_is_one_of_known_values ... ok
[INFO] [stdout] test internal::core::platform::tests::is_macos_and_is_windows_are_mutually_exclusive ... ok
[INFO] [stdout] test internal::core::platform::tests::platform_functions_are_consistent ... ok
[INFO] [stdout] test internal::core::process::tests::core_dumps_are_disabled ... ok
[INFO] [stdout] test internal::core::process::tests::harden_process_does_not_panic ... ok
[INFO] [stdout] test internal::core::process::tests::mlock_buffer_nonzero_length_does_not_panic ... ok
[INFO] [stdout] test internal::core::process::tests::mlock_empty_buffer ... ok
[INFO] [stdout] test internal::core::process::tests::munlock_after_mlock_does_not_panic ... ok
[INFO] [stdout] test internal::core::process::tests::munlock_empty_buffer ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_backslash_and_space ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_empty ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_mixed ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_newline_is_quoted ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_no_quoting_needed ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_only_backslash ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_only_double_quote ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_with_backslashes ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_with_quotes ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_with_spaces ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_config_value_with_tab ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_credential_process_backslash_path ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_credential_process_simple ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_credential_process_with_spaces ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_ssh_path_no_spaces_not_quoted ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_ssh_path_simple ... ok
[INFO] [stdout] test internal::core::quoting::tests::quote_ssh_path_with_spaces ... ok
[INFO] [stdout] test internal::core::signing::tests::already_suffixed_not_doubled ... ok
[INFO] [stdout] test internal::core::signing::tests::is_binary_signed_false_in_tests ... ok
[INFO] [stdout] test internal::core::signing::tests::unsigned_binary_gets_suffix ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_after_eof_returns_none ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_empty_line_newline_only ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_empty_reader_returns_none ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_eof_without_newline ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_error_message_contains_cap ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_exactly_max_bytes_at_eof_no_newline ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_large_cap_long_line ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_line_at_exact_cap_succeeds ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_line_exceeds_cap_returns_invalid_data ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_max_bytes_zero_newline_first_succeeds ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_max_bytes_zero_non_newline_first_is_error ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_multiple_lines_reads_sequentially ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_only_newlines ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_single_char_at_eof ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_single_line_with_newline ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::read_line_bounded_utf8_content ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::timeout_result_completed_into_option_is_some ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::timeout_result_completed_is_not_timed_out ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::timeout_result_timed_out_into_option_is_none ... ok
[INFO] [stdout] test internal::core::timeout::pure_tests::timeout_result_timed_out_is_timed_out ... ok
[INFO] [stdout] test internal::core::timeout::tests::bounded_line_reader_aborts_when_line_exceeds_cap ... ok
[INFO] [stdout] test internal::core::timeout::tests::bounded_line_reader_accepts_line_within_cap ... ok
[INFO] [stdout] test internal::core::timeout::tests::line_reader_delivers_line_within_timeout ... ok
[INFO] [stdout] test internal::core::timeout::tests::line_reader_eof_disconnects_and_returns_empty_string ... ok
[INFO] [stdout] test internal::core::timeout::tests::line_reader_times_out_when_no_data ... ok
[INFO] [stdout] test internal::core::timeout::tests::run_status_with_timeout_completes_fast_command ... ok
[INFO] [stdout] test internal::core::timeout::tests::run_status_with_timeout_kills_slow_command ... ok
[INFO] [stdout] test internal::core::timeout::tests::run_with_timeout_completes_fast_command ... ok
[INFO] [stdout] test internal::core::timeout::tests::run_with_timeout_kills_slow_command ... ok
[INFO] [stdout] test internal::core::types::tests::access_policy_default_is_none ... ok
[INFO] [stdout] test internal::core::types::tests::access_policy_ffi_roundtrip ... ok
[INFO] [stdout] test internal::core::types::tests::access_policy_ffi_roundtrip_all_variants ... ok
[INFO] [stdout] test internal::core::types::tests::access_policy_unknown_ffi_defaults_to_none ... ok
[INFO] [stdout] test internal::core::types::tests::key_type_serde_roundtrip_encryption ... ok
[INFO] [stdout] test internal::core::types::tests::key_type_serde_roundtrip_signing ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_default_is_cached ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_migration_default_any_policy_gives_strict ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_migration_default_biometric_gives_strict ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_migration_default_none_policy_gives_none ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_migration_default_password_gives_strict ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_serde_roundtrip_all_variants ... ok
[INFO] [stdout] test internal::core::types::tests::presence_mode_serde_wire_strings ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_65_chars_is_rejected ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_exactly_64_chars_is_valid ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_hyphens_and_underscores_allowed ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_rejects_dots ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_rejects_empty ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_rejects_slashes ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_rejects_spaces ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_rejects_too_long ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_rejects_unicode ... ok
[INFO] [stdout] test internal::core::types::tests::validate_label_valid ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_empty_input_is_error ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_exact_length_wrong_prefix ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_valid ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_wrong_length_long ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_wrong_length_short ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_wrong_prefix_compressed ... ok
[INFO] [stdout] test internal::core::types::tests::validate_p256_point_wrong_prefix_compressed_odd ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::ciphertext_format_detailed_structure ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::ciphertext_has_correct_format ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::ciphertext_is_different_each_time_due_to_random_nonce_and_ephemeral_key ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_corrupted_ephemeral_key_returns_error ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_corrupted_nonce_returns_error ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_exactly_min_ciphertext_len_with_bad_data ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_fails_for_nonexistent_key ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_fails_with_corrupted_ciphertext ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_fails_with_truncated_ciphertext ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_fails_with_wrong_key ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::decrypt_fails_with_wrong_version_byte ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::delete_key_then_encrypt_returns_key_not_found ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::empty_plaintext_roundtrip ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::encrypt_decrypt_roundtrip ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::encrypt_decrypt_roundtrip_various_sizes ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::encrypt_fails_for_nonexistent_key ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::encrypt_produces_different_output_each_time ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::generate_rejects_signing_key_type ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::generate_returns_valid_65_byte_pubkey ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::generate_with_invalid_label_returns_error ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::is_available_returns_true ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::large_plaintext_roundtrip ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::list_keys_after_generate_includes_label ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::one_byte_plaintext_roundtrip ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::public_key_matches_generated ... ok
[INFO] [stdout] test internal::keyring::encrypt::tests::software_encryptor_rejects_invalid_labels_across_operations ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::backward_compat_raw_key_file_loads ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::decrypt_fails_with_wrong_kek ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::delete_key_missing_dir_returns_key_not_found ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::delete_key_nonexistent_returns_key_not_found ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::delete_key_removes_all_files ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::delete_key_then_regenerate_same_label_succeeds ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::encrypt_decrypt_key_bytes_roundtrip ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::encrypted_file_format_has_correct_structure ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::encrypted_key_file_without_keyring_feature_returns_descriptive_error ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::encrypted_key_format_version_byte_nonce_ciphertext_tag ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::generate_and_save_rejects_duplicate_pub_or_meta_without_private_key ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::generate_creates_key_pub_meta_files ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::generate_rejects_duplicate_labels ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::generate_sets_0600_permissions_on_key_file ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::generate_with_invalid_label_returns_error ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::is_available_returns_true ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::key_storage_operations_reject_invalid_labels ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::list_labels_empty_dir_returns_empty_vec ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::list_labels_returns_sorted_labels ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::load_public_key_falls_back_to_secret_key ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::load_public_key_returns_65_bytes_starting_with_04 ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::load_secret_key_fails_for_nonexistent ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::load_secret_key_roundtrips ... ok
[INFO] [stdout] test internal::keyring::key_storage::tests::unrecognized_file_format_returns_error ... ok
[INFO] [stdout] test internal::keyring::meta_migration_marker::tests::clear_returns_ok_when_keyring_not_compiled_in ... ok
[INFO] [stdout] test internal::keyring::meta_migration_marker::tests::is_set_returns_false_when_keyring_not_compiled_in ... ok
[INFO] [stdout] test internal::keyring::meta_migration_marker::tests::set_returns_err_when_keyring_not_compiled_in ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::account_for_contains_label_between_markers ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::account_for_empty_label ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::account_format ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::meta_tag_len_is_32 ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::rename_with_no_source_tag_returns_ok ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::verify_no_meta_when_file_missing ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::verify_outcome_distinct_variants_not_equal ... ok
[INFO] [stdout] test internal::keyring::meta_tag::tests::verify_outcome_variants_equal_to_themselves ... ok
[INFO] [stdout] test internal::keyring::sign::tests::delete_key_then_sign_returns_key_not_found ... ok
[INFO] [stdout] test internal::keyring::sign::tests::generate_and_sign_produces_valid_der ... ok
[INFO] [stdout] test internal::keyring::sign::tests::generate_rejects_encryption_key_type ... ok
[INFO] [stdout] test internal::keyring::sign::tests::generate_returns_valid_65_byte_pubkey ... ok
[INFO] [stdout] test internal::keyring::sign::tests::generate_with_invalid_label_returns_error ... ok
[INFO] [stdout] test internal::keyring::sign::tests::is_available_returns_true ... ok
[INFO] [stdout] test internal::keyring::sign::tests::list_and_delete_lifecycle ... ok
[INFO] [stdout] test internal::keyring::sign::tests::list_keys_after_generate_includes_label ... ok
[INFO] [stdout] test internal::keyring::sign::tests::public_key_matches_generated ... ok
[INFO] [stdout] test internal::keyring::sign::tests::sign_fails_for_nonexistent_key ... ok
[INFO] [stdout] test internal::keyring::sign::tests::sign_is_deterministic_for_same_key_and_data ... ok
[INFO] [stdout] test internal::keyring::sign::tests::sign_produces_different_output_for_different_data ... ok
[INFO] [stdout] test internal::keyring::sign::tests::signature_can_be_verified_with_public_key ... ok
[INFO] [stdout] test internal::keyring::sign::tests::software_signer_rejects_invalid_labels_across_operations ... ok
[INFO] [stdout] test internal::keyring::sign::tests::with_keys_dir_uses_custom_directory ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::access_policy_takes_precedence_over_biometric ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::biometric_and_access_policy_coexist_in_json ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::biometric_true_falls_back_to_biometric_only ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::bridge_server_new ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::decrypt_returns_platform_error_on_non_windows ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::destroy_and_delete_are_aliases ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::effective_access_policy_any ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::effective_access_policy_none_without_biometric ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::effective_access_policy_password_only ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::empty_params_all_defaults ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::encrypt_returns_platform_error_on_non_windows ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_decrypt_missing_data ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_decrypt_without_init ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_delete_clears_storage ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_delete_signing_clears_signing_storage ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_destroy_clears_storage ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_encrypt_invalid_base64 ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_encrypt_missing_data ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_encrypt_without_init ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_init_creates_storage ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_init_signing_creates_signing_storage ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_list_keys_without_init_signing ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_public_key_without_init_signing ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_sign_missing_data ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_sign_without_init_signing ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::handle_unknown_method ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::invalid_json_produces_error ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::legacy_biometric_false_maps_to_none ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::legacy_biometric_true_maps_to_biometric_only ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::legacy_payload_with_no_params_defaults_to_none ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::list_keys_returns_platform_error_on_non_windows ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_decrypt_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_delete_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_delete_signing_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_destroy_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_encrypt_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_init_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_init_request_defaults ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_init_signing_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_list_keys_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_public_key_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_request_uses_defaults_for_minimal_payloads ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_request_with_explicit_app_name_and_key_label ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::parse_sign_request ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::password_only_takes_precedence_over_biometric ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::public_key_returns_platform_error_on_non_windows ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::roundtrip_json_protocol ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::serialize_error_response ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::serialize_success_response ... ok
[INFO] [stdout] test internal::tpm_bridge::tests::sign_returns_platform_error_on_non_windows ... ok
[INFO] [stdout] test internal::tpm_bridge::tpm::tests::ensure_key_generates_when_missing ... ok
[INFO] [stdout] test internal::tpm_bridge::tpm::tests::ensure_key_keeps_existing_key_when_policy_matches ... ok
[INFO] [stdout] test internal::tpm_bridge::tpm::tests::ensure_key_regenerates_when_policy_mismatches ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_utf16le_non_ascii_codepoint ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_utf16le_odd_length_ignores_trailing_byte ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_ascii_no_nulls_treated_as_utf8 ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_empty_bytes_returns_empty_string ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_high_null_density_treated_as_utf16le ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_low_null_density_treated_as_utf8 ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_only_bom_returns_empty ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_pure_utf8_returns_as_is ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_three_bytes_not_bom_not_utf16le ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_utf16le_bom_multiline ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_utf16le_bom_with_newline ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_utf16le_with_bom_decoded ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_utf16le_without_bom_multiline ... ok
[INFO] [stdout] test internal::wsl::detect::tests::decode_wsl_output_utf8_with_multibyte_char ... ok
[INFO] [stdout] test internal::wsl::detect::tests::test_decode_wsl_output_utf16le_without_bom ... ok
[INFO] [stdout] test internal::wsl::detect::tests::test_detect_distros_empty_on_non_windows ... ok
[INFO] [stdout] test internal::wsl::detect::tests::test_is_wsl_false_on_non_linux ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_configure_distro_creates_backup_like_file ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_decode_wsl_output_empty_utf8 ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_decode_wsl_output_plain_utf8 ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_decode_wsl_output_real_utf16le_bom ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_decode_wsl_output_utf16le_bom ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_decode_wsl_output_utf16le_multiple_lines ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_decode_wsl_output_utf8 ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_distro_result_debug ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_find_wsl_home_non_windows ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_inject_idempotent ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_inject_shell_configs_bashrc ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_inject_shell_configs_both ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_inject_shell_configs_creates_bashrc ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_inject_shell_configs_fallback_profile ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_inject_shell_configs_zshrc ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_unconfigure_distro_removes_block_but_keeps_content ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_unconfigure_distro_removes_blocks ... ok
[INFO] [stdout] test internal::wsl::install::tests::test_wsl_install_config_clone ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::begin_marker_contains_app_name ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::begin_marker_format_is_correct ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::end_marker_contains_app_name ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::end_marker_format_is_correct ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::full_block_contains_begin_and_end_markers ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::full_block_contains_block_content ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::full_block_structure_is_begin_content_end ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::shell_config_paths_all_under_home ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::shell_config_paths_contains_bashrc ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::shell_config_paths_contains_profile ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::shell_config_paths_contains_zshrc ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_crlf_normalization ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_custom_app_name ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_block_content ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_block_special_characters ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_existing_file ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_idempotent ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_new_file ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_replaces_outdated_block ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_install_then_update_pattern ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_is_installed_false ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_is_installed_true ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_multiple_different_app_blocks_coexist ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_shell_config_paths ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_uninstall_missing_file ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_uninstall_not_present ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_uninstall_preserves_content_before_and_after_exactly ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_uninstall_preserves_other_content ... ok
[INFO] [stdout] test internal::wsl::shell_config::tests::test_uninstall_removes_block ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::all_awsenc_shells_have_comment_header ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::all_ssojwt_shells_have_comment_header ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::all_ssojwt_shells_suggest_exec ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::all_ssojwt_shells_use_command_prefix ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_awsenc_contains_helper ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_awsenc_contains_preexec ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_output_contains_trap_chaining ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_ssojwt_contains_wrapper ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_warning_lines_empty_list_is_empty_string ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_warning_lines_escapes_double_quotes ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_warning_lines_multiple_lines_joined_by_newline ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_warning_lines_single_line_uses_4_space_indent ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::bash_wrapper_chains_existing_trap ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::command_name_appears_in_generated_output ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::detect_shell_explicit ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::detect_shell_from_env_bash ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::detect_shell_from_env_fish ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::detect_shell_from_env_zsh ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::export_patterns_appear_in_generated_output ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_awsenc_contains_event ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_output_contains_commandline_check ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_pattern_match_empty_produces_empty_string ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_pattern_match_multiple_patterns_joined_by_pipe ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_ssojwt_contains_wrapper ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_warning_lines_empty_list_is_empty_string ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_warning_lines_escapes_double_quotes ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::fish_warning_lines_single_line_uses_8_space_indent ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::generate_unknown_shell_returns_error ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::helper_function_appears_in_bash_output ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::pattern_alternation_empty_produces_empty_string ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::pattern_alternation_multiple_patterns_joined_by_pipe ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::pattern_alternation_single_pattern ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_awsenc_contains_prompt ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_output_when_enabled ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_supported_for_ssojwt ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_warning_lines_empty_list_is_empty_string ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_warning_lines_escapes_double_quotes_with_backtick ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_warning_lines_multiple_lines_joined_by_newline ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::powershell_warning_lines_single_line_contains_write_host ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::pwsh_alias_works_for_powershell ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::unsupported_shell ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::zsh_awsenc_contains_hook ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::zsh_output_contains_add_zsh_hook ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::zsh_ssojwt_contains_wrapper ... ok
[INFO] [stdout] test internal::wsl::shell_init::tests::zsh_wrapper_uses_preexec ... ok
[INFO] [stdout] test memory::locked_buffer::tests::bytes_zeroizing_returns_independent_copy ... ok
[INFO] [stdout] test memory::locked_buffer::tests::concurrent_access_from_multiple_threads ... ok
[INFO] [stdout] test memory::locked_buffer::tests::freeze_and_melt_through_handle ... ok
[INFO] [stdout] test memory::locked_buffer::tests::from_bytes_copies_data ... ok
[INFO] [stdout] test memory::locked_buffer::tests::new_buffer_has_correct_size ... ok
[INFO] [stdout] test memory::locked_buffer::tests::new_buffer_is_zeroed ... ok
[INFO] [stdout] test memory::locked_buffer::tests::random_buffer_is_nonzero ... ok
[INFO] [stdout] test memory::locked_buffer::tests::scramble_produces_nonzero ... ok
[INFO] [stdout] test memory::locked_buffer::tests::wipe_zeroes_contents ... ok
[INFO] [stdout] test memory::locked_buffer::tests::zeroize_all_at_shutdown_zeroes_all_registered ... ok
[INFO] [stdout] test memory::locked_buffer::tests::zeroize_at_shutdown_does_not_panic_on_dead_weaks ... ok
[INFO] [stdout] test memory::locked_buffer::tests::zeroize_at_shutdown_zeroes_live_buffer ... ok
[INFO] [stdout] test memory::memcall::tests::alloc_and_free_basic ... ok
[INFO] [stdout] test memory::memcall::tests::harden_process_succeeds ... ok
[INFO] [stdout] test memory::memcall::tests::lock_and_unlock ... ok
[INFO] [stdout] test memory::memcall::tests::protect_no_access_and_restore ... ok
[INFO] [stdout] test memory::memcall::tests::protect_read_write ... ok
[INFO] [stdout] test memory::memcall::tests::protection_flags_are_distinct ... ok
[INFO] [stdout] test memory::memcall::tests::read_write_basic ... ok
[INFO] [stdout] test memory::memcall::tests::various_sizes_are_zero_initialized ... ok
[INFO] [stdout] test memory::memory_enclave::tests::ciphertext_nonce_is_twelve_bytes ... ok
[INFO] [stdout] test memory::memory_enclave::tests::coffer_slot_released_after_seal ... ok
[INFO] [stdout] test memory::memory_enclave::tests::coffer_view_returns_key_sized_slot ... ok
[INFO] [stdout] test memory::memory_enclave::tests::concurrent_seal_and_open ... ok
[INFO] [stdout] test memory::memory_enclave::tests::debug_does_not_leak_plaintext ... ok
[INFO] [stdout] test memory::memory_enclave::tests::different_enclaves_are_independent ... ok
[INFO] [stdout] test memory::memory_enclave::tests::different_plaintexts_produce_different_ciphertexts ... ok
[INFO] [stdout] test memory::memory_enclave::tests::drop_evicts_hot_cache ... ok
[INFO] [stdout] test memory::memory_enclave::tests::fresh_nonce_never_returns_all_zeros ... ok
[INFO] [stdout] test memory::memory_enclave::tests::nonce_prefix_is_nonzero ... ok
[INFO] [stdout] test memory::memory_enclave::tests::nonce_tampering_fails_authentication ... ok
[INFO] [stdout] test memory::memory_enclave::tests::open_after_drop_uses_cold_path ... ok
[INFO] [stdout] test memory::memory_enclave::tests::open_cache_evicted_on_drop ... ok
[INFO] [stdout] test memory::memory_enclave::tests::open_twice_uses_hot_cache ... ok
[INFO] [stdout] test memory::memory_enclave::tests::plaintext_is_zeroized_after_open ... ok
[INFO] [stdout] test memory::memory_enclave::tests::pool_acquire_large_uses_standalone ... ok
[INFO] [stdout] test memory::memory_enclave::tests::pool_acquire_small_uses_slab ... ok
[INFO] [stdout] test memory::memory_enclave::tests::same_plaintext_different_nonces ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_and_open_boundary_sizes ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_and_open_roundtrip ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_buffer_roundtrip ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_empty_slice ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_ids_are_unique_and_increasing ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_open_large ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_slot_does_not_consume_slot ... ok
[INFO] [stdout] test memory::memory_enclave::tests::seal_slot_roundtrip ... ok
[INFO] [stdout] test memory::memory_enclave::tests::tag_tampering_fails_authentication ... ok
[INFO] [stdout] test memory::memory_enclave::tests::tampered_ciphertext_fails ... ok
[INFO] [stdout] test memory::memory_enclave::tests::truncated_ciphertext_fails ... ok
[INFO] [stdout] test memory::memory_enclave::tests::unique_ids ... ok
[INFO] [stdout] test memory::pool::tests::coffer_view_is_deterministic ... ok
[INFO] [stdout] test memory::pool::tests::coffer_view_key_is_32_bytes_and_nonzero ... ok
[INFO] [stdout] test memory::pool::tests::coffer_view_returns_key_sized_slot ... ok
[INFO] [stdout] test memory::pool::tests::coffer_view_returns_same_key_every_time ... ok
[INFO] [stdout] test memory::pool::tests::concurrent_pool_acquire_and_release ... ok
[INFO] [stdout] test memory::pool::tests::empty_tier_sizes_rejected ... ok
[INFO] [stdout] test memory::pool::tests::hot_cache_get_returns_pool_slot ... ok
[INFO] [stdout] test memory::pool::tests::hot_cache_insert_get_evict ... ok
[INFO] [stdout] test memory::pool::tests::hot_cache_multiple_ids_are_independent ... ok
[INFO] [stdout] test memory::pool::tests::hot_cache_not_populated_for_large_plaintext ... ok
[INFO] [stdout] test memory::pool::tests::init_pool_default_config_has_one_tier ... ok
[INFO] [stdout] test memory::pool::tests::local_pool_coffer_view_works ... ok
[INFO] [stdout] test memory::pool::tests::multi_tier_routing_smallest_fit ... ok
[INFO] [stdout] test memory::pool::tests::pool_acquire_large_uses_standalone ... ok
[INFO] [stdout] test memory::pool::tests::pool_acquire_small_uses_slab ... ok
[INFO] [stdout] test memory::pool::tests::pool_acquire_zero_uses_slab ... ok
[INFO] [stdout] test memory::pool::tests::pool_slot_tier_index_matches_acquisition_tier ... ok
[INFO] [stdout] test memory::pool::tests::pool_slot_write_and_read ... ok
[INFO] [stdout] test memory::pool::tests::pool_slot_zeroized_on_drop ... ok
[INFO] [stdout] test memory::pool::tests::pool_slot_zeroized_on_drop_standalone ... ok
[INFO] [stdout] test memory::pool::tests::standalone_slot_has_no_tier_or_slab_index ... ok
[INFO] [stdout] test memory::pool::tests::tier_sizes_sorted_ascending_internally ... ok
[INFO] [stdout] test memory::pool::tests::tiered_pool_config_validates_ascending ... ok
[INFO] [stdout] test memory::pool::tests::tiered_pool_config_validates_max_slot_size ... ok
[INFO] [stdout] test memory::pool::tests::tiered_pool_first_tier_must_be_32_bytes ... ok
[INFO] [stdout] test memory::pool::tests::tiered_pool_routes_large_to_standalone ... ok
[INFO] [stdout] test memory::pool::tests::tiered_pool_routes_medium_to_second_tier ... ok
[INFO] [stdout] test memory::pool::tests::tiered_pool_routes_small_to_first_tier ... ok
[INFO] [stdout] test memory::secure_buffer::tests::boundary_sizes ... ok
[INFO] [stdout] test memory::secure_buffer::tests::bytes_writes_and_reads_back ... ok
[INFO] [stdout] test memory::secure_buffer::tests::canary_corruption_detected ... ok
[INFO] [stdout] test memory::secure_buffer::tests::canary_pre_guard_corruption_detected ... ok
[INFO] [stdout] test memory::secure_buffer::tests::destroy_returns_ok_on_clean_buffer ... ok
[INFO] [stdout] test memory::secure_buffer::tests::destroy_twice_is_safe ... ok
[INFO] [stdout] test memory::secure_buffer::tests::drop_without_explicit_destroy_does_not_panic ... ok
[INFO] [stdout] test memory::secure_buffer::tests::drop_zeroes_inner_region ... ok
[INFO] [stdout] test memory::secure_buffer::tests::freeze_and_melt ... ok
[INFO] [stdout] test memory::secure_buffer::tests::freeze_twice_is_idempotent ... ok
[INFO] [stdout] test memory::secure_buffer::tests::frozen_buffer_is_readable ... ok
[INFO] [stdout] test memory::secure_buffer::tests::frozen_buffer_write_segfaults_in_child ... ok
[INFO] [stdout] test memory::secure_buffer::tests::guard_page_write_segfaults_in_child ... ok
[INFO] [stdout] test memory::secure_buffer::tests::melt_twice_is_idempotent ... ok
[INFO] [stdout] test memory::secure_buffer::tests::new_buffer_is_mutable ... ok
[INFO] [stdout] test memory::secure_buffer::tests::scramble_on_frozen_buffer_melts_first ... ok
[INFO] [stdout] test memory::secure_buffer::tests::scramble_produces_non_zero ... ok
[INFO] [stdout] test memory::slab::tests::acquire_and_release ... ok
[INFO] [stdout] test memory::slab::tests::acquire_transient_evicts_lru_when_full ... ok
[INFO] [stdout] test memory::slab::tests::acquire_transient_single_entry_self_eviction_guard ... ok
[INFO] [stdout] test memory::slab::tests::cache_evict_removes_entry ... ok
[INFO] [stdout] test memory::slab::tests::cache_evicted_entry_slot_is_zeroed ... ok
[INFO] [stdout] test memory::slab::tests::cache_get_promotes_to_mru ... ok
[INFO] [stdout] test memory::slab::tests::cache_insert_and_get ... ok
[INFO] [stdout] test memory::slab::tests::cache_insert_wrong_size_rejected ... ok
[INFO] [stdout] test memory::slab::tests::cache_same_id_overwritten ... ok
[INFO] [stdout] test memory::slab::tests::coffer_key_is_different_from_right_half ... ok
[INFO] [stdout] test memory::slab::tests::coffer_key_not_all_zeros ... ok
[INFO] [stdout] test memory::slab::tests::coffer_slot_size_too_small_rejected ... ok
[INFO] [stdout] test memory::slab::tests::coffer_slots_not_in_free_list ... ok
[INFO] [stdout] test memory::slab::tests::coffer_view_reconstructs_key ... ok
[INFO] [stdout] test memory::slab::tests::coffer_view_result_is_deterministic ... ok
[INFO] [stdout] test memory::slab::tests::double_acquire_returns_different_indices ... ok
[INFO] [stdout] test memory::slab::tests::free_list_is_lifo_highest_index_first ... ok
[INFO] [stdout] test memory::slab::tests::guard_pages_fault_on_read ... ok
[INFO] [stdout] test memory::slab::tests::lru_ordering_insert_a_b_c_access_a_evicts_b_next ... ok
[INFO] [stdout] test memory::slab::tests::minimum_slot_size_valid ... ok
[INFO] [stdout] test memory::slab::tests::new_default_slot_size ... ok
[INFO] [stdout] test memory::slab::tests::out_of_range_slot_raw_is_safe ... ok
[INFO] [stdout] test memory::slab::tests::release_nonexistent_is_noop_in_release_build ... ok
[INFO] [stdout] test memory::slab::tests::released_slot_is_zeroed ... ok
[INFO] [stdout] test memory::slab::tests::slab_page_is_between_guard_pages ... ok
[INFO] [stdout] test memory::slab::tests::slot_raw_out_of_bounds_returns_none ... ok
[INFO] [stdout] test memory::slab::tests::slot_size_too_large_rejected ... ok
[INFO] [stdout] test memory::slab::tests::slot_size_zero_rejected ... ok
[INFO] [stdout] test security_key::tests::is_available_does_not_panic ... ok
[INFO] [stdout] test security_key::tests::rp_id_is_stable_and_unique ... ok
[INFO] [stdout] test security_key::tests::rp_id_matches_sshenc_formula ... ok
[INFO] [stdout] test security_key::tests::user_id_is_32_bytes ... ok
[INFO] [stdout] test security_key::tests::user_id_is_stable ... ok
[INFO] [stdout] test signing::tests::key_info_access_policy_is_option ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_session_drop_kills_child ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_sign_initializes_before_signing ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_signing_key_exists_does_not_call_init_signing ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_signing_key_exists_returns_false ... ok
[INFO] [stdout] test internal::bridge::client::tests::bridge_signing_key_exists_returns_true ... ok
[INFO] [stdout] test internal::bridge::client::tests::check_bridge_signature_accepts_unsigned_exe_when_not_required ... ok
[INFO] [stdout] test internal::bridge::client::tests::check_bridge_signature_rejects_unsigned_exe_when_required ... ok
[INFO] [stdout] test internal::bridge::client::tests::check_bridge_signature_skips_non_exe_paths_when_required ... ok
[INFO] [stdout] test internal::bridge::client::tests::find_bridge_env_var_override_ignored_when_path_missing ... ok
[INFO] [stdout] test internal::bridge::client::tests::find_bridge_env_var_override_wins_when_path_exists ... ok
[INFO] [stdout] test internal::bridge::client::tests::find_bridge_returns_none_when_not_found ... ok
[INFO] [stdout] test internal::bridge::client::tests::pe_has_authenticode_table_detects_signed_pe32 ... ok
[INFO] [stdout] test internal::bridge::client::tests::pe_has_authenticode_table_detects_signed_pe32plus ... ok
[INFO] [stdout] test internal::bridge::client::tests::pe_has_authenticode_table_detects_unsigned ... ok
[INFO] [stdout] test internal::bridge::client::tests::pe_has_authenticode_table_rejects_non_pe ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1029 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 7.35s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/examples_ci.rs (/opt/rustwide/target/release/deps/examples_ci-799c04035c7e4f09)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test example_encryption_real_hardware ... ignored, requires real hardware and interactive prompts (ENCLAVE_INTERACTIVE=1)
[INFO] [stdout] test example_integrity_interactive ... ignored, requires real hardware and interactive prompts (ENCLAVE_INTERACTIVE=1)
[INFO] [stdout] test example_signing_real_hardware ... ignored, requires real hardware and interactive prompts (ENCLAVE_INTERACTIVE=1)
[INFO] [stdout] test example_signing_mock ... ok
[INFO] [stdout] test example_integrity_ephemeral ... ok
[INFO] [stdout] test example_encryption_mock ... ok
[INFO] [stdout] test example_memory_protection ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 26.61s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests hardware_enclave
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test crates/hardware-enclave/src/bridge_server.rs - bridge_server (line 13) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/internal/app_adapter/credential_cache.rs - internal::app_adapter::credential_cache (line 33) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/internal/app_storage/mod.rs - internal::app_storage (line 14) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/internal/app_storage/mod.rs - internal::app_storage (line 41) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/internal/build_support/mod.rs - internal::build_support (line 11) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/internal/tpm_bridge/mod.rs - internal::tpm_bridge (line 12) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/lib.rs - (line 36) ... ignored
[INFO] [stdout] test crates/hardware-enclave/src/lib.rs - (line 20) - compile ... ok
[INFO] [stdout] test crates/hardware-enclave/src/shell.rs - shell::quote_path_for_ssh_config (line 40) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 7 ignored; 0 measured; 0 filtered out; finished in 0.28s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22", kill_on_drop: false }`
[INFO] [stdout] a24d50949914feb88217ef3a35523abe36c42ac36546823d28bc952fc2bb0e22
