[INFO] cloning repository https://github.com/Iwan-Teague/Rustynet
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Iwan-Teague/Rustynet" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIwan-Teague%2FRustynet", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIwan-Teague%2FRustynet'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3e941348a9dffb53ffbd2641df63ba1c4e7bea21
[INFO] testing Iwan-Teague/Rustynet against beta-2026-03-05 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIwan-Teague%2FRustynet" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/Iwan-Teague/Rustynet
[INFO] finished tweaking git repo https://github.com/Iwan-Teague/Rustynet
[INFO] tweaked toml for git repo https://github.com/Iwan-Teague/Rustynet written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Iwan-Teague/Rustynet on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Iwan-Teague/Rustynet 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" "+beta-2026-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+beta-2026-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7f15f2fbdf772b62f0efb6cbc1747f3466d3c71388f6ac5c06e070370ede91a6
[INFO] running `Command { std: "docker" "start" "-a" "7f15f2fbdf772b62f0efb6cbc1747f3466d3c71388f6ac5c06e070370ede91a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7f15f2fbdf772b62f0efb6cbc1747f3466d3c71388f6ac5c06e070370ede91a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7f15f2fbdf772b62f0efb6cbc1747f3466d3c71388f6ac5c06e070370ede91a6", kill_on_drop: false }`
[INFO] [stdout] 7f15f2fbdf772b62f0efb6cbc1747f3466d3c71388f6ac5c06e070370ede91a6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] be472efff0cc2df6e668eed750f838b8adeb033a2987a4f097592ab300d48be3
[INFO] running `Command { std: "docker" "start" "-a" "be472efff0cc2df6e668eed750f838b8adeb033a2987a4f097592ab300d48be3", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling rustynet-backend-api v0.1.0 (/opt/rustwide/workdir/crates/rustynet-backend-api)
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling rustynet-policy v0.1.0 (/opt/rustwide/workdir/crates/rustynet-policy)
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling rustynet-relay v0.1.0 (/opt/rustwide/workdir/crates/rustynet-relay)
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling rustynet-backend-wireguard v0.1.0 (/opt/rustwide/workdir/crates/rustynet-backend-wireguard)
[INFO] [stderr]    Compiling rustynet-backend-stub v0.1.0 (/opt/rustwide/workdir/crates/rustynet-backend-stub)
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling rustynet-crypto v0.1.0 (/opt/rustwide/workdir/crates/rustynet-crypto)
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling rustynet-control v0.1.0 (/opt/rustwide/workdir/crates/rustynet-control)
[INFO] [stderr]    Compiling rustynetd v0.1.0 (/opt/rustwide/workdir/crates/rustynetd)
[INFO] [stderr]    Compiling rustynet-cli v0.1.0 (/opt/rustwide/workdir/crates/rustynet-cli)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.55s
[INFO] running `Command { std: "docker" "inspect" "be472efff0cc2df6e668eed750f838b8adeb033a2987a4f097592ab300d48be3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be472efff0cc2df6e668eed750f838b8adeb033a2987a4f097592ab300d48be3", kill_on_drop: false }`
[INFO] [stdout] be472efff0cc2df6e668eed750f838b8adeb033a2987a4f097592ab300d48be3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 19e0581ee3a5132877d8aeb6e1e751170b03b4d31b0b38b17957486eb14ea21d
[INFO] running `Command { std: "docker" "start" "-a" "19e0581ee3a5132877d8aeb6e1e751170b03b4d31b0b38b17957486eb14ea21d", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustynet-relay v0.1.0 (/opt/rustwide/workdir/crates/rustynet-relay)
[INFO] [stderr]    Compiling rustynetd v0.1.0 (/opt/rustwide/workdir/crates/rustynetd)
[INFO] [stderr]    Compiling rustynet-cli v0.1.0 (/opt/rustwide/workdir/crates/rustynet-cli)
[INFO] [stderr]    Compiling rustynet-backend-wireguard v0.1.0 (/opt/rustwide/workdir/crates/rustynet-backend-wireguard)
[INFO] [stderr]    Compiling rustynet-control v0.1.0 (/opt/rustwide/workdir/crates/rustynet-control)
[INFO] [stderr]    Compiling rustynet-crypto v0.1.0 (/opt/rustwide/workdir/crates/rustynet-crypto)
[INFO] [stderr]    Compiling rustynet-backend-stub v0.1.0 (/opt/rustwide/workdir/crates/rustynet-backend-stub)
[INFO] [stderr]    Compiling rustynet-backend-api v0.1.0 (/opt/rustwide/workdir/crates/rustynet-backend-api)
[INFO] [stderr]    Compiling rustynet-policy v0.1.0 (/opt/rustwide/workdir/crates/rustynet-policy)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 13.96s
[INFO] running `Command { std: "docker" "inspect" "19e0581ee3a5132877d8aeb6e1e751170b03b4d31b0b38b17957486eb14ea21d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "19e0581ee3a5132877d8aeb6e1e751170b03b4d31b0b38b17957486eb14ea21d", kill_on_drop: false }`
[INFO] [stdout] 19e0581ee3a5132877d8aeb6e1e751170b03b4d31b0b38b17957486eb14ea21d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e555d975d5cd682760637f8a9054d8b965b8711bd93482e6d91baa09d71aec52
[INFO] running `Command { std: "docker" "start" "-a" "e555d975d5cd682760637f8a9054d8b965b8711bd93482e6d91baa09d71aec52", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_backend_api-19fc9c7618755e94)
[INFO] [stderr]      Running tests/backend_contract.rs (/opt/rustwide/target/debug/deps/backend_contract-51af6820da4b8bd5)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::node_id_rejects_empty_or_whitespace_only_values ... ok
[INFO] [stdout] test tests::node_id_trims_outer_whitespace ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test backend_contract_replaces_route_set_deterministically ... ok
[INFO] [stdout] test backend_contract_requires_running_state_for_mutations ... ok
[INFO] [stdout] test backend_contract_exposes_handshake_evidence_for_known_peers_only ... ok
[INFO] [stderr]      Running tests/backend_contract_perf.rs (/opt/rustwide/target/debug/deps/backend_contract_perf-02ce2cb144aaa6d9)
[INFO] [stdout] test backend_contract_rejects_double_start_and_resets_on_shutdown ... ok
[INFO] [stdout] test backend_contract_updates_peer_endpoint_without_replacing_peer ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test phase1_backend_contract_perf_report ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_backend_stub-472987ce105593d4)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::stub_backend_passes_lifecycle_and_peer_route_flow ... ok
[INFO] [stdout] test tests::stub_backend_rejects_mutation_while_stopped ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_backend_wireguard-d96441bc8a7516a9)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test tests::base64_encoder_matches_wireguard_key_format ... ok
[INFO] [stdout] test tests::linux_backend_full_tunnel_rule_uses_fixed_priority ... ok
[INFO] [stdout] test tests::in_memory_backend_preserves_lifecycle_contract ... ok
[INFO] [stdout] test tests::linux_backend_ignores_missing_route_delete_during_reconciliation ... ok
[INFO] [stdout] test tests::linux_backend_executes_ip_and_wg_calls_through_runner ... ok
[INFO] [stdout] test tests::latest_handshake_parser_rejects_oversized_or_malformed_output ... ok
[INFO] [stdout] test tests::linux_backend_validates_interface_and_cidr_inputs ... ok
[INFO] [stdout] test tests::linux_backend_reads_latest_handshake_for_configured_peer ... ok
[INFO] [stdout] test tests::linux_backend_uses_base64_peer_key_for_wg_commands ... ok
[INFO] [stdout] test tests::macos_backend_reports_ipv6_not_supported_until_parity_is_implemented ... ok
[INFO] [stdout] test tests::macos_backend_requires_utun_interface_name ... ok
[INFO] [stdout] test tests::linux_backend_propagates_runner_failures ... ok
[INFO] [stdout] test tests::macos_backend_accepts_basic_lifecycle_with_recording_runner ... ok
[INFO] [stderr]      Running tests/conformance.rs (/opt/rustwide/target/debug/deps/conformance-6c3c15dfb4d5d729)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test wireguard_backend_remove_peer_updates_runtime_state ... ok
[INFO] [stdout] test wireguard_backend_follows_lifecycle_contract ... ok
[INFO] [stdout] test wireguard_backend_rejects_double_start ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rustynet_cli-a0710c124d3fd244)
[INFO] [stdout] 
[INFO] [stdout] running 62 tests
[INFO] [stdout] test env_file::tests::format_env_assignment_escapes_shell_expansion_bytes ... ok
[INFO] [stdout] test env_file::tests::format_env_assignment_rejects_newlines ... ok
[INFO] [stdout] test env_file::tests::format_env_assignment_quotes_shell_metacharacters ... ok
[INFO] [stdout] test ops_e2e::tests::safe_token_accepts_expected_charset ... ok
[INFO] [stdout] test ops_install_systemd::tests::assignment_peer_endpoint_resolves_peer_endpoint ... ok
[INFO] [stdout] test ops_install_systemd::tests::bytes_to_hex_encodes_expected_value ... ok
[INFO] [stdout] test ops_install_systemd::tests::resolve_selected_exit_node_from_default_route ... ok
[INFO] [stdout] test ops_install_systemd::tests::resolve_selected_exit_node_prefers_explicit_exit_id ... ok
[INFO] [stdout] test ops_install_systemd::tests::parse_dev_interface_token_extracts_interface ... ok
[INFO] [stdout] test ops_install_systemd::tests::parse_install_bool_accepts_expected_variants ... ok
[INFO] [stdout] test ops_peer_store::tests::list_supports_role_and_node_filters ... ok
[INFO] [stdout] test ops_install_systemd::tests::read_env_file_values_decodes_quoted_values ... ok
[INFO] [stdout] test ops_install_systemd::tests::read_env_file_values_takes_first_assignment_only ... ok
[INFO] [stdout] test ops_phase1::tests::phase1_collector_derives_max_metrics_from_ndjson ... ok
[INFO] [stdout] test ops_phase1::tests::phase1_collector_hardens_group_writable_source_file ... ok
[INFO] [stdout] test ops_phase1::tests::parse_bool_value_matches_systemd_script_contract ... ok
[INFO] [stdout] test env_file::tests::parse_env_value_decodes_single_quoted_values ... ok
[INFO] [stdout] test env_file::tests::parse_env_value_decodes_double_quoted_values ... ok
[INFO] [stdout] test ops_e2e::tests::decode_base64_roundtrip_wireguard_pubkey_shape ... ok
[INFO] [stdout] test ops_phase9::tests::generation_marker_parser_accepts_valid_tokens ... ok
[INFO] [stdout] test ops_phase9::tests::generation_marker_parser_rejects_missing_or_non_numeric_tokens ... ok
[INFO] [stdout] test ops_phase9::tests::phase10_host_identity_validation_rejects_invalid_values ... ok
[INFO] [stdout] test ops_peer_store::tests::validate_creates_store_with_secure_modes ... ok
[INFO] [stdout] test ops_e2e::tests::assignment_refresh_env_quotes_structured_values ... ok
[INFO] [stdout] test ops_phase1::tests::phase1_collector_rejects_non_measured_json_source ... ok
[INFO] [stdout] test tests::execute_reports_error_when_daemon_is_unreachable ... ok
[INFO] [stdout] test tests::macos_keychain_account_validation_rejects_invalid_values ... ok
[INFO] [stdout] test tests::parse_bool_value_matches_systemd_script_contract ... ok
[INFO] [stdout] test tests::detect_tampered_log_handles_empty_membership_log ... ok
[INFO] [stdout] test ops_peer_store::tests::list_rejects_malformed_record_with_extra_field ... ok
[INFO] [stdout] test tests::parse_bundle_field_ignores_whitespace ... ok
[INFO] [stdout] test tests::parse_supports_assignment_issue_command ... ok
[INFO] [stdout] test tests::parse_supports_key_commands ... ok
[INFO] [stdout] test tests::parse_supports_membership_commands ... ok
[INFO] [stdout] test tests::parse_supports_membership_evidence_generation ... ok
[INFO] [stdout] test ops_phase9::tests::release_provenance_verification_rejects_unsigned_document ... ok
[INFO] [stdout] test tests::parse_supports_phase10_route_advertise_command ... ok
[INFO] [stdout] test ops_phase1::tests::phase1_secure_directory_hardens_group_writable_directory ... ok
[INFO] [stdout] test tests::parse_supports_phase6_parity_ops_commands ... ok
[INFO] [stdout] test tests::rewrite_assignment_refresh_exit_node_updates_and_clears ... ok
[INFO] [stdout] test tests::rewrite_assignment_refresh_lan_routes_updates_and_clears ... ok
[INFO] [stdout] test tests::rewrite_env_key_value_quotes_structured_values ... ok
[INFO] [stdout] test tests::parse_supports_operator_menu_command ... ok
[INFO] [stdout] test tests::rewrite_env_key_value_replaces_or_appends ... ok
[INFO] [stdout] test ops_phase9::tests::read_json_object_rejects_oversized_source ... ok
[INFO] [stdout] test tests::secure_remove_file_rejects_directory ... ok
[INFO] [stdout] test ops_phase1::tests::phase1_report_validator_rejects_not_measurable_metric ... ok
[INFO] [stdout] test tests::phase6_parity_validation_rejects_false_readiness_control ... ok
[INFO] [stdout] test tests::parse_supports_ops_commands ... ok
[INFO] [stdout] test ops_phase9::tests::read_utf8_regular_file_with_max_bytes_rejects_oversized_source ... ok
[INFO] [stdout] test ops_phase1::tests::phase1_collector_rejects_non_measured_ndjson_entry ... ok
[INFO] [stdout] test tests::create_secure_temp_file_sets_owner_only_mode ... ok
[INFO] [stdout] test ops_phase9::tests::phase10_provenance_keypair_writer_sets_secure_permissions_and_matching_keys ... ok
[INFO] [stdout] test ops_phase9::tests::phase10_provenance_keypair_writer_hardens_open_parent_directory ... ok
[INFO] [stdout] test tests::secure_remove_file_removes_target_file ... ok
[INFO] [stdout] test ops_phase9::tests::phase6_parity_attestation_verification_rejects_tampered_report ... ok
[INFO] [stdout] test ops_phase9::tests::phase9_evidence_attestation_verification_rejects_git_commit_mismatch ... ok
[INFO] [stdout] test ops_phase9::tests::release_provenance_verification_rejects_tampered_artifact ... ok
[INFO] [stdout] test ops_e2e::tests::extract_assignment_generated_from_status_line ... ok
[INFO] [stdout] test tests::signing_key_loader_rejects_group_readable_file ... ok
[INFO] [stdout] test tests::signing_key_loader_rejects_symlink_path ... ok
[INFO] [stdout] test tests::signing_key_loader_accepts_owner_only_file ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 62 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.93s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_control-7b8539bbfd8ac07c)
[INFO] [stdout] 
[INFO] [stdout] running 60 tests
[INFO] [stdout] test admin::tests::csrf_and_session_policies_are_enforced ... ok
[INFO] [stdout] test admin::tests::mfa_is_required_for_privileged_mutations ... ok
[INFO] [stdout] test admin::tests::policy_bootstrap_defaults_to_safe_values ... ok
[INFO] [stdout] test admin::tests::clickjacking_headers_are_hardened ... ok
[INFO] [stdout] test ga::tests::compatibility_policy_rejects_invalid_window ... ok
[INFO] [stdout] test ga::tests::compatibility_policy_blocks_outdated_or_cross_major_clients ... ok
[INFO] [stdout] test operations::tests::redaction_covers_all_ingestion_paths ... ok
[INFO] [stdout] test membership::tests::unknown_schema_version_is_rejected_fail_closed ... ok
[INFO] [stdout] test operations::tests::tamper_evident_audit_log_detects_corruption ... ok
[INFO] [stdout] test admin::tests::rbac_is_deny_by_default_for_privileged_actions ... ok
[INFO] [stdout] test membership::tests::canonical_state_and_root_are_deterministic ... ok
[INFO] [stdout] test ga::tests::crypto_calendar_enforces_deny_after_removal ... ok
[INFO] [stdout] test operations::tests::diagnostics_summary_reports_overall_health ... ok
[INFO] [stdout] test membership::tests::signed_update_requires_threshold_and_owner_for_quorum_change ... ok
[INFO] [stdout] test admin::tests::privileged_helper_validation_accepts_argv_only_commands ... ok
[INFO] [stdout] test admin::tests::privileged_helper_validation_rejects_shell_construction ... ok
[INFO] [stdout] test ga::tests::ga_release_gate_fails_closed_when_any_condition_is_unmet ... ok
[INFO] [stdout] test ga::tests::insecure_compatibility_exception_requires_explicit_active_risk_acceptance ... ok
[INFO] [stdout] test ga::tests::performance_budget_enforces_phase9_targets ... ok
[INFO] [stdout] test scale::tests::enterprise_auth_validates_issuer_audience_and_mfa ... ok
[INFO] [stdout] test scale::tests::ha_cluster_rejects_when_no_healthy_replica_exists ... ok
[INFO] [stdout] test scale::tests::trust_hardening_disable_requires_break_glass_secret ... ok
[INFO] [stdout] test scale::tests::ha_cluster_fails_over_to_next_healthy_replica ... ok
[INFO] [stdout] test tests::api_abuse_monitor_emits_alert_after_threshold ... ok
[INFO] [stdout] test tests::auth_rate_limit_enforces_per_ip_limits ... ok
[INFO] [stdout] test scale::tests::tenant_guard_enforces_isolation_and_delegated_admin_limits ... ok
[INFO] [stdout] test tests::auth_lockout_applies_exponential_backoff ... ok
[INFO] [stdout] test tests::algorithm_policy_rejects_compatibility_exceptions ... ok
[INFO] [stdout] test operations::tests::structured_logger_never_writes_cleartext_secrets ... ok
[INFO] [stdout] test persistence::tests::sqlite_store_applies_schema_and_persists_core_records ... ok
[INFO] [stdout] test tests::auto_tunnel_bundle_assignments_are_consistent_across_targets ... ok
[INFO] [stdout] test tests::enrollment_tokens_use_randomized_nonce_values ... ok
[INFO] [stdout] test tests::policy_guard_defaults_to_deny ... ok
[INFO] [stdout] test tests::auto_tunnel_bundle_is_policy_gated_and_assignment_is_stable ... ok
[INFO] [stdout] test tests::endpoint_hint_bundle_enforces_policy_and_candidate_validation ... ok
[INFO] [stdout] test scale::tests::trust_hardening_fails_closed_when_state_missing_or_mismatched ... ok
[INFO] [stdout] test tests::persisted_enrollment_rejects_missing_persisted_credential ... ok
[INFO] [stdout] test persistence::tests::sqlite_store_enforces_single_use_consume_semantics ... ok
[INFO] [stdout] test tests::enrollment_persists_user_node_and_audit_event ... ok
[INFO] [stdout] test tests::persisted_enrollment_enforces_single_use_in_persistence ... ok
[INFO] [stdout] test tests::reusable_credential_requires_strict_scope_ttl_and_vault_storage ... ok
[INFO] [stdout] test tests::revocation_events_are_generation_tracked ... ok
[INFO] [stdout] test tests::signing_seed_derivation_uses_stable_hkdf_vectors ... ok
[INFO] [stdout] test tests::throwaway_credential_debug_redacts_sensitive_fields ... ok
[INFO] [stdout] test tests::throwaway_credential_atomic_single_use_under_concurrency ... ok
[INFO] [stdout] test tests::transport_policy_rejects_tls12_and_unsigned_control_data ... ok
[INFO] [stdout] test tests::reusable_credential_scope_requires_tag_prefix ... ok
[INFO] [stdout] test tests::enrollment_is_single_use_and_registers_node ... ok
[INFO] [stdout] test tests::token_claims_debug_redacts_sensitive_fields ... ok
[INFO] [stdout] test membership::tests::add_node_update_requires_valid_signatures_and_root_chain ... ok
[INFO] [stdout] test membership::tests::snapshot_and_log_roundtrip_integrity ... ok
[INFO] [stdout] test tests::signed_peer_map_detects_tampering ... ok
[INFO] [stdout] test tests::endpoint_hint_bundle_is_signed_and_tamper_detected ... ok
[INFO] [stdout] test tests::trust_state_persist_and_integrity_check ... ok
[INFO] [stdout] test membership::tests::replay_and_rollback_are_rejected ... ok
[INFO] [stdout] test tests::replay_protection_rejects_nonce_reuse ... ok
[INFO] [stdout] test tests::reusable_credential_can_be_consumed_multiple_times_within_limit ... ok
[INFO] [stdout] test tests::throwaway_credential_lifecycle_and_audit_events ... ok
[INFO] [stdout] test tests::signed_token_claims_are_verified_and_replay_guarded ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rustynet_control-2ce8a647a410929a)
[INFO] [stdout] test tests::auto_tunnel_bundle_is_centrally_assigned_and_signed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 60 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.25s
[INFO] [stdout] 
[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] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_crypto-d6c8c4d694cd36a9)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test tests::accepts_nonzero_key_material ... ok
[INFO] [stdout] test tests::denylisted_algorithm_remains_denied_without_exceptions ... ok
[INFO] [stdout] test tests::rejects_zero_key_material ... ok
[INFO] [stdout] test tests::rejects_weak_key_custody_permissions ... ok
[INFO] [stdout] test tests::invalid_exception_for_allowlisted_algorithm_is_rejected ... ok
[INFO] [stdout] test tests::key_custody_manager_strict_mode_rejects_encrypted_file_fallback ... ok
[INFO] [stdout] test tests::denylisted_algorithm_exceptions_are_rejected ... ok
[INFO] [stdout] test tests::allowlisted_algorithm_is_accepted ... ok
[INFO] [stdout] test tests::signing_provider_policy_requires_hardware_primary ... ok
[INFO] [stdout] test tests::rejects_symlink_key_file_permissions ... ok
[INFO] [stdout] test tests::denylisted_algorithm_is_rejected_without_exception ... ok
[INFO] [stdout] test tests::validates_strict_key_custody_permissions ... ok
[INFO] [stdout] test tests::key_custody_manager_rejects_invalid_key_identifier ... ok
[INFO] [stdout] test tests::provider_attestation_rejects_wrong_signing_key ... ok
[INFO] [stdout] test tests::provider_attestation_roundtrip_verifies ... ok
[INFO] [stdout] test tests::encrypted_envelope_rejects_wrong_passphrase ... ok
[INFO] [stdout] test tests::encrypted_envelope_roundtrip_succeeds ... ok
[INFO] [stdout] test tests::key_custody_manager_falls_back_when_os_store_unavailable ... ok
[INFO] [stdout] test tests::encrypted_key_file_roundtrip_with_permission_checks ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.70s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_policy-8a1dc4e7ce1bc5f4)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test tests::contextual_policy_defaults_to_deny_in_shared_contexts ... ok
[INFO] [stdout] test tests::contextual_policy_does_not_widen_between_shared_router_and_exit ... ok
[INFO] [stdout] test tests::policy_defaults_to_deny ... ok
[INFO] [stdout] test tests::protocol_filter_is_preserved_for_shared_exit_context ... ok
[INFO] [stdout] test tests::membership_aware_contextual_policy_denies_revoked_and_unknown_nodes ... ok
[INFO] [stdout] test tests::membership_aware_policy_preserves_protocol_filters ... ok
[INFO] [stdout] test tests::policy_respects_first_match ... ok
[INFO] [stdout] test tests::rollout_controller_rejects_allow_all_and_supports_rollback ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynet_relay-87c0d8deedbd6c0f)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::relay_selection_policy_respects_allowed_regions ... ok
[INFO] [stdout] test tests::relay_fleet_prefers_healthy_low_latency_nodes ... ok
[INFO] [stdout] test tests::relay_fleet_fails_over_when_primary_is_unhealthy ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rustynet_relay-a986853e97411f79)
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustynetd-6df5bf872baffb41)
[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] [stdout] 
[INFO] [stdout] running 136 tests
[INFO] [stdout] test daemon::tests::artifact_limitgate_rejects_excessive_key_depth ... ok
[INFO] [stdout] test daemon::tests::auto_tunnel_watermark_round_trip_persists_payload_digest ... ok
[INFO] [stdout] test daemon::tests::artifact_limitgate_rejects_oversized_bundle_files ... ok
[INFO] [stdout] test daemon::tests::artifact_fuzzgate_bundle_parsers_never_panic_and_fail_closed ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_enters_restricted_safe_mode_without_trust_evidence ... ok
[INFO] [stdout] test daemon::tests::artifact_limitgate_rejects_count_overflow_for_assignment_and_traversal ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_blind_exit_role_is_least_privilege ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_enforcement_applies_and_blocks_manual_mutations ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_client_role_never_reports_exit_serving ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_rejects_replayed_trust_evidence ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_handles_status_and_mutating_commands ... ok
[INFO] [stdout] test daemon::tests::load_auto_tunnel_bundle_rejects_assigned_cidr_outside_mesh ... ok
[INFO] [stdout] test daemon::tests::load_auto_tunnel_bundle_rejects_non_host_assigned_cidr ... ok
[INFO] [stdout] test daemon::tests::load_auto_tunnel_watermark_rejects_legacy_version_without_digest ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_tamper_and_replay_fail_closed ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_denies_exit_selection_for_revoked_membership_node ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_traversal_probe_falls_back_to_relay_without_handshake_evidence ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_client_role_blocks_admin_mutations ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_allows_relay_exit_with_upstream_exit ... ok
[INFO] [stdout] test daemon::tests::load_trust_watermark_rejects_legacy_version_without_digest ... ok
[INFO] [stdout] test daemon::tests::load_trust_evidence_allows_equal_watermark_when_payload_digest_matches ... ok
[INFO] [stdout] test daemon::tests::load_trust_evidence_rejects_equal_watermark_when_legacy_digest_missing ... ok
[INFO] [stdout] test daemon::tests::node_role_command_matrix_is_fail_closed ... ok
[INFO] [stdout] test daemon::tests::parse_route_interface_token_handles_linux_and_macos_output ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_blind_exit_ignores_client_assignment_fields ... ok
[INFO] [stdout] test daemon::tests::passphrase_permission_mask_accepts_systemd_runtime_credential_mode ... ok
[INFO] [stdout] test daemon::tests::read_command_rejects_null_byte_payload ... ok
[INFO] [stdout] test daemon::tests::preflight_rejects_present_traversal_bundle_when_verifier_key_missing ... ok
[INFO] [stdout] test daemon::tests::read_command_rejects_oversized_payload ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_traversal_probe_recovers_direct_when_handshake_arrives ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_traversal_authority_rejects_unmanaged_peer_bundle ... ok
[INFO] [stdout] test daemon::tests::root_managed_shared_runtime_parent_policy_allows_expected_shape ... ok
[INFO] [stdout] test daemon::tests::run_daemon_rejects_in_memory_backend_mode ... ok
[INFO] [stdout] test daemon::tests::netcheck_reports_structured_traversal_diagnostics ... ok
[INFO] [stdout] test daemon::tests::artifact_fuzzgate_rejects_rollback_generations_fail_closed ... ok
[INFO] [stdout] test daemon::tests::load_traversal_bundle_rejects_private_srflx_candidate ... ok
[INFO] [stdout] test daemon::tests::runtime_key_scrub_only_removes_ephemeral_file_when_encrypted_store_is_used ... ok
[INFO] [stdout] test daemon::tests::validate_daemon_config_rejects_auto_port_forward_on_non_linux_backend ... ok
[INFO] [stdout] test daemon::tests::load_auto_tunnel_bundle_allows_equal_watermark_when_payload_digest_matches ... ok
[INFO] [stdout] test daemon::tests::runtime_key_prepare_requires_plaintext_key_when_encrypted_store_disabled ... ok
[INFO] [stdout] test daemon::tests::validate_daemon_config_rejects_auto_port_forward_short_lease ... ok
[INFO] [stdout] test daemon::tests::validate_file_security_rejects_group_writable_parent_directory ... ok
[INFO] [stdout] test daemon::tests::validate_daemon_config_rejects_fail_closed_ssh_allow_without_cidrs ... ok
[INFO] [stdout] test daemon::tests::validate_file_security_rejects_symlink_parent_directory ... ok
[INFO] [stdout] test daemon::tests::zeroize_optional_bytes_scrubs_sensitive_buffer ... ok
[INFO] [stdout] test dataplane::tests::phase3_direct_path_prefers_direct_then_falls_back_to_relay ... ok
[INFO] [stdout] test daemon::tests::resolve_egress_interface_value_uses_detector_only_for_auto ... ok
[INFO] [stdout] test dataplane::tests::phase3_handshake_guard_limits_burst ... ok
[INFO] [stdout] test dataplane::tests::phase3_linux_dataplane_lifecycle_and_route_flow ... ok
[INFO] [stdout] test dataplane::tests::phase3_default_deny_blocks_peer_connection ... ok
[INFO] [stdout] test dataplane::tests::phase4_exit_node_clear_removes_selection ... ok
[INFO] [stdout] test dataplane::tests::phase4_exit_node_selection_and_lan_toggle_are_enforced ... ok
[INFO] [stdout] test dataplane::tests::phase4_fail_close_blocks_tunnel_and_dns_when_required ... ok
[INFO] [stdout] test dataplane::tests::phase4_magic_dns_handles_duplicate_hostnames_deterministically ... ok
[INFO] [stdout] test ipc::tests::cidr_validation_rejects_non_numeric_payloads ... ok
[INFO] [stdout] test ipc::tests::parse_and_wire_roundtrip_for_mutating_command ... ok
[INFO] [stdout] test ipc::tests::parse_key_rotation_mutations ... ok
[INFO] [stdout] test ipc::tests::response_wire_roundtrip_preserves_ok_and_message ... ok
[INFO] [stdout] test daemon::tests::validate_daemon_config_rejects_relative_traversal_paths ... ok
[INFO] [stdout] test key_material::tests::remove_file_if_present_rejects_directory ... ok
[INFO] [stdout] test daemon::tests::load_trust_evidence_rejects_equal_watermark_when_payload_digest_differs ... ok
[INFO] [stdout] test daemon::tests::trust_watermark_round_trip_persists_payload_digest ... ok
[INFO] [stdout] test daemon::tests::traversal_watermark_round_trip_persists_payload_digest ... ok
[INFO] [stdout] test key_material::tests::remove_file_if_present_removes_symlink_without_following_target ... ok
[INFO] [stdout] test key_material::tests::remove_file_if_present_removes_target_file ... ok
[INFO] [stdout] test dataplane::tests::phase3_rekey_rotation_advances_generation ... ok
[INFO] [stdout] test key_material::tests::resolve_passphrase_source_rejects_direct_configured_path_fallback ... ok
[INFO] [stdout] test dataplane::tests::phase3_three_node_mesh_succeeds ... ok
[INFO] [stdout] test key_material::tests::resolve_passphrase_source_prefers_explicit_credential_path_env ... ok
[INFO] [stdout] test daemon::tests::load_auto_tunnel_bundle_rejects_equal_watermark_when_payload_digest_differs ... ok
[INFO] [stdout] test key_material::tests::resolve_passphrase_source_uses_credentials_directory_when_present ... ok
[INFO] [stdout] test key_material::tests::validate_binary_path_rejects_relative_paths ... ok
[INFO] [stdout] test perf::tests::metrics_include_required_phase1_names ... ok
[INFO] [stdout] test perf::tests::baseline_report_is_writable ... ok
[INFO] [stdout] test phase10::tests::apply_rejects_backend_start_failure_and_fail_closes ... ok
[INFO] [stdout] test phase10::tests::apply_exit_serving_requires_nat_forwarding ... ok
[INFO] [stdout] test phase10::tests::apply_rollback_forces_fail_closed_when_system_step_fails ... ok
[INFO] [stdout] test phase10::tests::apply_does_not_require_nat_when_not_full_tunnel_or_exit_serving ... ok
[INFO] [stdout] test phase10::tests::apply_accepts_already_running_backend_start ... ok
[INFO] [stdout] test phase10::tests::macos_render_pf_rules_enforces_dns_fail_closed_when_enabled ... ok
[INFO] [stdout] test phase10::tests::macos_render_pf_rules_omits_dns_fail_closed_rules_when_disabled ... ok
[INFO] [stdout] test phase10::tests::management_bypass_route_args_use_ipv4_routing_for_ipv4_cidr ... ok
[INFO] [stdout] test phase10::tests::management_bypass_route_args_use_ipv6_routing_for_ipv6_cidr ... ok
[INFO] [stdout] test phase10::tests::owned_anchor_names_filters_only_rustynet_anchors ... ok
[INFO] [stdout] test phase10::tests::peer_endpoint_bypass_route_args_use_ipv4_host_route ... ok
[INFO] [stdout] test phase10::tests::peer_endpoint_bypass_route_args_use_ipv6_host_route ... ok
[INFO] [stdout] test phase10::tests::audit_and_perf_reports_are_writable ... ok
[INFO] [stdout] test phase10::tests::direct_failover_requires_a_provisioned_relay_endpoint ... ok
[INFO] [stdout] test phase10::tests::relay_with_upstream_enables_tunnel_forwarding_path ... ok
[INFO] [stdout] test phase10::tests::transactional_apply_commits_generation_and_exit_state ... ok
[INFO] [stdout] test phase10::tests::transition_to_fail_closed_when_trust_is_invalid ... ok
[INFO] [stdout] test phase10::tests::lan_toggle_requires_toggle_route_advertisement_acl_and_policy ... ok
[INFO] [stdout] test phase10::tests::traversal_probe_falls_back_to_relay_when_handshake_does_not_advance ... ok
[INFO] [stdout] test phase10::tests::traversal_probe_uses_existing_fresh_handshake_on_current_endpoint ... ok
[INFO] [stdout] test phase10::tests::direct_relay_failover_and_failback_are_recorded ... ok
[INFO] [stdout] test phase10::tests::validate_binary_path_rejects_relative_paths ... ok
[INFO] [stdout] test phase10::tests::traversal_probe_promotes_direct_when_handshake_advances ... ok
[INFO] [stdout] test platform::tests::macos_and_windows_parity_checks_pass_when_hooks_are_ready ... ok
[INFO] [stdout] test platform::tests::parity_check_fails_when_leak_matrix_is_not_green ... ok
[INFO] [stdout] test privileged_helper::tests::fuzzgate_malformed_inputs_never_panic ... ok
[INFO] [stdout] test privileged_helper::tests::privileged_program_parser_rejects_unknown ... ok
[INFO] [stdout] test privileged_helper::tests::fuzzgate_rejects_unknown_tokens_and_shell_metacharacters ... ok
[INFO] [stdout] test privileged_helper::tests::safe_token_rejects_unsafe_characters ... ok
[INFO] [stdout] test privileged_helper::tests::fuzzgate_read_request_rejects_oversized_payload ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_accepts_known_nft_list_table_schema ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_rejects_invalid_nft_tokens ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_accepts_known_ip_schema ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_rejects_argument_over_max_bytes ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_rejects_too_many_arguments ... ok
[INFO] [stdout] test phase10::tests::macos_dns_rule_parser_accepts_port_alias_output ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_rejects_unknown_ip_schema ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_rejects_unknown_nft_rule_schema ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_traversal_runtime_sync_fail_closes_on_unmanaged_peer ... ok
[INFO] [stdout] test traversal::tests::adversarial_gate_nat_mismatch_blocks_unauthorized_direct_and_keeps_safe_relay_fallback ... ok
[INFO] [stdout] test traversal::tests::candidate_validation_rejects_duplicates ... ok
[INFO] [stdout] test traversal::tests::direct_plan_builds_simultaneous_rounds ... ok
[INFO] [stdout] test phase10::tests::prune_owned_tables_preserves_active_and_target_generation_tables ... ok
[INFO] [stdout] test traversal::tests::direct_session_survives_endpoint_roam ... ok
[INFO] [stdout] test traversal::tests::keepalive_interval_is_tighter_for_hard_nat ... ok
[INFO] [stdout] test traversal::tests::remote_probe_plan_prefers_higher_priority_direct_candidates ... ok
[INFO] [stdout] test traversal::tests::remote_probe_plan_rejects_relay_only_candidates ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_auto_tunnel_allows_exit_service_advertise_only ... ok
[INFO] [stdout] test privileged_helper::tests::validate_request_rejects_unknown_wg_schema ... ok
[INFO] [stdout] test resilience::tests::reconnect_policy_exponential_backoff_is_capped ... ok
[INFO] [stdout] test traversal::tests::direct_viability_rejects_double_symmetric_nat ... ok
[INFO] [stdout] test phase10::tests::firewall_generation_handoff_deletes_previous_table_only_after_new_rules_apply ... ok
[INFO] [stdout] test key_material::tests::validate_binary_path_rejects_symlink_to_untrusted_target ... FAILED
[INFO] [stdout] test phase10::tests::validate_binary_path_rejects_symlink_to_untrusted_target ... FAILED
[INFO] [stdout] test resilience::tests::session_snapshot_persist_restore_detects_tampering ... ok
[INFO] [stdout] test daemon::tests::preflight_allows_missing_traversal_bundle_without_verifier_key ... ok
[INFO] [stdout] test resilience::tests::concurrent_persist_keeps_snapshot_integrity ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_netcheck_rejects_forged_traversal_hint_fail_closed ... ok
[INFO] [stdout] test daemon::tests::load_traversal_bundle_rejects_tampered_signature_and_replay ... ok
[INFO] [stdout] test daemon::tests::daemon_runtime_netcheck_reports_runtime_programmed_traversal_paths ... ok
[INFO] [stdout] test daemon::tests::traversal_adversarial_gate_rejects_forged_stale_wrong_signer_and_nonce_replay ... ok
[INFO] [stdout] test daemon::tests::role_auth_matrix_runtime_is_exhaustive_and_fail_closed ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- key_material::tests::validate_binary_path_rejects_symlink_to_untrusted_target stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'key_material::tests::validate_binary_path_rejects_symlink_to_untrusted_target' (312) panicked at crates/rustynetd/src/key_material.rs:1013:18:
[INFO] [stdout] untrusted symlink target should be rejected: ()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60fd3f4e0fea - std[b80a194dd3c418bb]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x60fd3f4e0fea - std[b80a194dd3c418bb]::backtrace_rs::backtrace::trace_unsynchronized::<std[b80a194dd3c418bb]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x60fd3f4e0fea - std[b80a194dd3c418bb]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x60fd3f4e0fea - <<std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[10b6fa85044e1869]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x60fd3f4f849a - <core[10b6fa85044e1869]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x60fd3f4f849a - core[10b6fa85044e1869]::fmt::write
[INFO] [stdout]    6:     0x60fd3f4e5ce2 - std[b80a194dd3c418bb]::io::default_write_fmt::<alloc[dd269455e567d8e9]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x60fd3f4e5ce2 - <alloc[dd269455e567d8e9]::vec::Vec<u8> as std[b80a194dd3c418bb]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x60fd3f4bc9df - <std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x60fd3f4bc9df - std[b80a194dd3c418bb]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x60fd3f4d7e49 - std[b80a194dd3c418bb]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x60fd3f2d567c - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x60fd3f2d567c - test[826cbc6ef54ab466]::test_main_with_exit_callback::<test[826cbc6ef54ab466]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x60fd3f4d8002 - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x60fd3f4d8002 - std[b80a194dd3c418bb]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x60fd3f4bca98 - std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x60fd3f4b41a9 - std[b80a194dd3c418bb]::sys::backtrace::__rust_end_short_backtrace::<std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x60fd3f4bd9bd - __rustc[9698a3e60dd14283]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x60fd3f4f8d4c - core[10b6fa85044e1869]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x60fd3f4f8ac2 - core[10b6fa85044e1869]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x60fd3f1bd588 - core::result::Result<T,E>::expect_err::h68c2eac552292f62
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1298:22
[INFO] [stdout]   21:     0x60fd3f28c5ae - rustynetd::key_material::tests::validate_binary_path_rejects_symlink_to_untrusted_target::h4540ac35d80529ae
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/rustynetd/src/key_material.rs:1013:18
[INFO] [stdout]   22:     0x60fd3f28c727 - rustynetd::key_material::tests::validate_binary_path_rejects_symlink_to_untrusted_target::{{closure}}::he8bcfb3c8e059e7c
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/rustynetd/src/key_material.rs:1001:66
[INFO] [stdout]   23:     0x60fd3f25a7f6 - core::ops::function::FnOnce::call_once::h2627328018fd3928
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x60fd3f2c975b - <fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x60fd3f2c975b - test[826cbc6ef54ab466]::__rust_begin_short_backtrace::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x60fd3f2d614b - test[826cbc6ef54ab466]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x60fd3f2d614b - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x60fd3f2d614b - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x60fd3f2d614b - std[b80a194dd3c418bb]::panicking::catch_unwind::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x60fd3f2d614b - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x60fd3f2d614b - test[826cbc6ef54ab466]::run_test_in_process
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x60fd3f2d614b - test[826cbc6ef54ab466]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x60fd3f2d1864 - test[826cbc6ef54ab466]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x60fd3f2d1864 - std[b80a194dd3c418bb]::sys::backtrace::__rust_begin_short_backtrace::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x60fd3f2d8d52 - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::panicking::catch_unwind::<(), core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x60fd3f2d8d52 - <std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1} as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x60fd3f4dffcf - <alloc[dd269455e567d8e9]::boxed::Box<dyn core[10b6fa85044e1869]::ops::function::FnOnce<(), Output = ()> + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x60fd3f4dffcf - <std[b80a194dd3c418bb]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x71a53fbbbaa4 - <unknown>
[INFO] [stdout]   45:     0x71a53fc48a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- phase10::tests::validate_binary_path_rejects_symlink_to_untrusted_target stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'phase10::tests::validate_binary_path_rejects_symlink_to_untrusted_target' (343) panicked at crates/rustynetd/src/phase10.rs:4319:10:
[INFO] [stdout] untrusted symlink targets must be rejected: ()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60fd3f4e0fea - std[b80a194dd3c418bb]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x60fd3f4e0fea - std[b80a194dd3c418bb]::backtrace_rs::backtrace::trace_unsynchronized::<std[b80a194dd3c418bb]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x60fd3f4e0fea - std[b80a194dd3c418bb]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x60fd3f4e0fea - <<std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[10b6fa85044e1869]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x60fd3f4f849a - <core[10b6fa85044e1869]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x60fd3f4f849a - core[10b6fa85044e1869]::fmt::write
[INFO] [stdout]    6:     0x60fd3f4e5ce2 - std[b80a194dd3c418bb]::io::default_write_fmt::<alloc[dd269455e567d8e9]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x60fd3f4e5ce2 - <alloc[dd269455e567d8e9]::vec::Vec<u8> as std[b80a194dd3c418bb]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x60fd3f4bc9df - <std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x60fd3f4bc9df - std[b80a194dd3c418bb]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x60fd3f4d7e49 - std[b80a194dd3c418bb]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x60fd3f2d567c - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x60fd3f2d567c - test[826cbc6ef54ab466]::test_main_with_exit_callback::<test[826cbc6ef54ab466]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x60fd3f4d8002 - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x60fd3f4d8002 - std[b80a194dd3c418bb]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x60fd3f4bca98 - std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x60fd3f4b41a9 - std[b80a194dd3c418bb]::sys::backtrace::__rust_end_short_backtrace::<std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x60fd3f4bd9bd - __rustc[9698a3e60dd14283]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x60fd3f4f8d4c - core[10b6fa85044e1869]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x60fd3f4f8ac2 - core[10b6fa85044e1869]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x60fd3f1bdd77 - core::result::Result<T,E>::expect_err::hfd4c203f840d616e
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/result.rs:1298:22
[INFO] [stdout]   21:     0x60fd3f245d22 - rustynetd::phase10::tests::validate_binary_path_rejects_symlink_to_untrusted_target::hbb64a5d24b64e36b
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/rustynetd/src/phase10.rs:4319:10
[INFO] [stdout]   22:     0x60fd3f245ef7 - rustynetd::phase10::tests::validate_binary_path_rejects_symlink_to_untrusted_target::{{closure}}::h5cc76e53916fde15
[INFO] [stdout]                                at /opt/rustwide/workdir/crates/rustynetd/src/phase10.rs:4297:66
[INFO] [stdout]   23:     0x60fd3f25bfc6 - core::ops::function::FnOnce::call_once::h8a822ccbbcf4f472
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x60fd3f2c975b - <fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x60fd3f2c975b - test[826cbc6ef54ab466]::__rust_begin_short_backtrace::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x60fd3f2d614b - test[826cbc6ef54ab466]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x60fd3f2d614b - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x60fd3f2d614b - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x60fd3f2d614b - std[b80a194dd3c418bb]::panicking::catch_unwind::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x60fd3f2d614b - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x60fd3f2d614b - test[826cbc6ef54ab466]::run_test_in_process
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x60fd3f2d614b - test[826cbc6ef54ab466]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x60fd3f2d1864 - test[826cbc6ef54ab466]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x60fd3f2d1864 - std[b80a194dd3c418bb]::sys::backtrace::__rust_begin_short_backtrace::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x60fd3f2d8d52 - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::panicking::catch_unwind::<(), core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x60fd3f2d8d52 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x60fd3f2d8d52 - <std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1} as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x60fd3f4dffcf - <alloc[dd269455e567d8e9]::boxed::Box<dyn core[10b6fa85044e1869]::ops::function::FnOnce<(), Output = ()> + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   43:     0x60fd3f4dffcf - <std[b80a194dd3c418bb]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x71a53fbbbaa4 - <unknown>
[INFO] [stdout]   45:     0x71a53fc48a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     key_material::tests::validate_binary_path_rejects_symlink_to_untrusted_target
[INFO] [stdout]     phase10::tests::validate_binary_path_rejects_symlink_to_untrusted_target
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 134 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.97s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p rustynetd --lib`
[INFO] running `Command { std: "docker" "inspect" "e555d975d5cd682760637f8a9054d8b965b8711bd93482e6d91baa09d71aec52", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e555d975d5cd682760637f8a9054d8b965b8711bd93482e6d91baa09d71aec52", kill_on_drop: false }`
[INFO] [stdout] e555d975d5cd682760637f8a9054d8b965b8711bd93482e6d91baa09d71aec52
