[INFO] fetching crate punch-types 1.2.0... [INFO] testing punch-types-1.2.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate punch-types 1.2.0 into /workspace/builds/worker-0-tc2/source [INFO] started tweaking crates.io crate punch-types 1.2.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate punch-types 1.2.0 [INFO] tweaked toml for crates.io crate punch-types 1.2.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate punch-types 1.2.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate punch-types 1.2.0 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 54d2a148efa21365b08ff6ad8fa365fda723b4110d6f05d65f468590226ff4d2 [INFO] running `Command { std: "docker" "start" "-a" "54d2a148efa21365b08ff6ad8fa365fda723b4110d6f05d65f468590226ff4d2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "54d2a148efa21365b08ff6ad8fa365fda723b4110d6f05d65f468590226ff4d2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "54d2a148efa21365b08ff6ad8fa365fda723b4110d6f05d65f468590226ff4d2", kill_on_drop: false }` [INFO] [stdout] 54d2a148efa21365b08ff6ad8fa365fda723b4110d6f05d65f468590226ff4d2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3c942f71c07418d763bb508d76b8b323190efa7794477bc2d1c656364946f65a [INFO] running `Command { std: "docker" "start" "-a" "3c942f71c07418d763bb508d76b8b323190efa7794477bc2d1c656364946f65a", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling unicase v2.9.0 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling instant v0.1.13 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling inotify v0.10.2 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling notify-types v1.0.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling filetime v0.2.27 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling notify v7.0.0 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling zeroize_derive v1.4.3 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling ed25519-dalek v2.2.0 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling punch-types v1.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 10s [INFO] running `Command { std: "docker" "inspect" "3c942f71c07418d763bb508d76b8b323190efa7794477bc2d1c656364946f65a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3c942f71c07418d763bb508d76b8b323190efa7794477bc2d1c656364946f65a", kill_on_drop: false }` [INFO] [stdout] 3c942f71c07418d763bb508d76b8b323190efa7794477bc2d1c656364946f65a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 811fa96868e457bc742c2663b03c4247088940dbd92aa2f56b796d84afa73e93 [INFO] running `Command { std: "docker" "start" "-a" "811fa96868e457bc742c2663b03c4247088940dbd92aa2f56b796d84afa73e93", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling punch-types v1.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 44.14s [INFO] running `Command { std: "docker" "inspect" "811fa96868e457bc742c2663b03c4247088940dbd92aa2f56b796d84afa73e93", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "811fa96868e457bc742c2663b03c4247088940dbd92aa2f56b796d84afa73e93", kill_on_drop: false }` [INFO] [stdout] 811fa96868e457bc742c2663b03c4247088940dbd92aa2f56b796d84afa73e93 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 646e1fe0d7ea63b05feb3af020eb06cd6b7ad075b811ebf423d2b9e0b7418817 [INFO] running `Command { std: "docker" "start" "-a" "646e1fe0d7ea63b05feb3af020eb06cd6b7ad075b811ebf423d2b9e0b7418817", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/punch_types-3887e7fd233db5b8) [INFO] [stdout] [INFO] [stdout] running 563 tests [INFO] [stdout] test a2a::tests::test_duplicate_registration_overwrites ... ok [INFO] [stdout] test a2a::tests::test_agent_card_creation ... ok [INFO] [stdout] test a2a::tests::test_http_client_custom_timeout ... ok [INFO] [stdout] test a2a::tests::test_our_card_generation ... ok [INFO] [stdout] test a2a::tests::test_agent_card_with_auth ... ok [INFO] [stdout] test a2a::tests::test_http_client_url_construction ... ok [INFO] [stdout] test a2a::tests::test_registry_count ... ok [INFO] [stdout] test a2a::tests::test_a2a_message_serialization ... ok [INFO] [stdout] test a2a::tests::test_registry_list ... ok [INFO] [stdout] test a2a::tests::test_http_client_creation ... ok [INFO] [stdout] test a2a::tests::test_serialization_roundtrip ... ok [INFO] [stdout] test a2a::tests::test_registry_remove_nonexistent ... ok [INFO] [stdout] test a2a::tests::test_task_input_default_mode ... ok [INFO] [stdout] test a2a::tests::test_registry_remove ... ok [INFO] [stdout] test a2a::tests::test_task_output_optional_data ... ok [INFO] [stdout] test a2a::tests::test_task_input_serialization ... ok [INFO] [stdout] test a2a::tests::test_task_output_serialization ... ok [INFO] [stdout] test a2a::tests::test_registry_register_and_discover ... ok [INFO] [stdout] test a2a::tests::test_unknown_agent_returns_none ... ok [INFO] [stdout] test approval::tests::test_auto_approve_handler_always_approves ... ok [INFO] [stdout] test approval::tests::test_approval_request_serialization ... ok [INFO] [stdout] test approval::tests::test_catch_all_policy ... ok [INFO] [stdout] test approval::tests::test_approval_decision_serialization ... ok [INFO] [stdout] test approval::tests::test_policy_matching_exact ... ok [INFO] [stdout] test approval::tests::test_empty_policies_allow_all ... ok [INFO] [stdout] test approval::tests::test_deny_all_handler_always_denies ... ok [INFO] [stdout] test approval::tests::test_policy_matching_no_match ... ok [INFO] [stdout] test approval::tests::test_evaluate_first_match_wins ... ok [INFO] [stdout] test approval::tests::test_policy_matching_wildcard ... ok [INFO] [stdout] test approval::tests::test_risk_level_ordering ... ok [INFO] [stdout] test approval::tests::test_reset_counters ... ok [INFO] [stdout] test audit::tests::broken_chain_swap_entries ... ok [INFO] [stdout] test audit::tests::entries_by_action_type_filters_correctly ... ok [INFO] [stdout] test audit::tests::entries_by_actor_filters_correctly ... ok [INFO] [stdout] test a2a::tests::test_task_status_transitions ... ok [INFO] [stdout] test audit::tests::genesis_entry_has_empty_prev_hash ... ok [INFO] [stdout] test audit::tests::chain_of_10_verifies_cleanly ... ok [INFO] [stdout] test audit::tests::entries_since_returns_correct_subset ... ok [INFO] [stdout] test approval::tests::test_auto_approve_counter ... ok [INFO] [stdout] test a2a::tests::test_task_status_serialization_roundtrip ... ok [INFO] [stdout] test audit::tests::last_entry_returns_correct_entry ... ok [INFO] [stdout] test audit::tests::sequence_gap_detected ... ok [INFO] [stdout] test audit::tests::second_entry_prev_hash_matches_first_hash ... ok [INFO] [stdout] test audit::tests::serialization_roundtrip_preserves_hashes ... ok [INFO] [stdout] test audit::tests::empty_audit_log_verifies_cleanly ... ok [INFO] [stdout] test approval::tests::test_critical_risk_requires_approval_even_with_auto_approve ... ok [INFO] [stdout] test audit::tests::tampered_content_detected ... ok [INFO] [stdout] test audit::tests::multiple_action_types_coexist ... ok [INFO] [stdout] test browser::tests::test_browser_config_defaults ... ok [INFO] [stdout] test browser::tests::test_browser_config_serialization_roundtrip ... ok [INFO] [stdout] test browser::tests::test_browser_pool_close_all ... ok [INFO] [stdout] test audit::tests::tampered_hash_detected ... ok [INFO] [stdout] test browser::tests::test_browser_action_serialization ... ok [INFO] [stdout] test browser::tests::test_browser_pool_close_session ... ok [INFO] [stdout] test browser::tests::test_browser_pool_active_sessions ... ok [INFO] [stdout] test browser::tests::test_browser_result_construction ... ok [INFO] [stdout] test browser::tests::test_browser_session_default ... ok [INFO] [stdout] test capability::tests::test_all_scopeless_capability_matches ... ok [INFO] [stdout] test browser::tests::test_browser_state_transitions ... ok [INFO] [stdout] test capability::tests::test_app_integration_scoped ... ok [INFO] [stdout] test capability::tests::test_automation_display ... ok [INFO] [stdout] test capability::tests::test_capability_display_all_scoped ... ok [INFO] [stdout] test capability::tests::test_capability_grant_construction ... ok [INFO] [stdout] test capability::tests::test_capability_display_all_scopeless ... ok [INFO] [stdout] test browser::tests::test_browser_pool_create_session ... ok [INFO] [stdout] test capability::tests::test_capability_serde_roundtrip ... ok [INFO] [stdout] test capability::tests::test_capability_grant_with_expiry ... ok [INFO] [stdout] test capability::tests::test_exact_host ... ok [INFO] [stdout] test capability::tests::test_automation_cross_variant_no_match ... ok [INFO] [stdout] test capability::tests::test_glob_matches_star_star_slash_star ... ok [INFO] [stdout] test browser::tests::test_browser_pool_max_sessions_enforced ... ok [INFO] [stdout] test capability::tests::test_glob_file_read ... ok [INFO] [stdout] test browser::tests::test_browser_session_creation ... ok [INFO] [stdout] test capability::tests::test_glob_no_match ... ok [INFO] [stdout] test capability::tests::test_mcp_access_exact ... ok [INFO] [stdout] test capability::tests::test_network_wildcard_grants_all ... ok [INFO] [stdout] test capability::tests::test_shell_wildcard_grants_all ... ok [INFO] [stdout] test capability::tests::test_ui_automation_scoped ... ok [INFO] [stdout] test capability::tests::test_wildcard_grants_all ... ok [INFO] [stdout] test capability::tests::test_wildcard_host ... ok [INFO] [stdout] test cdp::tests::test_cdp_browser_driver_implements_trait ... ok [INFO] [stdout] test capability::tests::test_variant_mismatch ... ok [INFO] [stdout] test cdp::tests::test_cdp_browser_driver_is_send_sync ... ok [INFO] [stdout] test capability::tests::test_mcp_access_wildcard ... ok [INFO] [stdout] test cdp::tests::test_cdp_command_new ... ok [INFO] [stdout] test capability::tests::test_subdomain_wildcard_host ... ok [INFO] [stdout] test cdp::tests::test_cdp_config_from_browser_config ... ok [INFO] [stdout] test cdp::tests::test_cdp_config_serialization_roundtrip ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_creation ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_chrome_args ... ok [INFO] [stdout] test capability::tests::test_mcp_access_display ... ok [INFO] [stdout] test cdp::tests::test_cdp_config_defaults ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_next_id_increments ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_chrome_args_minimal ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_multiple_sessions ... ok [INFO] [stdout] test cdp::tests::test_cdp_error_to_punch_error ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_session_not_found ... ok [INFO] [stdout] test cdp::tests::test_cdp_response_parse_success ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_with_defaults ... ok [INFO] [stdout] test cdp::tests::test_cdp_driver_session_tracking ... ok [INFO] [stdout] test capability::tests::test_scopeless_capabilities ... ok [INFO] [stdout] test cdp::tests::test_cdp_target_info_parse ... ok [INFO] [stdout] test cdp::tests::test_cdp_session_creation ... ok [INFO] [stdout] test cdp::tests::test_cdp_session_serialization ... ok [INFO] [stdout] test cdp::tests::test_evaluate_command_format ... ok [INFO] [stdout] test cdp::tests::test_cdp_error_variants ... ok [INFO] [stdout] test cdp::tests::test_cdp_response_parse_error ... ok [INFO] [stdout] test cdp::tests::test_navigate_command_format ... ok [INFO] [stdout] test cdp::tests::test_find_chrome_returns_existing_path_or_none ... ok [INFO] [stdout] test cdp::tests::test_get_content_command_without_selector ... ok [INFO] [stdout] test cdp::tests::test_get_html_command_without_selector ... ok [INFO] [stdout] test cdp::tests::test_type_text_command_format ... ok [INFO] [stdout] test cdp::tests::test_resolve_chrome_path_with_config ... ok [INFO] [stdout] test cdp::tests::test_wait_for_selector_command_format ... ok [INFO] [stdout] test cdp::tests::test_screenshot_command_format ... ok [INFO] [stdout] test config::tests::test_budget_config_defaults ... ok [INFO] [stdout] test config::tests::test_budget_config_serde ... ok [INFO] [stdout] test config::tests::test_budget_config_serde_empty ... ok [INFO] [stdout] test config::tests::test_budget_config_has_limit ... ok [INFO] [stdout] test config::tests::test_channel_config_defaults ... ok [INFO] [stdout] test config::tests::test_mcp_server_config_serde ... ok [INFO] [stdout] test config::tests::test_channel_config_serde ... ok [INFO] [stdout] test config::tests::test_memory_config_defaults ... ok [INFO] [stdout] test config::tests::test_mcp_server_config_defaults ... ok [INFO] [stdout] test config::tests::test_memory_config_roundtrip ... ok [INFO] [stdout] test config::tests::test_model_config_serde_roundtrip ... ok [INFO] [stdout] test config::tests::test_provider_display_all_variants ... ok [INFO] [stdout] test config::tests::test_model_config_optional_fields ... ok [INFO] [stdout] test config::tests::test_provider_serde_rename ... ok [INFO] [stdout] test config::tests::test_provider_equality ... ok [INFO] [stdout] test config::tests::test_provider_hash ... ok [INFO] [stdout] test config::tests::test_provider_serde_roundtrip ... ok [INFO] [stdout] test config::tests::test_tunnel_config_default_mode ... ok [INFO] [stdout] test config::tests::test_tunnel_config_serde ... ok [INFO] [stdout] test cdp::tests::test_chrome_candidate_paths_not_empty ... ok [INFO] [stdout] test coordinator::tests::test_agent_message_result_empty_response ... ok [INFO] [stdout] test cdp::tests::test_get_content_command_with_selector ... ok [INFO] [stdout] test coordinator::tests::test_agent_info_all_statuses ... ok [INFO] [stdout] test cdp::tests::test_click_command_format ... ok [INFO] [stdout] test creed::tests::test_creed_id_serde_roundtrip ... ok [INFO] [stdout] test creed::tests::test_creed_id_display ... ok [INFO] [stdout] test coordinator::tests::test_agent_info_clone ... ok [INFO] [stdout] test coordinator::tests::test_agent_info_serde_roundtrip ... ok [INFO] [stdout] test coordinator::tests::test_agent_message_result_serde ... ok [INFO] [stdout] test creed::tests::test_creed_id_default ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_hourly_cadence ... ok [INFO] [stdout] test creed::tests::test_creed_new_creates_valid_default ... ok [INFO] [stdout] test cdp::tests::test_get_html_command_with_selector ... ok [INFO] [stdout] test creed::tests::test_decay_learned_behaviors ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_daily_cadence ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_inactive_skipped ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_on_wake_only_first_time ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_unknown_cadence_skipped ... ok [INFO] [stdout] test creed::tests::test_learn_reinforces_existing_observation ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_every_bout_always_due ... ok [INFO] [stdout] test creed::tests::test_mark_heartbeat_checked_out_of_bounds ... ok [INFO] [stdout] test creed::tests::test_due_heartbeat_tasks_mixed_cadences ... ok [INFO] [stdout] test creed::tests::test_prune_learned_behaviors ... ok [INFO] [stdout] test creed::tests::test_learn_adds_new_observation ... ok [INFO] [stdout] test creed::tests::test_mark_heartbeat_checked ... ok [INFO] [stdout] test creed::tests::test_record_bout ... ok [INFO] [stdout] test creed::tests::test_record_messages ... ok [INFO] [stdout] test creed::tests::test_render_compact_minimal ... ok [INFO] [stdout] test creed::tests::test_render_compact_with_content ... ok [INFO] [stdout] test creed::tests::test_render_compact_shorter_than_full ... ok [INFO] [stdout] test creed::tests::test_with_directive ... ok [INFO] [stdout] test creed::tests::test_with_self_awareness ... ok [INFO] [stdout] test creed::tests::test_with_identity ... ok [INFO] [stdout] test creed::tests::test_render_skips_empty_sections ... ok [INFO] [stdout] test creed::tests::test_with_trait ... ok [INFO] [stdout] test error::tests::test_auth_error_display ... ok [INFO] [stdout] test creed::tests::test_with_trait_clamping ... ok [INFO] [stdout] test creed::tests::test_render_produces_nonempty_output_with_all_sections ... ok [INFO] [stdout] test error::tests::test_capability_denied_display ... ok [INFO] [stdout] test error::tests::test_empty_string_errors ... ok [INFO] [stdout] test error::tests::test_error_debug_impl ... ok [INFO] [stdout] test error::tests::test_bout_error_display ... ok [INFO] [stdout] test error::tests::test_channel_error_display ... ok [INFO] [stdout] test error::tests::test_config_error_display ... ok [INFO] [stdout] test error::tests::test_context_overflow_display ... ok [INFO] [stdout] test error::tests::test_fighter_error_display ... ok [INFO] [stdout] test error::tests::test_event_bus_error_display ... ok [INFO] [stdout] test error::tests::test_from_io_error ... ok [INFO] [stdout] test error::tests::test_from_serde_error ... ok [INFO] [stdout] test error::tests::test_gorilla_error_display ... ok [INFO] [stdout] test error::tests::test_knowledge_graph_error_display ... ok [INFO] [stdout] test error::tests::test_marketplace_error_display ... ok [INFO] [stdout] test error::tests::test_mcp_error_display ... ok [INFO] [stdout] test error::tests::test_memory_error_display ... ok [INFO] [stdout] test error::tests::test_internal_error_display ... ok [INFO] [stdout] test error::tests::test_provider_error_display ... ok [INFO] [stdout] test error::tests::test_rate_limited_display ... ok [INFO] [stdout] test error::tests::test_tool_error_display ... ok [INFO] [stdout] test error::tests::test_punch_result_ok ... ok [INFO] [stdout] test error::tests::test_tool_not_found_display ... ok [INFO] [stdout] test error::tests::test_tool_timeout_display ... ok [INFO] [stdout] test error::tests::test_punch_result_err ... ok [INFO] [stdout] test event::tests::test_bout_ended_serde ... ok [INFO] [stdout] test event::tests::test_bout_started_serde ... ok [INFO] [stdout] test event::tests::test_event_payload_new ... ok [INFO] [stdout] test event::tests::test_combo_triggered_serde ... ok [INFO] [stdout] test event::tests::test_event_payload_serde_roundtrip ... ok [INFO] [stdout] test event::tests::test_error_event_serde ... ok [INFO] [stdout] test event::tests::test_event_payload_with_correlation ... ok [INFO] [stdout] test event::tests::test_fighter_spawned_serde ... ok [INFO] [stdout] test event::tests::test_fighter_message_serde ... ok [INFO] [stdout] test event::tests::test_gorilla_unleashed_serde ... ok [INFO] [stdout] test event::tests::test_gorilla_paused_serde ... ok [INFO] [stdout] test event::tests::test_event_clone ... ok [INFO] [stdout] test fighter::tests::test_fighter_id_display ... ok [INFO] [stdout] test fighter::tests::test_fighter_id_hash ... ok [INFO] [stdout] test fighter::tests::test_fighter_id_new_is_unique ... ok [INFO] [stdout] test event::tests::test_tool_executed_serde ... ok [INFO] [stdout] test fighter::tests::test_fighter_stats_serde_roundtrip ... ok [INFO] [stdout] test fighter::tests::test_fighter_id_copy_clone ... ok [INFO] [stdout] test fighter::tests::test_fighter_manifest_serde ... ok [INFO] [stdout] test fighter::tests::test_fighter_stats_default ... ok [INFO] [stdout] test fighter::tests::test_fighter_id_default ... ok [INFO] [stdout] test fighter::tests::test_fighter_status_display ... ok [INFO] [stdout] test fighter::tests::test_fighter_status_equality ... ok [INFO] [stdout] test fighter::tests::test_weight_class_display ... ok [INFO] [stdout] test fighter::tests::test_fighter_status_serde_roundtrip ... ok [INFO] [stdout] test fighter::tests::test_weight_class_serde_roundtrip ... ok [INFO] [stdout] test fighter::tests::test_fighter_id_serde_transparent ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_file_list ... ok [INFO] [stdout] test fighter::tests::test_weight_class_serde_values ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_file_read ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_memory ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_read_file ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_unknown ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_shell ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_write_file ... ok [INFO] [stdout] test gorilla::tests::test_effective_capabilities_derived ... ok [INFO] [stdout] test gorilla::tests::test_effective_system_prompt_explicit ... ok [INFO] [stdout] test gorilla::tests::test_effective_capabilities_no_duplicates ... ok [INFO] [stdout] test gorilla::tests::test_effective_system_prompt_fallback ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_id_new_unique ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_knowledge ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_id_serde_transparent ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_id_default ... ok [INFO] [stdout] test gorilla::tests::test_capabilities_from_move_web ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_manifest_serde ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_id_display ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_metrics_default ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_metrics_serde ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_status_serde_roundtrip ... ok [INFO] [stdout] test gorilla::tests::test_gorilla_status_display ... ok [INFO] [stdout] test hot_reload::tests::current_config_accessible_after_creation ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_channel_added ... ok [INFO] [stdout] test hot_reload::tests::apply_change_rejects_invalid_config ... ok [INFO] [stdout] test hot_reload::tests::apply_change_returns_change_set ... ok [INFO] [stdout] test hot_reload::tests::config_watcher_can_be_created ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_api_key_changed ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_listen_address_changed ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_mcp_server_added ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_rate_limit_change ... ok [INFO] [stdout] test hot_reload::tests::diff_returns_empty_for_identical_configs ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_mcp_server_removed ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_channel_removed ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_model_change ... ok [INFO] [stdout] test hot_reload::tests::subscriber_receives_initial_config ... ok [INFO] [stdout] test hot_reload::tests::validate_catches_empty_db_path ... ok [INFO] [stdout] test hot_reload::tests::diff_detects_memory_config_changed ... ok [INFO] [stdout] test hot_reload::tests::validate_catches_invalid_socket_addr ... ok [INFO] [stdout] test hot_reload::tests::validate_catches_empty_model_name ... ok [INFO] [stdout] test hot_reload::tests::validate_catches_zero_rate_limit ... ok [INFO] [stdout] test hot_reload::tests::validate_passes_valid_config ... ok [INFO] [stdout] test image_gen::tests::test_default_dimensions ... ok [INFO] [stdout] test hot_reload::tests::validate_warns_on_empty_api_key ... ok [INFO] [stdout] test image_gen::tests::test_style_serialization ... ok [INFO] [stdout] test link::tests::test_content_construction ... ok [INFO] [stdout] test media::tests::test_analysis_construction ... ok [INFO] [stdout] test link::tests::test_metadata ... ok [INFO] [stdout] test image_gen::tests::test_format_variants ... ok [INFO] [stdout] test image_gen::tests::test_request_creation ... ok [INFO] [stdout] test link::tests::test_content_type_classification ... ok [INFO] [stdout] test image_gen::tests::test_result_construction ... ok [INFO] [stdout] test link::tests::test_url_support_check ... ok [INFO] [stdout] test link::tests::test_word_count ... ok [INFO] [stdout] test media::tests::test_media_input_metadata ... ok [INFO] [stdout] test media::tests::test_mime_types ... ok [INFO] [stdout] test media::tests::test_media_type_detection ... ok [INFO] [stdout] test media::tests::test_supported_types ... ok [INFO] [stdout] test message::tests::test_content_part_image_serde ... ok [INFO] [stdout] test message::tests::test_content_part_text_serde ... ok [INFO] [stdout] test message::tests::test_message_new ... ok [INFO] [stdout] test message::tests::test_message_content_parts_skipped_when_empty ... ok [INFO] [stdout] test message::tests::test_message_has_images_false ... ok [INFO] [stdout] test message::tests::test_message_new_empty_content ... ok [INFO] [stdout] test message::tests::test_message_serde_skips_empty_vecs ... ok [INFO] [stdout] test message::tests::test_message_serde_roundtrip ... ok [INFO] [stdout] test message::tests::test_role_serde_values ... ok [INFO] [stdout] test message::tests::test_message_with_tool_calls ... ok [INFO] [stdout] test message::tests::test_tool_call_result_error ... ok [INFO] [stdout] test message::tests::test_message_with_parts ... ok [INFO] [stdout] test message::tests::test_role_display ... ok [INFO] [stdout] test message::tests::test_role_equality ... ok [INFO] [stdout] test message::tests::test_role_hash ... ok [INFO] [stdout] test message::tests::test_role_serde_roundtrip ... ok [INFO] [stdout] test message::tests::test_tool_call_result_image_skipped_when_none ... ok [INFO] [stdout] test message::tests::test_tool_call_result_is_error_default ... ok [INFO] [stdout] test model_catalog::tests::alias_resolution ... ok [INFO] [stdout] test message::tests::test_tool_call_result_serde ... ok [INFO] [stdout] test message::tests::test_tool_call_serde ... ok [INFO] [stdout] test model_catalog::tests::builtin_model_count_is_reasonable ... ok [INFO] [stdout] test model_catalog::tests::list_by_capability ... ok [INFO] [stdout] test model_catalog::tests::builtin_models_are_populated ... ok [INFO] [stdout] test model_catalog::tests::list_by_provider ... ok [INFO] [stdout] test message::tests::test_tool_call_result_with_image ... ok [INFO] [stdout] test model_catalog::tests::estimated_cost_calculation ... ok [INFO] [stdout] test model_catalog::tests::model_recommendation_with_requirements ... ok [INFO] [stdout] test model_catalog::tests::recommendation_with_provider_preference ... ok [INFO] [stdout] test model_catalog::tests::unknown_model_returns_none ... ok [INFO] [stdout] test model_catalog::tests::list_by_weight_class ... ok [INFO] [stdout] test model_catalog::tests::model_count_reflects_registrations ... ok [INFO] [stdout] test model_catalog::tests::usage_stats_accumulation ... ok [INFO] [stdout] test model_catalog::tests::recommendation_with_cost_constraint ... ok [INFO] [stdout] test model_catalog::tests::register_and_retrieve_model ... ok [INFO] [stdout] test model_catalog::tests::serialization_round_trip ... ok [INFO] [stdout] test model_catalog::tests::usage_tracking_record_and_retrieve ... ok [INFO] [stdout] test model_catalog::tests::usage_without_registered_model_still_records ... ok [INFO] [stdout] test patch::tests::test_apply_modification ... ok [INFO] [stdout] test patch::tests::test_apply_multi_hunk ... ok [INFO] [stdout] test patch::tests::test_apply_new_file_patch ... ok [INFO] [stdout] test patch::tests::test_apply_simple_addition ... ok [INFO] [stdout] test patch::tests::test_apply_simple_deletion ... ok [INFO] [stdout] test patch::tests::test_empty_diff ... ok [INFO] [stdout] test patch::tests::test_hunk_header_various_formats ... ok [INFO] [stdout] test patch::tests::test_fuzzy_matching_with_offset ... ok [INFO] [stdout] test patch::tests::test_parse_new_file_diff ... ok [INFO] [stdout] test patch::tests::test_parse_simple_unified_diff ... ok [INFO] [stdout] test patch::tests::test_parse_deleted_file_diff ... ok [INFO] [stdout] test patch::tests::test_generate_diff_from_two_strings ... ok [INFO] [stdout] test patch::tests::test_parse_diff_with_git_prefix ... ok [INFO] [stdout] test patch::tests::test_parse_multi_hunk_diff ... ok [INFO] [stdout] test patch::tests::test_validate_conflicting_patch ... ok [INFO] [stdout] test patch::tests::test_generate_empty_diff_for_identical_content ... ok [INFO] [stdout] test patch::tests::test_generated_diff_can_be_parsed_back ... ok [INFO] [stdout] test patch::tests::test_reverse_patch_roundtrip ... ok [INFO] [stdout] test patch::tests::test_round_trip_generate_parse_apply ... ok [INFO] [stdout] test patch::tests::test_validate_clean_patch ... ok [INFO] [stdout] test prompt_guard::tests::test_clean_input_allow_decision ... ok [INFO] [stdout] test prompt_guard::tests::test_case_insensitive ... ok [INFO] [stdout] test prompt_guard::tests::test_alert_has_position ... ok [INFO] [stdout] test prompt_guard::tests::test_act_as_persona ... ok [INFO] [stdout] test prompt_guard::tests::test_base64_content_detection ... ok [INFO] [stdout] test prompt_guard::tests::test_default_config ... ok [INFO] [stdout] test prompt_guard::tests::test_combined_attacks ... ok [INFO] [stdout] test prompt_guard::tests::test_custom_pattern ... ok [INFO] [stdout] test prompt_guard::tests::test_clean_input_passes ... ok [INFO] [stdout] test prompt_guard::tests::test_data_uri_injection ... ok [INFO] [stdout] test prompt_guard::tests::test_base64_instruction ... ok [INFO] [stdout] test prompt_guard::tests::test_delimiter_system_tag ... ok [INFO] [stdout] test prompt_guard::tests::test_delimiter_backtick ... ok [INFO] [stdout] test prompt_guard::tests::test_disregard_instructions ... ok [INFO] [stdout] test prompt_guard::tests::test_clean_input_is_safe ... ok [INFO] [stdout] test prompt_guard::tests::test_delimiter_separator ... ok [INFO] [stdout] test prompt_guard::tests::test_configurable_threshold_changes_behavior ... ok [INFO] [stdout] test prompt_guard::tests::test_ignore_previous_instructions ... ok [INFO] [stdout] test prompt_guard::tests::test_forget_instructions ... ok [INFO] [stdout] test prompt_guard::tests::test_html_script_injection ... ok [INFO] [stdout] test prompt_guard::tests::test_forget_everything ... ok [INFO] [stdout] test prompt_guard::tests::test_jailbreak_developer_mode ... ok [INFO] [stdout] test prompt_guard::tests::test_instruction_override ... ok [INFO] [stdout] test prompt_guard::tests::test_empty_input_is_safe ... ok [INFO] [stdout] test prompt_guard::tests::test_jailbreak_dan_mode ... ok [INFO] [stdout] test prompt_guard::tests::test_ignore_previous_instructions_dangerous ... ok [INFO] [stdout] test prompt_guard::tests::test_recommended_action_display ... ok [INFO] [stdout] test prompt_guard::tests::test_javascript_uri ... ok [INFO] [stdout] test prompt_guard::tests::test_long_input_detection ... ok [INFO] [stdout] test prompt_guard::tests::test_role_confusion_assistant ... ok [INFO] [stdout] test prompt_guard::tests::test_role_confusion_system ... ok [INFO] [stdout] test prompt_guard::tests::test_role_reassignment ... ok [INFO] [stdout] test prompt_guard::tests::test_prompt_delimiter_inst ... ok [INFO] [stdout] test prompt_guard::tests::test_multiple_patterns_higher_score ... ok [INFO] [stdout] test prompt_guard::tests::test_sanitize_strips_injection ... ok [INFO] [stdout] test prompt_guard::tests::test_scan_result_has_threat_level ... ok [INFO] [stdout] test prompt_guard::tests::test_severity_ordering ... ok [INFO] [stdout] test prompt_guard::tests::test_score_range ... ok [INFO] [stdout] test prompt_guard::tests::test_threat_level_display ... ok [INFO] [stdout] test prompt_guard::tests::test_threat_level_ordering ... ok [INFO] [stdout] test prompt_guard::tests::test_scan_and_decide_block ... ok [INFO] [stdout] test prompt_guard::tests::test_system_prompt_extraction ... ok [INFO] [stdout] test prompt_guard::tests::test_sanitize_strips_script_tags ... ok [INFO] [stdout] test prompt_guard::tests::test_sanitize_clean_input_unchanged ... ok [INFO] [stdout] test provider_health::tests::circuit_open_blocks_availability ... ok [INFO] [stdout] test provider_health::tests::consecutive_errors_opens_circuit ... ok [INFO] [stdout] test provider_health::tests::default_config_has_sensible_values ... ok [INFO] [stdout] test provider_health::tests::error_rate_threshold_triggers_circuit ... ok [INFO] [stdout] test prompt_guard::tests::test_scan_and_decide_warn ... ok [INFO] [stdout] test provider_health::tests::error_rate_tracking ... ok [INFO] [stdout] test provider_health::tests::failed_half_open_reopens_circuit ... ok [INFO] [stdout] test provider_health::tests::failover_skips_unhealthy_providers ... ok [INFO] [stdout] test provider_health::tests::failover_chain_returns_next_provider ... ok [INFO] [stdout] test provider_health::tests::latency_percentile_tracking ... ok [INFO] [stdout] test provider_health::tests::manual_circuit_reset ... ok [INFO] [stdout] test provider_health::tests::multiple_providers_tracked_independently ... ok [INFO] [stdout] test provider_health::tests::record_error_increments_counters ... ok [INFO] [stdout] test provider_health::tests::record_success_updates_stats ... ok [INFO] [stdout] test provider_health::tests::recovery_timeout_triggers_half_open ... ok [INFO] [stdout] test provider_health::tests::successful_half_open_closes_circuit ... ok [INFO] [stdout] test provider_health::tests::unknown_provider_is_available ... ok [INFO] [stdout] test reply::tests::test_apply_code_format ... ok [INFO] [stdout] test reply::tests::test_apply_plain_text ... ok [INFO] [stdout] test provider_health::tests::health_status_transitions ... ok [INFO] [stdout] test reply::tests::test_apply_truncation ... ok [INFO] [stdout] test reply::tests::test_directive_creation ... ok [INFO] [stdout] test reply::tests::test_format_serialization ... ok [INFO] [stdout] test sandbox::tests::test_build_command_creates_sanitized_command ... ok [INFO] [stdout] test sandbox::tests::test_build_command_fails_for_denied_commands ... ok [INFO] [stdout] test sandbox::tests::test_custom_config_overrides_defaults ... ok [INFO] [stdout] test sandbox::tests::test_default_config_sensible_values ... ok [INFO] [stdout] test sandbox::tests::test_denied_command_display_formatting ... ok [INFO] [stdout] test sandbox::tests::test_empty_allowed_paths_denies_all ... ok [INFO] [stdout] test sandbox::tests::test_glob_match_patterns ... ok [INFO] [stdout] test sandbox::tests::test_path_canonicalization_relative ... ok [INFO] [stdout] test sandbox::tests::test_sanitize_environment_only_allowed_vars ... ok [INFO] [stdout] test sandbox::tests::test_sanitize_environment_filters_denied_patterns ... ok [INFO] [stdout] test sandbox::tests::test_validate_command_allows_normal_commands ... ok [INFO] [stdout] test sandbox::tests::test_validate_command_blocks_denied_commands ... ok [INFO] [stdout] test sandbox::tests::test_validate_command_detects_fork_bomb ... ok [INFO] [stdout] test sandbox::tests::test_validate_command_detects_pipe_to_sensitive ... ok [INFO] [stdout] test sandbox::tests::test_validate_command_detects_substitution ... ok [INFO] [stdout] test sandbox::tests::test_validate_path_allows_files_in_allowed_dirs ... ok [INFO] [stdout] test sandbox::tests::test_validate_path_blocks_denied_dirs ... ok [INFO] [stdout] test sandbox::tests::test_validate_path_detects_traversal ... ok [INFO] [stdout] test sandbox::tests::test_validate_path_handles_symlink_traversal ... ok [INFO] [stdout] test secret_store::tests::test_delete_secret ... ok [INFO] [stdout] test secret_store::tests::test_file_secret_provider_invalid_format ... ok [INFO] [stdout] test secret_store::tests::test_env_secret_provider ... ok [INFO] [stdout] test secret_store::tests::test_list_secret_names ... ok [INFO] [stdout] test secret_store::tests::test_mask_secret_empty ... ok [INFO] [stdout] test secret_store::tests::test_mask_secret_normal ... ok [INFO] [stdout] test secret_store::tests::test_mask_secret_short ... ok [INFO] [stdout] test secret_store::tests::test_overwrite_secret ... ok [INFO] [stdout] test secret_store::tests::test_secret_clone ... ok [INFO] [stdout] test secret_store::tests::test_file_secret_provider_parse ... ok [INFO] [stdout] test secret_store::tests::test_secret_display_is_masked ... ok [INFO] [stdout] test secret_store::tests::test_secret_expose ... ok [INFO] [stdout] test secret_store::tests::test_store_and_retrieve ... ok [INFO] [stdout] test secret_store::tests::test_store_len_and_empty ... ok [INFO] [stdout] test secret_store::tests::test_store_missing_key ... ok [INFO] [stdout] test secret_store::tests::test_zeroization_on_drop ... ok [INFO] [stdout] test signing::tests::test_generate_keypair ... ok [INFO] [stdout] test signing::tests::test_invalid_hex_key ... ok [INFO] [stdout] test signing::tests::test_empty_manifest_signing ... ok [INFO] [stdout] test signing::tests::test_key_hex_roundtrip ... ok [INFO] [stdout] test prompt_guard::tests::test_normal_conversation_no_false_positives ... ok [INFO] [stdout] test prompt_guard::tests::test_scan_safe_input ... ok [INFO] [stdout] test signing::tests::test_sign_and_verify ... ok [INFO] [stdout] test signing::tests::test_invalid_hex_signature ... ok [INFO] [stdout] test signing::tests::test_signature_is_hex_encoded ... ok [INFO] [stdout] test prompt_guard::tests::test_what_are_your_instructions ... ok [INFO] [stdout] test signing::tests::test_signed_manifest_roundtrip ... ok [INFO] [stdout] test signing::tests::test_signed_manifest_serialization ... ok [INFO] [stdout] test signing::tests::test_signed_manifest_tampered ... ok [INFO] [stdout] test prompt_guard::tests::test_unicode_homoglyphs_fullwidth ... ok [INFO] [stdout] test prompt_guard::tests::test_unicode_homoglyphs_cyrillic ... ok [INFO] [stdout] test prompt_guard::tests::test_you_are_now_a_hacker_dangerous ... ok [INFO] [stdout] test signing::tests::test_tamper_detection ... ok [INFO] [stdout] test ssrf::tests::test_allows_public_url ... ok [INFO] [stdout] test ssrf::tests::test_blocks_10_x_private_range ... ok [INFO] [stdout] test ssrf::tests::test_allows_explicit_allowed_host ... ok [INFO] [stdout] test ssrf::tests::test_blocks_127_0_0_1 ... ok [INFO] [stdout] test signing::tests::test_verifying_key_hex_roundtrip ... ok [INFO] [stdout] test ssrf::tests::test_blocks_172_16_private_range ... ok [INFO] [stdout] test ssrf::tests::test_allows_public_ip ... ok [INFO] [stdout] test ssrf::tests::test_blocks_192_168_private_range ... ok [INFO] [stdout] test ssrf::tests::test_blocks_file_scheme ... ok [INFO] [stdout] test ssrf::tests::test_blocks_gopher_scheme ... ok [INFO] [stdout] test ssrf::tests::test_blocks_ipv6_localhost ... ok [INFO] [stdout] test ssrf::tests::test_blocks_custom_pattern ... ok [INFO] [stdout] test ssrf::tests::test_blocks_localhost ... ok [INFO] [stdout] test ssrf::tests::test_blocks_metadata_google_internal ... ok [INFO] [stdout] test ssrf::tests::test_ipv6_unique_local_blocked ... ok [INFO] [stdout] test ssrf::tests::test_url_with_port ... ok [INFO] [stdout] test ssrf::tests::test_url_with_userinfo ... ok [INFO] [stdout] test ssrf::tests::test_blocks_link_local ... ok [INFO] [stdout] test ssrf::tests::test_cidr_range_contains ... ok [INFO] [stdout] test ssrf::tests::test_invalid_url_no_scheme ... ok [INFO] [stdout] test ssrf::tests::test_blocks_ftp_scheme ... ok [INFO] [stdout] test taint::tests::test_bleed_clean_command_passes ... ok [INFO] [stdout] test taint::tests::test_bleed_custom_pattern_registration ... ok [INFO] [stdout] test taint::tests::test_bleed_detect_bearer_token ... ok [INFO] [stdout] test signing::tests::test_wrong_key_rejection ... ok [INFO] [stdout] test taint::tests::test_sensitivity_ordering ... ok [INFO] [stdout] test taint::tests::test_taint_basic_taint_and_check ... ok [INFO] [stdout] test taint::tests::test_taint_multiple_labels_on_same_value ... ok [INFO] [stdout] test taint::tests::test_taint_no_taint_on_clean_value ... ok [INFO] [stdout] test taint::tests::test_taint_propagation_chain ... ok [INFO] [stdout] test taint::tests::test_taint_substring_detection ... ok [INFO] [stdout] test taint::tests::test_bleed_detect_password_in_url ... ok [INFO] [stdout] test tenant::tests::test_tenant_id_copy_clone ... ok [INFO] [stdout] test tenant::tests::test_tenant_id_default ... ok [INFO] [stdout] test tenant::tests::test_tenant_id_hash ... ok [INFO] [stdout] test tenant::tests::test_tenant_id_display ... ok [INFO] [stdout] test taint::tests::test_bleed_detect_base64_encoded_secret ... ok [INFO] [stdout] test taint::tests::test_bleed_detect_aws_access_key ... ok [INFO] [stdout] test tenant::tests::test_tenant_id_new_is_unique ... ok [INFO] [stdout] test tenant::tests::test_tenant_id_serde_transparent ... ok [INFO] [stdout] test tenant::tests::test_tenant_quota_default ... ok [INFO] [stdout] test tenant::tests::test_tenant_quota_serde_roundtrip ... ok [INFO] [stdout] test tool::tests::test_tool_category_display_all ... ok [INFO] [stdout] test tenant::tests::test_tenant_serde_roundtrip ... ok [INFO] [stdout] test taint::tests::test_bleed_env_var_scanning ... ok [INFO] [stdout] test taint::tests::test_integration_shell_command_with_leaked_secret_blocked ... ok [INFO] [stdout] test tool::tests::test_tool_category_equality ... ok [INFO] [stdout] test tool::tests::test_tool_category_hash ... ok [INFO] [stdout] test tenant::tests::test_tenant_status_display ... ok [INFO] [stdout] test tenant::tests::test_tenant_status_serde_roundtrip ... ok [INFO] [stdout] test taint::tests::test_bleed_detect_private_key ... ok [INFO] [stdout] test tool::tests::test_tool_category_serde_roundtrip ... ok [INFO] [stdout] test tool::tests::test_tool_category_serde_values ... ok [INFO] [stdout] test tool::tests::test_tool_definition_serde ... ok [INFO] [stdout] test tool::tests::test_tool_result_failure ... ok [INFO] [stdout] test tool::tests::test_tool_result_success ... ok [INFO] [stdout] test tool_policy::tests::test_glob_wildcard_matches_everything ... ok [INFO] [stdout] test tool_policy::tests::test_default_safety_rules ... ok [INFO] [stdout] test tool_policy::tests::test_deny_rule_blocks_tool ... ok [INFO] [stdout] test tool_policy::tests::test_deny_wins_over_allow ... ok [INFO] [stdout] test tool_policy::tests::test_fighter_pattern_matching ... ok [INFO] [stdout] test tool_policy::tests::test_glob_tool_pattern_matching ... ok [INFO] [stdout] test tool_policy::tests::test_max_invocations_condition ... ok [INFO] [stdout] test tool_policy::tests::test_policy_rule_serialization_roundtrip ... ok [INFO] [stdout] test tool_policy::tests::test_priority_ordering ... ok [INFO] [stdout] test tool_policy::tests::test_remove_rule ... ok [INFO] [stdout] test tool_policy::tests::test_time_window_condition ... ok [INFO] [stdout] test troop::tests::test_agent_message_serde ... ok [INFO] [stdout] test troop::tests::test_agent_message_type_task_assignment ... ok [INFO] [stdout] test troop::tests::test_agent_message_type_vote_request ... ok [INFO] [stdout] test troop::tests::test_auction_bid_serde ... ok [INFO] [stdout] test troop::tests::test_coordination_strategy_display ... ok [INFO] [stdout] test troop::tests::test_coordination_strategy_serde_roundtrip ... ok [INFO] [stdout] test tool_policy::tests::test_multiple_rules_different_scopes ... ok [INFO] [stdout] test troop::tests::test_data_share_message ... ok [INFO] [stdout] test tool_policy::tests::test_no_rules_allows_all ... ok [INFO] [stdout] test tool_policy::tests::test_policy_decision_includes_matching_rule_names ... ok [INFO] [stdout] test troop::tests::test_escalation_message ... ok [INFO] [stdout] test tool_policy::tests::test_require_capability_condition ... ok [INFO] [stdout] test troop::tests::test_message_channel_serde ... ok [INFO] [stdout] test troop::tests::test_message_priority_default ... ok [INFO] [stdout] test troop::tests::test_restart_strategy_serde ... ok [INFO] [stdout] test troop::tests::test_subtask_status_serde ... ok [INFO] [stdout] test troop::tests::test_swarm_subtask_with_dependencies ... ok [INFO] [stdout] test troop::tests::test_troop_id_default ... ok [INFO] [stdout] test troop::tests::test_troop_id_display ... ok [INFO] [stdout] test troop::tests::test_troop_id_new_is_unique ... ok [INFO] [stdout] test troop::tests::test_troop_id_serde_transparent ... ok [INFO] [stdout] test troop::tests::test_troop_serde_roundtrip ... ok [INFO] [stdout] test troop::tests::test_troop_status_display ... ok [INFO] [stdout] test troop::tests::test_troop_status_serde_roundtrip ... ok [INFO] [stdout] test workspace::tests::test_active_files ... ok [INFO] [stdout] test troop::tests::test_troop_id_copy_clone ... ok [INFO] [stdout] test troop::tests::test_swarm_task_progress ... ok [INFO] [stdout] test troop::tests::test_message_priority_ordering ... ok [INFO] [stdout] test workspace::tests::test_git_info ... ok [INFO] [stdout] test troop::tests::test_troop_id_hash ... ok [INFO] [stdout] test troop::tests::test_selection_criteria_serde ... ok [INFO] [stdout] test workspace::tests::test_summary_generation ... ok [INFO] [stdout] test workspace::tests::test_detect_project_type_javascript ... ok [INFO] [stdout] test workspace::tests::test_recent_changes ... ok [INFO] [stdout] test workspace::tests::test_detect_project_type_rust ... ok [INFO] [stdout] test signing::tests::test_large_manifest_signing ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 563 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.70s [INFO] [stdout] [INFO] [stderr] Running tests/security.rs (/opt/rustwide/target/debug/deps/security-fb2694378c22c21f) [INFO] [stdout] [INFO] [stdout] running 31 tests [INFO] [stdout] test test_audit_entries_since ... ok [INFO] [stdout] test test_audit_filtering ... ok [INFO] [stdout] test test_audit_entry_hashes_unique ... ok [INFO] [stdout] test test_audit_genesis_entry ... ok [INFO] [stdout] test test_audit_hash_chain_linkage ... ok [INFO] [stdout] test test_audit_serde_roundtrip ... ok [INFO] [stdout] test test_audit_chain_verification ... ok [INFO] [stdout] test test_sandbox_allows_valid_paths ... ok [INFO] [stdout] test test_sandbox_allows_safe_commands ... ok [INFO] [stdout] test test_sandbox_blocks_dangerous_commands ... ok [INFO] [stdout] test test_sandbox_blocks_denied_paths ... ok [INFO] [stdout] test test_sandbox_detects_shell_injection ... ok [INFO] [stdout] test test_sandbox_detects_path_traversal ... ok [INFO] [stdout] test test_sandbox_empty_allowlist_denies_all ... ok [INFO] [stdout] test test_sandbox_env_sanitization ... ok [INFO] [stdout] test test_ssrf_allowlist_bypasses_checks ... ok [INFO] [stdout] test test_ssrf_blocks_cloud_metadata ... ok [INFO] [stdout] test test_ssrf_blocks_dangerous_schemes ... ok [INFO] [stdout] test test_ssrf_blocks_ipv6_private ... ok [INFO] [stdout] test test_ssrf_blocks_localhost ... ok [INFO] [stdout] test test_ssrf_blocks_private_ranges ... ok [INFO] [stdout] test test_ssrf_custom_pattern_blocking ... ok [INFO] [stdout] test test_ssrf_invalid_url_no_scheme ... ok [INFO] [stdout] test test_ssrf_url_with_userinfo ... ok [INFO] [stdout] test test_sandbox_blocks_pipes_to_sensitive_commands ... ok [INFO] [stdout] test test_ssrf_allows_public_urls ... ok [INFO] [stdout] test test_prompt_guard_multi_vector_escalation ... ok [INFO] [stdout] test test_prompt_guard_detects_injection ... ok [INFO] [stdout] test test_prompt_guard_custom_pattern ... ok [INFO] [stdout] test test_prompt_guard_system_prompt_override ... ok [INFO] [stdout] test test_prompt_guard_safe_input ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s [INFO] [stdout] [INFO] [stderr] Doc-tests punch_types [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "646e1fe0d7ea63b05feb3af020eb06cd6b7ad075b811ebf423d2b9e0b7418817", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "646e1fe0d7ea63b05feb3af020eb06cd6b7ad075b811ebf423d2b9e0b7418817", kill_on_drop: false }` [INFO] [stdout] 646e1fe0d7ea63b05feb3af020eb06cd6b7ad075b811ebf423d2b9e0b7418817