[INFO] cloning repository https://github.com/mbocevski/ccbridge
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mbocevski/ccbridge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmbocevski%2Fccbridge", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmbocevski%2Fccbridge'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 82d0ee99ed7c9d47455c4624095fb174b8451e7c
[INFO] testing mbocevski/ccbridge against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmbocevski%2Fccbridge" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mbocevski/ccbridge
[INFO] finished tweaking git repo https://github.com/mbocevski/ccbridge
[INFO] tweaked toml for git repo https://github.com/mbocevski/ccbridge written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mbocevski/ccbridge on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mbocevski/ccbridge already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded kqueue-sys v1.1.2
[INFO] [stderr]   Downloaded lru v0.18.0
[INFO] [stderr]   Downloaded zvariant v5.11.0
[INFO] [stderr]   Downloaded zvariant_derive v5.11.0
[INFO] [stderr]   Downloaded custom_debug_derive v0.6.2
[INFO] [stderr]   Downloaded sd-notify v0.4.5
[INFO] [stderr]   Downloaded macaddr v1.0.1
[INFO] [stderr]   Downloaded custom_debug v0.6.2
[INFO] [stderr]   Downloaded dbus-tokio v0.7.6
[INFO] [stderr]   Downloaded dbus-crossroads v0.5.3
[INFO] [stderr]   Downloaded dbus v0.9.11
[INFO] [stderr]   Downloaded h2 v0.4.14
[INFO] [stderr]   Downloaded bluer v0.17.4
[INFO] [stderr]   Downloaded libdbus-sys v0.2.7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516
[INFO] running `Command { std: "docker" "start" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", 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.186
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling libdbus-sys v0.2.7
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]    Compiling async-broadcast v0.7.2
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling ordered-stream v0.2.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling inotify v0.9.6
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling macaddr v1.0.1
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling sd-notify v0.4.5
[INFO] [stderr]    Compiling notify v6.1.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling arc-swap v1.9.1
[INFO] [stderr]    Compiling lru v0.18.0
[INFO] [stderr]    Compiling ccbridge-hook v0.1.3 (/opt/rustwide/workdir/crates/ccbridge-hook)
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling pin-project v1.1.13
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling custom_debug_derive v0.6.2
[INFO] [stderr]    Compiling custom_debug v0.6.2
[INFO] [stderr]    Compiling zvariant_utils v3.3.1
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling ccbridge-proto v0.1.3 (/opt/rustwide/workdir/crates/ccbridge-proto)
[INFO] [stderr]    Compiling bluer v0.17.4
[INFO] [stderr]    Compiling dbus v0.9.11
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling zvariant_derive v5.11.0
[INFO] [stderr]    Compiling zvariant v5.11.0
[INFO] [stderr]    Compiling dbus-crossroads v0.5.3
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling dbus-tokio v0.7.6
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling zbus_names v4.3.2
[INFO] [stderr]    Compiling zbus_macros v5.15.0
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling zbus v5.15.0
[INFO] [stderr]    Compiling ccbridged v0.1.3 (/opt/rustwide/workdir/crates/ccbridged)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 43s
[INFO] running `Command { std: "docker" "inspect" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling ccbridge-proto v0.1.3 (/opt/rustwide/workdir/crates/ccbridge-proto)
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling zbus v5.15.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling ccbridge-hook v0.1.3 (/opt/rustwide/workdir/crates/ccbridge-hook)
[INFO] [stderr]    Compiling ccbridged v0.1.3 (/opt/rustwide/workdir/crates/ccbridged)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 29s
[INFO] running `Command { std: "docker" "inspect" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ccbridge_hook-5d62e3697a1187ad)
[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 tests/hook_passthrough.rs (/opt/rustwide/target/debug/deps/hook_passthrough-1cfbc387b339d043)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test no_socket_exits_zero_with_no_output ... ok
[INFO] [stdout] test round_trip_via_fake_daemon ... ok
[INFO] [stdout] test stdin_held_open_times_out_cleanly ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ccbridge_proto-d804ffc6d81eee74)
[INFO] [stdout] 
[INFO] [stdout] running 43 tests
[INFO] [stdout] test buddy::tests::heartbeat_minimal_fields_defaults ... ok
[INFO] [stdout] test buddy::tests::prompt_info_session_context_optional_fields_omitted_when_none ... ok
[INFO] [stdout] test buddy::tests::match_source_deny_serialises_lowercase ... ok
[INFO] [stdout] test buddy::tests::device_ack_ok_helper ... ok
[INFO] [stdout] test buddy::tests::prompt_info_annotation_fields_omitted_when_none ... ok
[INFO] [stdout] test buddy::tests::prompt_info_session_context_round_trip ... ok
[INFO] [stdout] test buddy::tests::status_ack_partial_fields ... ok
[INFO] [stdout] test buddy::tests::permission_cmd_deny ... ok
[INFO] [stdout] test buddy::tests::permission_cmd_once ... ok
[INFO] [stdout] test buddy::tests::status_ack_tolerates_missing_fields ... ok
[INFO] [stdout] test buddy::tests::heartbeat_no_prompt ... ok
[INFO] [stdout] test buddy::tests::prompt_info_annotation_round_trip ... ok
[INFO] [stdout] test buddy::tests::heartbeat_with_one_prompt ... ok
[INFO] [stdout] test buddy::tests::heartbeat_with_multiple_prompts ... ok
[INFO] [stdout] test buddy::tests::turn_event_round_trip ... ok
[INFO] [stdout] test ctrl::tests::ack_err_serialises ... ok
[INFO] [stdout] test ctrl::tests::ack_ok_serialises ... ok
[INFO] [stdout] test ctrl::tests::ack_tolerates_missing_fields ... ok
[INFO] [stdout] test ctrl::tests::ack_unknown_command ... ok
[INFO] [stdout] test ctrl::tests::forget_device_round_trip ... ok
[INFO] [stdout] test ctrl::tests::hello_round_trip ... ok
[INFO] [stdout] test ctrl::tests::hello_tolerates_missing_fields ... ok
[INFO] [stdout] test buddy::tests::time_sync_round_trip ... ok
[INFO] [stdout] test ctrl::tests::permission_deny_round_trip ... ok
[INFO] [stdout] test ctrl::tests::permission_once_round_trip ... ok
[INFO] [stdout] test ctrl::tests::replay_round_trip ... ok
[INFO] [stdout] test ctrl::tests::status_round_trip ... ok
[INFO] [stdout] test ctrl::tests::simulate_round_trip ... ok
[INFO] [stdout] test ctrl::tests::subscribe_round_trip ... ok
[INFO] [stdout] test ctrl::tests::topic_unknown_variant_for_forward_compat ... ok
[INFO] [stdout] test ctrl::tests::unsubscribe_round_trip ... ok
[INFO] [stdout] test buddy::tests::device_ack_tolerates_missing_fields ... ok
[INFO] [stdout] test hook::tests::round_trip_notification ... ok
[INFO] [stdout] test hook::tests::round_trip_session_start ... ok
[INFO] [stdout] test hook::tests::pre_tool_use_response_serialises ... ok
[INFO] [stdout] test hook::tests::unknown_event_name_deserialises_to_unknown_variant ... ok
[INFO] [stdout] test hook::tests::round_trip_session_end ... ok
[INFO] [stdout] test hook::tests::post_tool_use_without_tool_result_parses_ok ... ok
[INFO] [stdout] test hook::tests::round_trip_pre_tool_use ... ok
[INFO] [stdout] test hook::tests::round_trip_post_tool_use ... ok
[INFO] [stdout] test hook::tests::round_trip_user_prompt_submit ... ok
[INFO] [stdout] test hook::tests::round_trip_stop_without_response ... ok
[INFO] [stdout] test hook::tests::round_trip_stop ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 43 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/ccbridged-6128148d32c6cff9)
[INFO] [stdout] 
[INFO] [stdout] running 224 tests
[INFO] [stdout] test config::tests::approvals_timeout_converts_ms_to_duration ... ok
[INFO] [stdout] test config::tests::config_path_ends_with_expected_suffix ... ok
[INFO] [stdout] test config::tests::fallback_deny_on_timeout_produces_deny_with_reason ... ok
[INFO] [stdout] test config::tests::default_config_when_file_missing ... ok
[INFO] [stdout] test config::tests::fallback_allow_on_timeout_produces_allow_no_reason ... ok
[INFO] [stdout] test emit::notify::tests::format_token_count_thousands_uses_decimal_or_integer ... ok
[INFO] [stdout] test config::tests::partial_config_uses_defaults_for_missing ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_no_home_env_var ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_partial_home_match_not_substituted ... ok
[INFO] [stdout] test emit::notify::tests::format_token_count_no_long_digit_runs ... ok
[INFO] [stdout] test emit::notify::tests::format_token_count_under_1k_uses_raw ... ok
[INFO] [stdout] test emit::notify::tests::format_token_count_millions ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_replaces_home_with_tilde ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_root_returns_slash ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_truncates_long_absolute_paths ... ok
[INFO] [stdout] test config::tests::unknown_field_fails_loud ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_entry_text_truncated_at_80_chars_ascii ... ok
[INFO] [stdout] test ingest::jsonl::tests::file_offsets_missing_file_does_not_panic ... ok
[INFO] [stdout] test config::tests::load_full_config_round_trip ... ok
[INFO] [stdout] test ingest::jsonl::tests::file_offsets_new_file_starts_from_zero ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_truncates_long_home_paths ... ok
[INFO] [stdout] test ingest::jsonl::reset::tests::empty_date_adopts_today_without_rolling ... ok
[INFO] [stdout] test ingest::jsonl::reset::tests::no_rollover_when_date_matches_today ... ok
[INFO] [stdout] test ingest::jsonl::tests::file_offsets_only_reads_new_lines ... ok
[INFO] [stdout] test ingest::jsonl::tests::file_offsets_resets_on_atomic_replace ... ok
[INFO] [stdout] test ingest::jsonl::reset::tests::rollover_zeroes_today_and_preserves_cumulative ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_entry_text_truncated_multibyte_no_panic ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_assistant_line_no_usage ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_entry_text_short_not_truncated ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_empty_path ... ok
[INFO] [stdout] test emit::notify::tests::shorten_cwd_keeps_short_absolute_paths ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_malformed_json_returns_none ... ok
[INFO] [stdout] test ingest::jsonl::tests::midnight_reset_zeroes_today_and_preserves_cumulative ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_non_jsonl_file_extension_lines_are_skipped ... ok
[INFO] [stdout] test ingest::jsonl::tests::file_offsets_no_trailing_newline_correct_offset ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_real_assistant_line_with_usage ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_skips_non_assistant_types ... ok
[INFO] [stdout] test ingest::jsonl::tests::parse_only_first_text_block_used_for_entry ... ok
[INFO] [stdout] test ingest::jsonl::tests::persisted_tokens_missing_file_returns_default ... ok
[INFO] [stdout] test ingest::jsonl::tests::persisted_tokens_round_trip ... ok
[INFO] [stdout] test ingest::jsonl::tests::tokens_state_path_uses_xdg_state_home ... ok
[INFO] [stdout] test ingest::jsonl::tests::persisted_tokens_save_creates_parent_dirs ... ok
[INFO] [stdout] test permission::additions::tests::audit_entry_user_global_encodes_as_jsonl ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_bash_literal_command ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_agent_subagent_type ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_bash_missing_command_is_bare ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_glob_falls_to_bare ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_mcp_exact ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_unknown_tool_is_bare ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_edit_exact_path ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_non_string_field_falls_to_bare ... ok
[INFO] [stdout] test permission::additions::tests::derive_pattern_read_exact_path ... ok
[INFO] [stdout] test permission::additions::tests::lexically_normalize_collapses_dot_and_parent ... ok
[INFO] [stdout] test permission::additions::tests::round_trip_bash_command ... ok
[INFO] [stdout] test permission::additions::tests::audit_log_jsonl_round_trip_legacy_user_target ... ok
[INFO] [stdout] test permission::additions::tests::round_trip_agent_subagent ... ok
[INFO] [stdout] test permission::additions::tests::resolve_write_target_uses_cwd_as_root_when_no_ancestor_marker ... ok
[INFO] [stdout] test permission::additions::tests::round_trip_mcp_exact ... ok
[INFO] [stdout] test permission::additions::tests::validate_audit_root_rejects_filesystem_root ... ok
[INFO] [stdout] test permission::additions::tests::validate_audit_root_rejects_parent_dir_collision_when_dir_absent ... ok
[INFO] [stdout] test permission::additions::tests::validate_audit_root_rejects_relative_path ... ok
[INFO] [stdout] test permission::additions::tests::validate_audit_root_rejects_trailing_dot_collision_when_dir_absent ... ok
[INFO] [stdout] test permission::additions::tests::round_trip_read_path ... ok
[INFO] [stdout] test permission::additions::tests::undo_last_allow_empty_audit_returns_error ... ok
[INFO] [stdout] test permission::additions::tests::undo_last_allow_bails_on_unknown_target_only ... ok
[INFO] [stdout] test permission::additions::tests::validate_audit_root_accepts_normal_project_dir ... ok
[INFO] [stdout] test permission::additions::tests::find_last_undone_addition_legacy_6_column_treats_as_user ... ok
[INFO] [stdout] test permission::additions::tests::undo_last_allow_rejects_root_slash ... ok
[INFO] [stdout] test permission::additions::tests::validate_audit_root_rejects_user_global_collision ... ok
[INFO] [stdout] test permission::allowlist::tests::allow_and_deny_both_populated ... ok
[INFO] [stdout] test permission::allowlist::tests::cascade_allow_union ... ok
[INFO] [stdout] test permission::allowlist::tests::cascade_deny_union ... ok
[INFO] [stdout] test permission::allowlist::tests::cascade_local_first_in_vec ... ok
[INFO] [stdout] test permission::allowlist::tests::empty_allow_deny_arrays ... ok
[INFO] [stdout] test permission::allowlist::tests::empty_json_object_gives_empty_allowlist ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_bails_when_allow_is_null ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_adds_to_array ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_bails_when_allow_is_string ... ok
[INFO] [stdout] test permission::allowlist::tests::missing_permissions_key_gives_empty_allowlist ... ok
[INFO] [stdout] test permission::allowlist::tests::non_string_entries_skipped_no_panic ... ok
[INFO] [stdout] test permission::allowlist::tests::from_path_missing_file_returns_empty ... ok
[INFO] [stdout] test permission::allowlist::tests::real_world_settings_shape ... ok
[INFO] [stdout] test permission::additions::tests::find_last_undone_addition_skips_unknown_target ... ok
[INFO] [stdout] test permission::cache::tests::cascade_for_caches_entry ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_project_local_records_target_in_audit ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_idempotent ... ok
[INFO] [stdout] test permission::cache::tests::cascade_for_project_loads_both_files ... ok
[INFO] [stdout] test permission::cache::tests::cascade_for_unknown_cwd_returns_user_only ... ok
[INFO] [stdout] test permission::cache::tests::cascade_for_project_with_only_local ... ok
[INFO] [stdout] test permission::pattern::tests::agent_exact_different_subagent_type_no_match ... ok
[INFO] [stdout] test permission::pattern::tests::agent_exact_missing_subagent_type_is_no_match ... ok
[INFO] [stdout] test permission::additions::tests::audit_log_jsonl_round_trip_project_local ... ok
[INFO] [stdout] test permission::pattern::tests::agent_exact_subagent_type_matches ... ok
[INFO] [stdout] test permission::additions::tests::undo_last_allow_idempotent_when_pattern_already_gone ... ok
[INFO] [stdout] test permission::allowlist::tests::from_path_malformed_json_returns_err ... ok
[INFO] [stdout] test permission::pattern::tests::bare_tool_matches_same_tool_name ... ok
[INFO] [stdout] test permission::pattern::tests::bare_tool_no_match_different_tool ... ok
[INFO] [stdout] test permission::pattern::tests::bash_prefix_matches_git_status_command ... ok
[INFO] [stdout] test permission::pattern::tests::mcp_exact_matches_full_id ... ok
[INFO] [stdout] test permission::pattern::tests::mcp_exact_no_match_partial_id ... ok
[INFO] [stdout] test permission::pattern::tests::bash_prefix_no_match_different_command ... ok
[INFO] [stdout] test permission::pattern::tests::mcp_prefix_matches_method_in_server ... ok
[INFO] [stdout] test permission::pattern::tests::mcp_prefix_no_match_different_server ... ok
[INFO] [stdout] test permission::pattern::tests::parse_agent_exact_arg ... ok
[INFO] [stdout] test permission::pattern::tests::parse_bare_tool_skill ... ok
[INFO] [stdout] test permission::pattern::tests::parse_bash_prefix ... ok
[INFO] [stdout] test permission::pattern::tests::parse_bash_no_colon_star_uses_exact_matcher ... ok
[INFO] [stdout] test permission::additions::tests::audit_log_handles_bash_pattern_with_tab ... ok
[INFO] [stdout] test permission::cache::tests::cascade_for_project_with_no_files ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_writes_audit_log ... ok
[INFO] [stdout] test permission::pattern::tests::parse_edit_path_glob ... ok
[INFO] [stdout] test permission::pattern::tests::parse_empty_string_is_unparseable ... ok
[INFO] [stdout] test permission::pattern::tests::parse_mcp_prefix_wildcard ... ok
[INFO] [stdout] test permission::pattern::tests::parse_glob_compile_error_falls_back_to_ambiguous_matcher ... ok
[INFO] [stdout] test permission::pattern::tests::parse_read_path_glob ... ok
[INFO] [stdout] test permission::pattern::tests::parse_unknown_tool_with_args_uses_ambiguous_matcher ... ok
[INFO] [stdout] test permission::pattern::tests::parse_mcp_exact ... ok
[INFO] [stdout] test permission::additions::tests::audit_log_mixed_tsv_legacy_then_jsonl_new ... ok
[INFO] [stdout] test permission::pattern::tests::read_path_glob_missing_file_path_field_is_ambiguous ... ok
[INFO] [stdout] test permission::cache::tests::cache_re_inserts_after_eviction ... ok
[INFO] [stdout] test permission::pattern::tests::parse_no_closing_paren_is_unparseable ... ok
[INFO] [stdout] test permission::cache::tests::cache_lru_hit_promotes_entry ... ok
[INFO] [stdout] test permission::pattern::tests::unparseable_without_tool_name_is_no_match ... ok
[INFO] [stdout] test permission::pattern::tests::unparseable_with_tool_name_in_raw_is_ambiguous ... ok
[INFO] [stdout] test permission::pattern::tests::read_path_glob_matches_pem_file ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_rejects_relative_cwd ... ok
[INFO] [stdout] test permission::cache::tests::evaluate_uses_project_local_deny ... ok
[INFO] [stdout] test permission::additions::tests::undo_last_allow_removes_pattern ... ok
[INFO] [stdout] test permission::additions::tests::write_allow_pattern_project_local_creates_dotclaude_dir ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_dotclaude_beats_dotgit_same_level ... ok
[INFO] [stdout] test permission::pattern::tests::globset_smoke_test_double_star_behavior ... ok
[INFO] [stdout] test permission::additions::tests::undo_last_allow_target_aware_project_local ... ok
[INFO] [stdout] test permission::pattern::tests::read_path_glob_no_match_unrelated_path ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_returns_none_when_no_markers ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_rejects_dotclaude_symlink ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_dotclaude_beats_dotgit_different_levels ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_skips_home_dotclaude ... ok
[INFO] [stdout] test permission::pattern::tests::read_path_glob_matches_dotenv ... ok
[INFO] [stdout] test permission::cache::tests::cache_evicts_least_recently_used_entry ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_returns_ancestor_not_descendant ... ok
[INFO] [stdout] test permission::pattern::tests::read_ssh_glob_matches_ssh_file ... ok
[INFO] [stdout] test permission::tests::accept_edits_allows ... ok
[INFO] [stdout] test permission::tests::auto_allows ... ok
[INFO] [stdout] test permission::pattern::tests::read_secret_glob_matches_secret_file ... ok
[INFO] [stdout] test permission::tests::bypass_permissions_allows ... ok
[INFO] [stdout] test permission::tests::evaluate_ambiguous_allow_returns_decision_with_pattern ... ok
[INFO] [stdout] test permission::tests::evaluate_ambiguous_allow_returns_ask_annotated_allow ... ok
[INFO] [stdout] test permission::tests::evaluate_bypass_mode_ignores_allowlist ... ok
[INFO] [stdout] test permission::tests::dont_ask_allows ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_with_dotgit ... ok
[INFO] [stdout] test permission::pattern::tests::pattern_clone_matches_same_as_original ... ok
[INFO] [stdout] test permission::tests::evaluate_confident_allow_beats_ambiguous_allow ... ok
[INFO] [stdout] test permission::tests::evaluate_deny_beats_allow_when_both_match ... ok
[INFO] [stdout] test permission::tests::allow_reason_includes_mode_name ... ok
[INFO] [stdout] test permission::additions::tests::find_last_undone_addition_handles_re_always_after_undo ... ok
[INFO] [stdout] test permission::project::tests::find_project_root_with_dotclaude ... ok
[INFO] [stdout] test permission::tests::default_mode_intercepts ... ok
[INFO] [stdout] test permission::tests::evaluate_ambiguous_deny_returns_ask_annotated_deny ... ok
[INFO] [stdout] test permission::tests::evaluate_confident_deny_beats_ambiguous_deny ... ok
[INFO] [stdout] test permission::tests::evaluate_deny_match_wins ... ok
[INFO] [stdout] test permission::tests::evaluate_real_world_skill_allows ... ok
[INFO] [stdout] test permission::tests::evaluate_no_match_returns_intercept ... ok
[INFO] [stdout] test setup::tests::idempotent_setup_does_not_rewrite_settings_file ... ok
[INFO] [stdout] test setup::tests::bundled_default_config_parses_as_config ... ok
[INFO] [stdout] test permission::tests::plan_mode_intercepts ... ok
[INFO] [stdout] test permission::tests::evaluate_allow_match_returns_allow ... ok
[INFO] [stdout] test setup::tests::merge_hooks_rejects_non_object_hooks ... ok
[INFO] [stdout] test setup::tests::merge_empty_settings ... ok
[INFO] [stdout] test setup::tests::merge_preserves_other_event_keys ... ok
[INFO] [stdout] test setup::tests::merge_settings_with_pre_tool_use_matcher ... ok
[INFO] [stdout] test setup::tests::load_settings_missing_file ... ok
[INFO] [stdout] test setup::tests::merge_settings_with_unrelated_keys ... ok
[INFO] [stdout] test permission::tests::evaluate_real_world_deny_dotenv_read ... ok
[INFO] [stdout] test setup::tests::merge_partial_presets ... ok
[INFO] [stdout] test setup::tests::load_settings_malformed_json ... ok
[INFO] [stdout] test setup::tests::merge_preserves_complex_unrelated_keys ... ok
[INFO] [stdout] test setup::tests::merge_hooks_treats_null_event_as_absent ... ok
[INFO] [stdout] test setup::tests::merge_hooks_rejects_non_array_event_value ... ok
[INFO] [stdout] test setup::tests::merge_hooks_treats_null_hooks_as_absent ... ok
[INFO] [stdout] test state::tests::allowlist_always_bare_tool_denies_with_reason ... ok
[INFO] [stdout] test setup::tests::write_default_config_skips_when_present ... ok
[INFO] [stdout] test state::tests::allowlist_always_unknown_tool_use_id_no_panic ... ok
[INFO] [stdout] test state::tests::approval_timed_out_clears_pending ... ok
[INFO] [stdout] test state::tests::entries_ring_buffer_caps_at_eight_newest_first ... ok
[INFO] [stdout] test state::tests::duplicate_tool_use_id_doesnt_corrupt_state ... ok
[INFO] [stdout] test state::tests::permission_decision_unknown_id_does_not_panic ... ok
[INFO] [stdout] test setup::tests::merge_idempotent ... ok
[INFO] [stdout] test state::tests::permissive_mode_pre_tool_use_auto_allows_without_prompt ... ok
[INFO] [stdout] test state::tests::daily_reset_zeroes_today_keeps_cumulative_updates_date ... ok
[INFO] [stdout] test setup::tests::write_default_config_creates_parent_dir ... ok
[INFO] [stdout] test state::tests::pre_tool_use_stores_oneshot_and_populates_prompt ... ok
[INFO] [stdout] test state::tests::permission_decision_fires_oneshot_and_clears_waiting ... ok
[INFO] [stdout] test state::tests::snapshot_empty ... ok
[INFO] [stdout] test state::tests::ask_annotated_decision_surfaces_in_snapshot ... ok
[INFO] [stdout] test setup::tests::write_default_config_creates_file_when_absent ... ok
[INFO] [stdout] test state::tests::run_loop_multiple_subscribers_all_receive_heartbeat ... ok
[INFO] [stdout] test state::tests::run_loop_daily_reset_zeroes_today_keeps_cumulative ... ok
[INFO] [stdout] test state::tests::snapshot_includes_session_id_and_cwd ... ok
[INFO] [stdout] test state::tests::run_loop_responds_to_get_heartbeat ... ok
[INFO] [stdout] test state::tests::set_initial_tokens_seeds_aggregator_state ... ok
[INFO] [stdout] test state::tests::run_loop_pre_tool_use_then_permission_decision ... ok
[INFO] [stdout] test state::tests::snapshot_entries_order_is_newest_first ... ok
[INFO] [stdout] test state::tests::set_initial_tokens_does_not_regress_higher_running_total ... ok
[INFO] [stdout] test state::tests::snapshot_msg_for_one_pending_names_the_tool ... ok
[INFO] [stdout] test state::tests::run_loop_session_start_increments_total ... ok
[INFO] [stdout] test state::tests::snapshot_lists_all_pending_sessions ... ok
[INFO] [stdout] test setup::tests::save_and_load_round_trip ... ok
[INFO] [stdout] test util::tests::short_session_id_takes_six_chars ... ok
[INFO] [stdout] test state::tests::snapshot_session_counts ... ok
[INFO] [stdout] test setup::tests::setup_does_not_exit_when_service_fails ... ok
[INFO] [stdout] test state::tests::start_intercept_captures_agent_type ... ok
[INFO] [stdout] test state::tests::allowlist_always_writes_project_local_when_cwd_has_root ... ok
[INFO] [stdout] test state::tests::stop_clears_running_and_waiting ... ok
[INFO] [stdout] test util::tests::xdg_config_dir_succeeds_in_test_env ... ok
[INFO] [stdout] test util::tests::xdg_state_dir_succeeds_in_test_env ... ok
[INFO] [stdout] test state::tests::turn_done_fires_after_idle_grace_with_no_followup ... ok
[INFO] [stdout] test state::tests::turn_done_carries_tokens_for_current_user_task_only ... ok
[INFO] [stdout] test permission::tests::settings_watcher_picks_up_changes ... ok
[INFO] [stdout] test state::tests::turn_done_disabled_when_grace_is_zero ... ok
[INFO] [stdout] test state::tests::turn_done_reads_tokens_live_when_jsonl_arrives_after_stop ... ok
[INFO] [stdout] test state::tests::turn_done_skipped_if_pre_tool_use_arrives_in_grace ... ok
[INFO] [stdout] test state::tests::turn_done_skipped_if_user_prompt_arrives_in_grace ... ok
[INFO] [stdout] test state::tests::turn_done_skipped_if_post_tool_use_arrives_in_grace ... ok
[INFO] [stdout] test permission::tests::settings_watcher_keeps_previous_on_malformed_json ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 224 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.65s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/ccbridged-e0d6a303180103da)
[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 tests/config_e2e.rs (/opt/rustwide/target/debug/deps/config_e2e-652930b87a4daf89)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test config_timeout_ms_wires_through_to_approval_flow ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ctrl_socket.rs (/opt/rustwide/target/debug/deps/ctrl_socket-23b35fa10691f09e)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test connect_receives_hello_and_snapshot ... ok
[INFO] [stdout] test completely_unknown_cmd_returns_unknown_command ... ok
[INFO] [stdout] test unsubscribe_acked ... ok
[INFO] [stdout] test replay_returns_unknown_command ... ok
[INFO] [stdout] test subscribe_heartbeat_acked ... ok
[INFO] [stdout] test status_command_returns_status_ack ... ok
[INFO] [stdout] test forget_device_returns_unknown_command ... ok
[INFO] [stdout] test subscribed_client_receives_heartbeats ... ok
[INFO] [stdout] test permission_command_resolves_approval ... ok
[INFO] [stdout] test oversized_line_drops_connection_cleanly ... ok
[INFO] [stdout] test unsubscribe_stops_heartbeat_delivery ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/full_flow.rs (/opt/rustwide/target/debug/deps/full_flow-cf888afb1b2344fe)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test simulate_command_returns_unknown_ack ... ok
[INFO] [stdout] test jsonl_tokens_reflected_in_heartbeat ... ok
[INFO] [stdout] test expired_id_ctrl_decision_returns_ack ... ok
[INFO] [stdout] test heartbeat_lists_prompts_for_parallel_sessions ... ok
[INFO] [stdout] test golden_path ... ok
[INFO] [stdout] test multiple_ctrl_subscribers ... ok
[INFO] [stdout] test symlinked_dotclaude_is_rejected_in_full_flow ... ok
[INFO] [stdout] test allowlist_always_writes_pattern_and_approves ... ok
[INFO] [stdout] test timeout_passthrough ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/hook_ingest.rs (/opt/rustwide/target/debug/deps/hook_ingest-4016fc5f30ec5c34)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test pre_tool_use_hard_deny_via_allowlist ... ok
[INFO] [stdout] test pre_tool_use_deny_decision ... ok
[INFO] [stdout] test malformed_json_closes_cleanly ... ok
[INFO] [stdout] test aggregator_gone_closes_cleanly ... ok
[INFO] [stdout] test stop_event_passthrough ... ok
[INFO] [stdout] test unknown_hook_event_passthrough ... ok
[INFO] [stdout] test wire_once_maps_to_allow ... ok
[INFO] [stdout] test pre_tool_use_allow_decision ... ok
[INFO] [stdout] test pre_tool_use_timeout_sends_ask ... ok
[INFO] [stdout] test pre_tool_use_timeout_clears_aggregator_state ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_status.rs (/opt/rustwide/target/debug/deps/http_status-0e90c1ac2aad8c78)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test non_loopback_addr_is_rejected ... ok
[INFO] [stdout] test unknown_path_returns_404 ... ok
[INFO] [stdout] test post_status_returns_404 ... ok
[INFO] [stdout] test get_status_returns_heartbeat_json ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/jsonl_watcher.rs (/opt/rustwide/target/debug/deps/jsonl_watcher-ba799c7b1a22e625)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test watcher_loads_initial_token_state ... ok
[INFO] [stdout] test watcher_ignores_non_assistant_lines ... ok
[INFO] [stdout] test watcher_ignores_non_jsonl_files ... ok
[INFO] [stdout] test watcher_picks_up_new_lines ... ok
[INFO] [stdout] test watcher_tolerates_malformed_lines ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/undo_cli.rs (/opt/rustwide/target/debug/deps/undo_cli-0f32411b6dcfd888)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test undo_cli_rejects_relative_root_in_audit_log ... ok
[INFO] [stdout] test undo_cli_rejects_filesystem_root_in_audit_log ... ok
[INFO] [stdout] test undo_cli_empty_audit_log_returns_error ... 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]    Doc-tests ccbridge_proto
[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]    Doc-tests ccbridged
[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" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516", kill_on_drop: false }`
[INFO] [stdout] 7c62cbb44c90e1e4f97d3e2de5d93aee5952264506d047ad37474351b7bd8516
