[INFO] fetching crate zc2 0.0.32...
[INFO] testing zc2-0.0.32 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate zc2 0.0.32 into /workspace/builds/worker-5-tc1/source
[INFO] removed /workspace/builds/worker-5-tc1/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-5-tc1/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate zc2 0.0.32
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate zc2 0.0.32
[INFO] tweaked toml for crates.io crate zc2 0.0.32 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate zc2 0.0.32 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zc2 0.0.32 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_bytes v0.11.19
[INFO] [stderr]   Downloaded ureq v3.3.0
[INFO] [stderr]   Downloaded chunked_transfer v1.5.0
[INFO] [stderr]   Downloaded zerofrom v0.1.7
[INFO] [stderr]   Downloaded zakuro-wire v0.2.0
[INFO] [stderr]   Downloaded utf8-zero v0.8.1
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.70
[INFO] [stderr]   Downloaded jni-sys-macros v0.4.1
[INFO] [stderr]   Downloaded rustls-platform-verifier-android v0.1.1
[INFO] [stderr]   Downloaded windows-targets v0.42.2
[INFO] [stderr]   Downloaded cesu8 v1.1.0
[INFO] [stderr]   Downloaded hostname v0.3.1
[INFO] [stderr]   Downloaded jni-sys v0.3.1
[INFO] [stderr]   Downloaded jni-sys v0.4.1
[INFO] [stderr]   Downloaded ifaces v0.1.0
[INFO] [stderr]   Downloaded void v1.0.2
[INFO] [stderr]   Downloaded bitflags v0.7.0
[INFO] [stderr]   Downloaded rustls-pki-types v1.14.1
[INFO] [stderr]   Downloaded cookie v0.18.1
[INFO] [stderr]   Downloaded cookie_store v0.22.1
[INFO] [stderr]   Downloaded pem v3.0.6
[INFO] [stderr]   Downloaded cfg-if v0.1.10
[INFO] [stderr]   Downloaded match_cfg v0.1.0
[INFO] [stderr]   Downloaded ascii v1.1.0
[INFO] [stderr]   Downloaded fastbloom v0.14.1
[INFO] [stderr]   Downloaded hyper-rustls v0.27.9
[INFO] [stderr]   Downloaded dashmap v6.2.1
[INFO] [stderr]   Downloaded serde_path_to_error v0.1.20
[INFO] [stderr]   Downloaded uuid v1.23.2
[INFO] [stderr]   Downloaded tiny_http v0.12.0
[INFO] [stderr]   Downloaded matchit v0.7.3
[INFO] [stderr]   Downloaded axum-core v0.4.5
[INFO] [stderr]   Downloaded toml v0.7.8
[INFO] [stderr]   Downloaded rustls-platform-verifier v0.6.2
[INFO] [stderr]   Downloaded yasna v0.5.2
[INFO] [stderr]   Downloaded colored v2.2.0
[INFO] [stderr]   Downloaded ureq-proto v0.6.0
[INFO] [stderr]   Downloaded yoke v0.8.2
[INFO] [stderr]   Downloaded quinn v0.11.11
[INFO] [stderr]   Downloaded toml_edit v0.19.15
[INFO] [stderr]   Downloaded rcgen v0.13.2
[INFO] [stderr]   Downloaded nix v0.8.1
[INFO] [stderr]   Downloaded jni v0.21.1
[INFO] [stderr]   Downloaded webpki-root-certs v1.0.7
[INFO] [stderr]   Downloaded combine v4.6.7
[INFO] [stderr]   Downloaded hashbrown v0.14.5
[INFO] [stderr]   Downloaded winnow v0.5.40
[INFO] [stderr]   Downloaded axum v0.7.9
[INFO] [stderr]   Downloaded h2 v0.4.17
[INFO] [stderr]   Downloaded webpki-roots v1.0.7
[INFO] [stderr]   Downloaded quinn-proto v0.11.15
[INFO] [stderr]   Downloaded windows_x86_64_gnullvm v0.42.2
[INFO] [stderr]   Downloaded windows_aarch64_gnullvm v0.42.2
[INFO] [stderr]   Downloaded web-sys v0.3.97
[INFO] [stderr]   Downloaded windows_aarch64_msvc v0.42.2
[INFO] [stderr]   Downloaded windows_x86_64_msvc v0.42.2
[INFO] [stderr]   Downloaded windows_x86_64_gnu v0.42.2
[INFO] [stderr]   Downloaded windows_i686_gnu v0.42.2
[INFO] [stderr]   Downloaded windows_i686_msvc v0.42.2
[INFO] [stderr]   Downloaded windows-sys v0.45.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa
[INFO] running `Command { std: "docker" "start" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", 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" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", 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" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "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 cfg-if v1.0.4
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling webpki-roots v1.0.7
[INFO] [stderr]    Compiling rustls-native-certs v0.8.4
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling siphasher v1.0.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling quinn v0.11.11
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling lru-slab v0.1.2
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling bitflags v0.7.0
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling nix v0.8.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling ureq-proto v0.6.0
[INFO] [stderr]    Compiling pem v3.0.6
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling zc2 v0.0.32 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling chunked_transfer v1.5.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling match_cfg v0.1.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling hostname v0.3.1
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling uuid v1.23.2
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling tiny_http v0.12.0
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling dashmap v6.2.1
[INFO] [stderr]    Compiling ifaces v0.1.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling rcgen v0.13.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling fastbloom v0.14.1
[INFO] [stderr]    Compiling zerofrom v0.1.7
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling cobs v0.3.0
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling postcard v1.1.3
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling zakuro-wire v0.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling ureq v3.3.0
[INFO] [stderr]    Compiling quinn-proto v0.11.15
[INFO] [stderr]    Compiling toml v0.7.8
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling h2 v0.4.17
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 19s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", 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" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zc2 v0.0.32 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/broker/policy.rs:393:13
[INFO] [stdout]     |
[INFO] [stdout] 393 |         let mut dispatch = |fleet: &mut Fleet, rng: &mut Rng| -> usize {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/broker/policy.rs:435:13
[INFO] [stdout]     |
[INFO] [stdout] 435 |         let mut dispatch = |fleet: &mut Fleet, rng: &mut Rng| -> usize {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 29.73s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", 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" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/broker/policy.rs:393:13
[INFO] [stderr]     |
[INFO] [stderr] 393 |         let mut dispatch = |fleet: &mut Fleet, rng: &mut Rng| -> usize {
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/broker/policy.rs:435:13
[INFO] [stderr]     |
[INFO] [stderr] 435 |         let mut dispatch = |fleet: &mut Fleet, rng: &mut Rng| -> usize {
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `zc2` (bin "zc" test) generated 2 warnings (run `cargo fix --bin "zc" -p zc2 --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.25s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/zc-48f7d9bf2dcc30e6)
[INFO] [stdout] 
[INFO] [stdout] running 1127 tests
[INFO] [stdout] test agent::cli::tests::status_prints_the_mesh_route ... ok
[INFO] [stdout] test agent::cli::tests::a_problem_shows_its_next_step_under_it ... ok
[INFO] [stdout] test agent::cli::tests::with_nothing_cached_no_device_account_or_earnings_line_is_printed ... ok
[INFO] [stdout] test agent::config::tests::defaults_match_the_spec ... ok
[INFO] [stdout] test agent::config::tests::from_env_carries_the_agents_own_zakuro_p2p_into_child_env ... ok
[INFO] [stdout] test agent::config::tests::max_workers_is_half_the_cpus_at_least_one_unless_overridden ... ok
[INFO] [stdout] test agent::cli::tests::status_prints_the_essentials_and_every_problem ... ok
[INFO] [stdout] test agent::config::tests::port_defaults_to_4720 ... ok
[INFO] [stdout] test agent::config::tests::from_env_carries_the_adaptive_switch_into_child_env ... ok
[INFO] [stdout] test agent::config::tests::fp8_is_the_first_eight_fingerprint_chars_of_the_node_key_in_state_dir ... ok
[INFO] [stdout] test agent::core::tests::a_422_on_utc_itself_is_not_retried ... ok
[INFO] [stdout] test agent::client::tests::a_stale_agent_file_is_not_a_running_agent ... ok
[INFO] [stdout] test agent::core::tests::before_sign_in_the_summary_says_not_logged_in ... ok
[INFO] [stdout] test agent::core::tests::workers_are_persisted_and_bounded_by_max ... ok
[INFO] [stdout] test agent::files::tests::a_broker_record_without_a_port_field_decodes_as_none ... ok
[INFO] [stdout] test agent::files::tests::a_missing_state_file_means_one_worker_not_sharing ... ok
[INFO] [stdout] test agent::files::tests::token_is_43_char_base64url_and_random ... ok
[INFO] [stdout] test agent::core::tests::price_writes_are_validated_before_touching_the_hub ... ok
[INFO] [stdout] test agent::files::tests::agent_files_are_private ... ok
[INFO] [stdout] test agent::handoff::tests::a_disabled_price_state_is_shown_as_disabled_on_the_hub ... ok
[INFO] [stdout] test agent::core::tests::a_422_on_the_local_zone_retries_once_with_utc_then_sticks_to_it ... ok
[INFO] [stdout] test agent::core::tests::sharing_on_is_refused_while_an_unmanaged_broker_runs ... ok
[INFO] [stdout] test agent::files::tests::state_and_children_round_trip ... ok
[INFO] [stdout] test agent::handoff::tests::a_422_on_the_starting_zone_is_retried_once_in_utc ... ok
[INFO] [stdout] test agent::handoff::tests::price_lines ... ok
[INFO] [stdout] test agent::core::tests::a_price_write_gets_409_only_once_the_hub_confirms_this_mac_has_no_workers ... ok
[INFO] [stdout] test agent::core::tests::an_unreachable_hub_carries_its_cause_and_its_next_step ... ok
[INFO] [stdout] test agent::core::tests::a_failed_seed_put_keeps_the_row_unknown_until_it_succeeds ... ok
[INFO] [stdout] test agent::core::tests::zakuro_dir_missing_clears_on_the_next_tick_once_the_directory_appears ... ok
[INFO] [stdout] test agent::handoff::tests::a_non_finite_price_is_refused_before_it_reaches_the_hub ... ok
[INFO] [stdout] test agent::hub::tests::credentials_are_reread_only_when_the_file_changes ... ok
[INFO] [stdout] test agent::core::tests::refresh_keeps_the_last_snapshot_and_names_the_problem ... ok
[INFO] [stdout] test agent::handoff::tests::the_account_default_is_written_account_wide ... ok
[INFO] [stdout] test agent::core::tests::the_unreachable_hint_promises_cached_values_only_when_there_are_some ... ok
[INFO] [stdout] test agent::files::tests::token_survives_a_restart_and_rotates_on_install ... ok
[INFO] [stdout] test agent::hub::tests::hub_error_text_is_the_detail_or_a_short_trimmed_body ... ok
[INFO] [stdout] test agent::handoff::tests::worker_and_port_flags_are_detected ... ok
[INFO] [stdout] test agent::hub::tests::poll_backs_off_60s_2min_5min ... ok
[INFO] [stdout] test agent::hub::tests::device_price_fans_out_and_retries_each_failure_once ... ok
[INFO] [stdout] test agent::hub::tests::new_workers_get_the_price_their_known_siblings_agree_on ... ok
[INFO] [stdout] test agent::hub::tests::seeding_never_copies_a_price_below_the_minimum ... ok
[INFO] [stdout] test agent::handoff::tests::inherit_clears_this_macs_own_price ... ok
[INFO] [stdout] test agent::hubwire::tests::parses_the_spec_example ... ok
[INFO] [stdout] test agent::hub::tests::only_a_connection_failure_blames_the_tunnel ... ok
[INFO] [stdout] test agent::hub::tests::tz_prefers_tz_then_the_localtime_link ... ok
[INFO] [stdout] test agent::hub::tests::default_price_writes_the_global_price ... ok
[INFO] [stdout] test agent::core::tests::device_price_fans_out_then_new_rows_are_seeded ... ok
[INFO] [stdout] test agent::launchd::tests::carried_env_takes_the_agents_settings_that_are_set_in_order ... ok
[INFO] [stdout] test agent::launchd::tests::install_paces_launchctl_with_the_production_timings ... ok
[INFO] [stdout] test agent::launchd::tests::plist_carries_the_worker_cap ... ok
[INFO] [stdout] test agent::launchd::tests::plist_carries_the_agent_port ... ok
[INFO] [stdout] test agent::launchd::tests::plist_carries_the_worker_command_escaped ... ok
[INFO] [stdout] test agent::launchd::tests::plist_carries_the_worker_dir_escaped ... ok
[INFO] [stdout] test agent::hub::tests::summary_sends_the_key_and_tz_and_classifies_errors ... ok
[INFO] [stdout] test agent::launchd::tests::plist_carries_zakuro_home_and_escapes_xml ... ok
[INFO] [stdout] test agent::cli::tests::uninstall_turns_sharing_off_through_the_client_before_booting_out ... ok
[INFO] [stdout] test agent::client::tests::talks_to_a_running_agent_and_surfaces_api_errors ... ok
[INFO] [stdout] test agent::merge::tests::an_offline_device_has_no_link_and_is_not_online ... ok
[INFO] [stdout] test agent::merge::tests::before_the_first_hub_poll_hub_fields_are_null ... ok
[INFO] [stdout] test agent::launchd::tests::plist_lives_in_the_users_launch_agents ... ok
[INFO] [stdout] test agent::launchd::tests::plist_runs_zc_agent_run_under_launchd_with_the_spec_settings ... ok
[INFO] [stdout] test agent::merge::tests::device_ids_are_url_encoded ... ok
[INFO] [stdout] test agent::merge::tests::env_follows_the_api_url ... ok
[INFO] [stdout] test agent::merge::tests::hub_timestamps_become_whole_second_utc ... ok
[INFO] [stdout] test agent::cli::tests::install_reports_the_port_the_launched_agent_answers_on ... ok
[INFO] [stdout] test agent::merge::tests::merges_account_devices_links_and_local_state ... ok
[INFO] [stdout] test agent::merge::tests::the_mesh_status_passes_through ... ok
[INFO] [stdout] test agent::merge::tests::this_mac_price_all_disabled_is_disabled_state_with_no_price ... ok
[INFO] [stdout] test agent::merge::tests::this_mac_price_mixed_disabled_and_priced_ignores_disabled ... ok
[INFO] [stdout] test agent::merge::tests::this_mac_price_states ... ok
[INFO] [stdout] test agent::merge::tests::zero_devices_is_some_empty_not_none ... ok
[INFO] [stdout] test agent::merge::tests::negative_default_price_maps_to_none ... ok
[INFO] [stdout] test agent::mesh::tests::the_proxy_route_is_reachable_only_on_a_relayed_port_with_the_relay ... ok
[INFO] [stdout] test agent::plan::tests::a_drain_ends_when_idle_out_of_time_or_already_gone ... ok
[INFO] [stdout] test agent::plan::tests::a_route_change_drains_the_workers_then_stops_the_broker ... ok
[INFO] [stdout] test agent::mesh::tests::the_host_route_is_reachable_while_the_broker_runs ... ok
[INFO] [stdout] test agent::plan::tests::a_crashed_worker_restarts_only_after_its_backoff ... ok
[INFO] [stdout] test agent::plan::tests::an_unmanaged_or_blocked_broker_is_never_touched ... ok
[INFO] [stdout] test agent::plan::tests::idle_and_not_sharing_does_nothing ... ok
[INFO] [stdout] test agent::launchd::tests::reload_waits_until_launchd_has_removed_the_old_agent ... ok
[INFO] [stdout] test agent::plan::tests::crashloop_is_three_failures_within_five_minutes ... ok
[INFO] [stdout] test agent::plan::tests::pause_drains_everyone_then_stops_the_broker ... ok
[INFO] [stdout] test agent::plan::tests::crashed_slots_beyond_the_target_are_cleaned_up ... ok
[INFO] [stdout] test agent::mesh::tests::no_route_is_none_and_unreachable ... ok
[INFO] [stdout] test agent::plan::tests::missing_prerequisites_start_nothing ... ok
[INFO] [stdout] test agent::plan::tests::route_change_needs_restart_whenever_the_kind_changes ... ok
[INFO] [stdout] test agent::launchd::tests::a_failed_bootstrap_is_retried ... ok
[INFO] [stdout] test agent::plan::tests::pause_stops_the_broker_while_it_is_still_starting ... ok
[INFO] [stdout] test agent::plan::tests::prerequisites ... ok
[INFO] [stdout] test agent::plan::tests::scale_down_drains_the_highest_idle_workers_first ... ok
[INFO] [stdout] test agent::plan::tests::scale_down_with_everyone_busy_drains_the_highest_index ... ok
[INFO] [stdout] test agent::plan::tests::workers_start_at_the_lowest_free_indices ... ok
[INFO] [stdout] test agent::plan::tests::sharing_starts_the_broker_first_then_waits_for_it ... ok
[INFO] [stdout] test agent::plan::tests::restart_backoff_doubles_up_to_a_minute ... ok
[INFO] [stdout] test agent::plan::tests::sharing_waits_out_the_broker_restart_backoff_before_starting_it ... ok
[INFO] [stdout] test agent::launchd::tests::a_bootout_failure_is_ignored_but_a_bootstrap_failure_is_reported ... ok
[INFO] [stdout] test agent::plan::tests::zakuro_dir_missing_detail_names_the_bad_setting ... ok
[INFO] [stdout] test agent::run::tests::existing_agent_conflict_decision ... ok
[INFO] [stdout] test agent::server::tests::guards_refuse_browsers_foreign_hosts_and_bad_tokens ... ok
[INFO] [stdout] test agent::launchd::tests::uninstall_boots_out_and_removes_the_plist_but_keeps_the_agent_dir ... ok
[INFO] [stdout] test agent::summary::tests::a_summary_from_an_older_agent_decodes_with_no_mesh_route ... ok
[INFO] [stdout] test agent::summary::tests::an_unrelayable_broker_port_names_the_relay_range ... ok
[INFO] [stdout] test agent::launchd::tests::bootstrap_is_still_attempted_when_the_old_agent_outlives_the_deadline ... ok
[INFO] [stdout] test agent::summary::tests::every_problem_code_has_a_message ... ok
[INFO] [stdout] test agent::summary::tests::serializes_exactly_to_the_committed_fixture ... ok
[INFO] [stdout] test agent::summary::tests::the_fixture_counts_match_its_device_list ... ok
[INFO] [stdout] test agent::summary::tests::the_fixture_decodes_and_round_trips ... ok
[INFO] [stdout] test agent::run::tests::start_on_a_held_port_with_no_agent_falls_back_to_a_random_port ... ok
[INFO] [stdout] test agent::launchd::tests::install_writes_the_plist_rotates_the_token_and_boots_out_before_bootstrap ... ok
[INFO] [stdout] test agent::server::tests::method_not_allowed_is_json_and_the_guard_runs_first ... ok
[INFO] [stdout] test agent::handoff::tests::the_agent_makes_the_same_two_writes ... ok
[INFO] [stdout] test agent::handoff::tests::a_non_finite_price_is_refused_before_it_reaches_the_agent ... ok
[INFO] [stdout] test agent::run::tests::start_uses_the_preferred_port_when_it_is_free ... ok
[INFO] [stdout] test agent::supervisor::tests::a_foreign_broker_on_the_preferred_port_is_unmanaged ... ok
[INFO] [stdout] test agent::run::tests::start_refuses_when_a_live_agent_already_holds_the_preferred_port ... ok
[INFO] [stdout] test agent::run::tests::start_refuses_a_live_agent_on_a_fallback_port_even_when_the_preferred_port_is_free ... ok
[INFO] [stdout] test agent::server::tests::the_local_api_round_trip ... ok
[INFO] [stdout] test agent::run::tests::start_falls_back_when_agent_json_names_a_dead_pid_even_though_its_port_answers_like_the_agent ... ok
[INFO] [stdout] test agent::handoff::tests::up_and_down_are_handed_to_the_agent ... ok
[INFO] [stdout] test agent::supervisor::tests::a_drain_is_resent_until_the_broker_reports_the_worker_draining ... ok
[INFO] [stdout] test agent::supervisor::tests::a_blocked_preferred_port_falls_back_and_renders_the_chosen_port ... ok
[INFO] [stdout] test agent::supervisor::tests::adopt_restores_the_brokers_recorded_port_defaulting_to_9000 ... ok
[INFO] [stdout] test agent::handoff::tests::down_with_an_unmanaged_broker_pauses_the_agent_then_falls_through ... ok
[INFO] [stdout] test agent::supervisor::tests::a_deliberate_broker_stop_is_not_counted_as_a_crash_failure ... ok
[INFO] [stdout] test agent::hub::tests::a_connection_failure_names_its_cause_and_points_at_the_vpn ... ok
[INFO] [stdout] test agent::supervisor::tests::an_idle_tick_never_probes_or_binds_a_fallback_port ... ok
[INFO] [stdout] test agent::supervisor::tests::an_idle_tick_still_detects_an_unmanaged_broker_on_the_preferred_port ... ok
[INFO] [stdout] test agent::supervisor::tests::argv_templates_and_broker_env_follow_the_spec ... ok
[INFO] [stdout] test agent::supervisor::tests::choose_broker_port_tests::nothing_available_is_none ... ok
[INFO] [stdout] test agent::supervisor::tests::choose_broker_port_tests::preferred_and_9001_through_9003_held_falls_back_to_9004 ... ok
[INFO] [stdout] test agent::supervisor::tests::choose_broker_port_tests::preferred_free ... ok
[INFO] [stdout] test agent::supervisor::tests::choose_broker_port_tests::preferred_held_falls_back_to_9001 ... ok
[INFO] [stdout] test agent::supervisor::tests::choose_broker_port_tests::the_whole_range_held_falls_back_to_an_os_pick ... ok
[INFO] [stdout] test agent::supervisor::tests::dropping_a_plain_supervisor_leaves_its_child_running ... ok
[INFO] [stdout] test agent::supervisor::tests::a_health_check_timeout_keeps_a_busy_drain_from_completing ... ok
[INFO] [stdout] test agent::supervisor::tests::everything_blocked_and_no_os_pick_is_port_in_use ... ok
[INFO] [stdout] test agent::supervisor::tests::a_crashing_broker_that_stabilizes_resets_its_backoff ... ok
[INFO] [stdout] test agent::supervisor::tests::a_crashing_worker_backs_off_and_is_flagged_as_a_crashloop ... ok
[INFO] [stdout] test agent::supervisor::tests::a_route_change_onto_the_proxy_route_restarts_the_broker ... ok
[INFO] [stdout] test agent::supervisor::tests::logs_are_truncated_past_the_cap_and_tailed ... ok
[INFO] [stdout] test agent::supervisor::tests::on_the_proxy_route_a_full_relay_range_is_broker_port_unrelayable ... ok
[INFO] [stdout] test agent::supervisor::tests::a_crashing_worker_that_stabilizes_resets_its_backoff ... ok
[INFO] [stdout] test agent::supervisor::tests::a_crashing_broker_backs_off_then_restarts ... ok
[INFO] [stdout] test agent::supervisor::tests::port_free_is_false_when_something_holds_the_wildcard_address ... ok
[INFO] [stdout] test agent::supervisor::tests::a_worker_leader_that_exits_early_has_its_surviving_group_member_killed ... ok
[INFO] [stdout] test agent::supervisor::tests::a_workers_fetch_error_keeps_a_zero_reading_drain_from_completing ... ok
[INFO] [stdout] test agent::supervisor::tests::everything_blocked_falls_back_to_an_os_assigned_port ... ok
[INFO] [stdout] test agent::supervisor::tests::on_the_proxy_route_the_last_relayed_port_is_still_used ... ok
[INFO] [stdout] test agent::supervisor::tests::killing_a_worker_during_an_error_streak_forgets_its_retained_entry ... ok
[INFO] [stdout] test agent::supervisor::tests::the_broker_port_range_is_the_relay_range ... ok
[INFO] [stdout] test agent::supervisor::tests::each_broker_start_takes_zakuro_p2p_from_the_route_of_that_moment ... ok
[INFO] [stdout] test agent::supervisor::tests::a_started_broker_runs_p2p_on_either_mesh_route_only ... ok
[INFO] [stdout] test agent::supervisor::tests::workers_bind_loopback_unless_the_config_picks_a_host_or_caller_auth ... ok
[INFO] [stdout] test agent::supervisor::tests::workers_over_http_errs_on_a_non_2xx_response ... ok
[INFO] [stdout] test agent::supervisor::tests::workers_over_http_parses_a_valid_2xx_response ... ok
[INFO] [stdout] test agent::testbin::broker_main ... ignored, self-exec entry point for the agent integration tests
[INFO] [stdout] test agent::testbin::fake_worker_main ... ignored, self-exec entry point for the agent integration tests
[INFO] [stdout] test alias_tests::maps_primary_verbs_to_canonical ... ok
[INFO] [stdout] test alias_tests::mesh_verbs_expand_to_vpn_subcommand ... ok
[INFO] [stdout] test agent::supervisor::tests::reconcile_starts_scales_drains_and_pauses_real_processes ... ok
[INFO] [stdout] test alias_tests::unknown_and_empty_pass_through ... ok
[INFO] [stdout] test async_exec::tests::spawn_blocking_returns_handle ... ok
[INFO] [stdout] test autobroker::tests::an_explicit_zakuro_p2p_false_stays_false_on_the_host_route ... ok
[INFO] [stdout] test autobroker::tests::find_running_broker_none_when_all_fail ... ok
[INFO] [stdout] test autobroker::tests::find_running_broker_reuses_first_hit ... ok
[INFO] [stdout] test autobroker::tests::should_auto_spawn_when_nothing_explicit ... ok
[INFO] [stdout] test agent::supervisor::tests::an_explicit_zakuro_p2p_in_child_env_wins_over_the_route ... ok
[INFO] [stdout] test autobroker::tests::should_not_auto_spawn_with_env_broker_set ... ok
[INFO] [stdout] test autobroker::tests::should_not_auto_spawn_with_both_set ... ok
[INFO] [stdout] test autobroker::tests::should_not_auto_spawn_with_explicit_cli_arg ... ok
[INFO] [stdout] test broker::bench::bench_run_tests::a_run_that_mostly_fails_is_stopped_even_though_some_succeed ... ok
[INFO] [stdout] test broker::bench::bench_run_tests::a_run_that_only_fails_is_stopped_at_once ... ok
[INFO] [stdout] test broker::bench::bench_run_tests::the_guard_can_be_turned_off ... ok
[INFO] [stdout] test broker::bench::ip_free_tests::the_connectivity_line_carries_no_address ... ok
[INFO] [stdout] test agent::supervisor::tests::a_group_member_that_ignores_term_is_sigkilled ... ok
[INFO] [stdout] test broker::bench::bench_run_tests::a_run_uses_the_key_zc_login_saved ... ok
[INFO] [stdout] test broker::bench::live_block_tests::a_worker_is_attributed_to_its_node ... ok
[INFO] [stdout] test broker::bench::live_block_tests::the_histogram_buckets_every_sample_once ... ok
[INFO] [stdout] test broker::bench::live_block_tests::the_live_block_says_so_before_anything_has_been_routed ... ok
[INFO] [stdout] test broker::bench::live_block_tests::a_bar_is_proportional_and_never_overflows_its_width ... ok
[INFO] [stdout] test broker::bench::live_block_tests::work_is_totalled_per_node_busiest_first ... ok
[INFO] [stdout] test broker::bench::live_block_tests::the_live_block_shows_rate_spread_and_where_the_work_went ... ok
[INFO] [stdout] test broker::bench::live_view_tests::a_worker_name_is_shortened_to_fit_the_line ... ok
[INFO] [stdout] test broker::bench::live_view_tests::a_duration_reads_in_the_unit_that_suits_it ... ok
[INFO] [stdout] test broker::bench::live_view_tests::percentiles_come_from_the_samples_so_far ... ok
[INFO] [stdout] test broker::bench::live_view_tests::the_live_line_and_the_summary_agree ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::default_budget_reaches_the_payload ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::budget_is_sent_in_the_requirements_payload ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::default_budget_is_not_a_balance_gate ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::failure_reasons_rank_by_count_then_text ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::effective_concurrency_never_zero ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::no_failures_means_no_reasons_to_print ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::requests_per_worker_no_divide_by_zero ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::pct_normal ... ok
[INFO] [stdout] test broker::bench::report_layout_tests::a_box_is_as_wide_as_its_widest_line ... ok
[INFO] [stdout] test broker::bench::panic_fix_tests::pct_zero_denominator_is_zero_not_nan ... ok
[INFO] [stdout] test broker::bench::report_layout_tests::a_long_worker_name_cannot_push_the_bars_out_of_line ... ok
[INFO] [stdout] test agent::supervisor::tests::set_worker_cwd_changes_where_the_next_spawned_worker_runs ... ok
[INFO] [stdout] test broker::bench::report_layout_tests::a_worker_is_labelled_by_what_distinguishes_it ... ok
[INFO] [stdout] test broker::bench_mesh::tests::bandwidth_floors_transfer_at_1ms ... ok
[INFO] [stdout] test broker::bench_mesh::tests::failed_report_carries_reason_and_not_ok ... ok
[INFO] [stdout] test broker::bench_mesh::tests::mean_basic ... ok
[INFO] [stdout] test broker::bench::report_layout_tests::width_is_what_the_eye_sees_not_what_is_stored ... ok
[INFO] [stdout] test broker::bench::report_layout_tests::padding_lines_up_coloured_and_plain_alike ... ok
[INFO] [stdout] test broker::bench_mesh::tests::bandwidth_basic ... ok
[INFO] [stdout] test broker::bench_mesh::tests::mean_empty_is_zero ... ok
[INFO] [stdout] test broker::bench_mesh::tests::p95_empty_is_zero ... ok
[INFO] [stdout] test broker::bench_mesh::tests::p95_single_sample ... ok
[INFO] [stdout] test broker::bench_mesh::tests::p95_sorts_unsorted_input ... ok
[INFO] [stdout] test broker::bench_mesh::tests::p95_three_samples_is_max ... ok
[INFO] [stdout] test broker::bench_mesh::tests::p95_ten_samples ... ok
[INFO] [stdout] test agent::supervisor::tests::the_agents_own_zakuro_p2p_false_wins_on_the_proxy_route ... ok
[INFO] [stdout] test broker::bench_mesh::tests::p95_twenty_samples ... ok
[INFO] [stdout] test broker::bench_mesh::tests::report_serializes_expected_schema ... ok
[INFO] [stdout] test broker::bench_mesh::tests::recommended_none_when_no_healthy ... ok
[INFO] [stdout] test broker::bench_mesh::tests::worker_base_url_forms ... ok
[INFO] [stdout] test broker::credits::tests::test_add_increases_balance_and_total_added ... ok
[INFO] [stdout] test broker::credits::tests::test_deduct_fails_on_insufficient_balance ... ok
[INFO] [stdout] test broker::credits::tests::test_deduct_success_updates_balance_and_spent ... ok
[INFO] [stdout] test broker::credits::tests::test_check_rate_limit_unknown_user_returns_false ... ok
[INFO] [stdout] test broker::credits::tests::test_get_or_create_initialises_balance ... ok
[INFO] [stdout] test broker::credits::tests::test_get_returns_none_for_unknown_user ... ok
[INFO] [stdout] test broker::credits::tests::test_rate_limit_manager_check ... ok
[INFO] [stdout] test broker::credits::tests::test_rate_limit_per_day_blocks_after_limit ... ok
[INFO] [stdout] test broker::credits::tests::test_new_user_initial_balance ... ok
[INFO] [stdout] test broker::credits::tests::test_has_credits ... ok
[INFO] [stdout] test broker::credits::tests::test_has_credits_check ... ok
[INFO] [stdout] test broker::credits::tests::test_rate_limit_per_minute_blocks_after_limit ... ok
[INFO] [stdout] test broker::credits::tests::test_set_balance_syncs_from_ledger ... ok
[INFO] [stdout] test broker::deploy::expose::tests::a_complete_answer_replaces_the_allowlist ... ok
[INFO] [stdout] test broker::credits::tests::test_rate_limit_per_second_blocks_after_limit ... ok
[INFO] [stdout] test broker::deploy::expose::tests::a_missing_cache_file_loads_fail_closed ... ok
[INFO] [stdout] test broker::deploy::expose::tests::allowlist_fails_closed_until_the_hub_has_answered ... ok
[INFO] [stdout] test broker::deploy::expose::tests::allowlist_always_lets_this_brokers_own_address_through ... ok
[INFO] [stdout] test broker::bench_mesh::tests::recommended_is_max_p95_times_1_5 ... ok
[INFO] [stdout] test broker::deploy::expose::tests::allowlist_survives_a_restart_through_its_cache_file ... ok
[INFO] [stdout] test broker::deploy::expose::tests::an_incomplete_answer_is_used_only_when_nothing_is_known ... ok
[INFO] [stdout] test broker::deploy::expose::tests::allowlist_lets_exactly_the_owners_addresses_through ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_keeps_an_unchanged_exposure ... ok
[INFO] [stdout] test broker::deploy::expose::tests::exposure_is_on_unless_the_operator_turns_it_off ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_refuses_a_listen_address_that_is_not_an_ip ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_release_frees_the_port ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_listens_on_the_preferred_port_when_it_is_free ... ok
[INFO] [stdout] test broker::deploy::expose::tests::sync_exposes_a_healthy_deployment_and_reports_where ... ok
[INFO] [stdout] test broker::deploy::expose::tests::sync_releases_a_deployment_that_is_no_longer_healthy ... ok
[INFO] [stdout] test broker::deploy::expose::tests::sync_releases_deployments_this_node_no_longer_tracks ... ok
[INFO] [stdout] test broker::deploy::expose::tests::sync_reports_nothing_when_nothing_changed ... ok
[INFO] [stdout] test broker::deploy::expose::tests::sync_reuses_the_port_a_previous_exposure_listened_on ... ok
[INFO] [stdout] test broker::deploy::expose::tests::sync_without_a_mesh_ip_withdraws_the_address_from_the_hub ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_and_expose_re_reports_the_mesh_endpoint_after_a_version_bump ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_and_expose_releases_a_stopped_deployment ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_and_expose_reports_a_new_deployment_healthy_then_its_mesh_endpoint ... ok
[INFO] [stdout] test async_exec::tests::spawn_detached_runs ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_handoff_stop_of_an_unlisted_deployment_reports_its_local_version ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_new_deployment_goes_healthy_and_persists_endpoint ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_passes_service_account_to_the_container_as_env_and_persists_it ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_run_failure_with_no_previous_leaves_deployment_failed ... ok
[INFO] [stdout] test agent::supervisor::tests::three_broker_crashes_within_five_minutes_raise_a_crashloop_problem ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_stop_reports_the_desired_version_not_the_local_one ... ok
[INFO] [stdout] test agent::supervisor::tests::turning_sharing_on_probes_and_starts_on_the_very_next_tick ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_stopped_desired_state_stops_and_reports ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_start_failure_leaves_existing_container_untouched ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_failure_without_container_or_previous_is_just_a_failed_report ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_failure_with_container_and_previous_removes_reports_failed_then_rolled_back ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_previous_naming_another_deployment_stops_it_on_handoff ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_version_bump_stops_old_container_after_healthy ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_new_deployment_pulls_starts_and_checks_health ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_previous_naming_the_same_deployment_does_not_double_stop ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_resumes_a_stuck_mid_flight_deployment ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_stopped_desired_state_stops_running_container ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_stopped_desired_state_with_nothing_running_is_a_noop ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::container_name_is_unique_per_version ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::deploy_network_blank_value_falls_back_to_bridge ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::deploy_network_defaults_to_bridge_when_unset ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_unchanged_and_healthy_is_a_noop ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::deployment_labels_carry_id_and_version ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::health_http_url_defaults_path_to_root ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::health_http_url_keeps_an_already_leading_slash ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::health_http_url_tolerates_a_path_without_leading_slash ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::plan_version_bump_appends_stop_old_after_health ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::health_http_url_uses_the_container_ip_not_loopback ... ok
[INFO] [stdout] test broker::deploy::serve::tests::compute_credits_amount_multiplies_seconds_by_price ... ok
[INFO] [stdout] test broker::deploy::runtime::tests::deploy_network_honours_the_env_override ... ok
[INFO] [stdout] test broker::deploy::serve::tests::compute_credits_amount_rounds_to_six_decimals ... ok
[INFO] [stdout] test broker::deploy::serve::tests::compute_credits_amount_zero_duration_is_free ... ok
[INFO] [stdout] test broker::deploy::serve::tests::parse_serve_path_defaults_tail_to_root ... ok
[INFO] [stdout] test broker::deploy::serve::tests::parse_serve_path_rejects_non_serve_paths ... ok
[INFO] [stdout] test broker::deploy::serve::tests::anonymous_caller_is_never_billed ... ok
[INFO] [stdout] test broker::deploy::serve::tests::parse_serve_path_splits_id_and_tail ... ok
[INFO] [stdout] test broker::deploy::serve::tests::upstream_url_appends_query_when_present ... ok
[INFO] [stdout] test broker::deploy::serve::tests::to_http_method_maps_common_verbs ... ok
[INFO] [stdout] test broker::deploy::serve::tests::upstream_url_targets_the_container_ip_not_loopback ... ok
[INFO] [stdout] test broker::deploy::state::tests::save_then_load_round_trips ... ok
[INFO] [stdout] test broker::deploy::state::tests::load_defaults_when_file_absent ... ok
[INFO] [stdout] test broker::deploy::tests::status_payload_sends_an_explicit_null_when_not_exposed ... ok
[INFO] [stdout] test broker::deploy::tests::status_payload_carries_the_mesh_endpoint ... ok
[INFO] [stdout] test broker::discovery::accept_peer_tests::accept_peer_rejects_unreachable_or_unsigned_health ... ok
[INFO] [stdout] test broker::discovery::accept_peer_tests::accept_peer_requires_roster_and_matching_signed_health ... ok
[INFO] [stdout] test broker::discovery::advert_tests::fetch_advert_rejects_wrong_signer_and_unrostered ... ok
[INFO] [stdout] test agent::supervisor::tests::on_the_proxy_route_an_unrelayed_preferred_port_is_skipped ... ok
[INFO] [stdout] test broker::discovery::gossip_tests::fetch_gossip_accepts_rostered_signer ... ok
[INFO] [stdout] test broker::discovery::eager_fingerprint_seeding_tests::discovery_admission_seeds_fingerprint_without_any_health_probe ... ok
[INFO] [stdout] test broker::discovery::gossip_tests::fetch_gossip_rejects_revoked_signer ... ok
[INFO] [stdout] test broker::discovery::gossip_tests::fetch_gossip_rejects_tampered_body ... ok
[INFO] [stdout] test broker::discovery::gossip_tests::fetch_gossip_rejects_unrostered_signer ... ok
[INFO] [stdout] test broker::discovery::advert_tests::discovery_round_caches_peer_adverts ... ok
[INFO] [stdout] test broker::discovery::gossip_tests::fetch_gossip_returns_empty_on_unreachable_peer ... ok
[INFO] [stdout] test broker::discovery::kdi_registry_dedup_tests::predicate_local_worker_never_matches_a_peer ... ok
[INFO] [stdout] test broker::discovery::kdi_registry_dedup_tests::predicate_same_name_same_source_node_is_equal ... ok
[INFO] [stdout] test broker::discovery::kdi_registry_dedup_tests::same_hostname_different_node_fp_yields_distinct_registry_entries ... ok
[INFO] [stdout] test broker::discovery::localhost_only_discovery_tests::explicit_local_workers_are_parsed_from_the_env_list ... ok
[INFO] [stdout] test broker::discovery::localhost_only_discovery_tests::explicit_local_workers_bypass_the_loopback_gate ... ok
[INFO] [stdout] test broker::discovery::kdi_registry_dedup_tests::predicate_same_name_different_source_node_not_equal ... ok
[INFO] [stdout] test broker::discovery::eager_fingerprint_seeding_tests::rejected_peer_is_neither_registered_nor_seeded ... ok
[INFO] [stdout] test broker::discovery::localhost_only_discovery_tests::is_loopback_host_gate ... ok
[INFO] [stdout] test broker::discovery::peer_manager_worker_sync_tests::duplicate_dynamic_urls_collapse_to_one_entry ... ok
[INFO] [stdout] test broker::discovery::peer_manager_worker_sync_tests::already_explicit_dynamic_peer_is_not_duplicated ... ok
[INFO] [stdout] test broker::discovery::peer_manager_worker_sync_tests::dynamic_peer_manager_brokers_are_included_with_no_explicit_peers ... ok
[INFO] [stdout] test broker::discovery::gossip_tests::fetch_gossip_signs_request_so_check_node_sig_gate_accepts_it ... ok
[INFO] [stdout] test broker::discovery::price_sanitize_tests::peer_node_fp_none_without_source_node ... ok
[INFO] [stdout] test broker::discovery::peer_manager_worker_sync_tests::malformed_dynamic_urls_are_skipped ... ok
[INFO] [stdout] test broker::discovery::price_sanitize_tests::sanitize_price_accepts_valid ... ok
[INFO] [stdout] test broker::discovery::price_sanitize_tests::sanitize_price_rejects_bad_values ... ok
[INFO] [stdout] test broker::discovery::price_sanitize_tests::peer_synced_worker_node_fp_survives_round_trip ... ok
[INFO] [stdout] test broker::discovery::provider_field_sync_tests::malformed_fields_do_not_poison_the_sync ... ok
[INFO] [stdout] test broker::discovery::provider_field_sync_tests::absent_fields_fall_back_to_execute_worker_defaults ... ok
[INFO] [stdout] test broker::discovery::provider_field_sync_tests::parses_provider_fields_off_peer_entry ... ok
[INFO] [stdout] test broker::discovery::price_sanitize_tests::strip_zc_node_handles_both_forms ... ok
[INFO] [stdout] test broker::estimator::tests::a_merged_summary_equals_the_summary_of_the_merged_samples ... ok
[INFO] [stdout] test broker::estimator::tests::a_worker_summary_stays_small ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_repointed_at_a_new_target_keeps_its_port ... ok
[INFO] [stdout] test broker::estimator::tests::decay_keeps_the_shape_of_what_was_learned ... ok
[INFO] [stdout] test broker::estimator::tests::a_timeout_counts_against_success_without_corrupting_the_timing ... ok
[INFO] [stdout] test broker::estimator::tests::nothing_measured_reads_as_unknown_not_as_instant ... ok
[INFO] [stdout] test broker::estimator::scale_tests::a_million_workers_roll_up_into_one_summary_of_constant_size ... ok
[INFO] [stdout] test broker::estimator::tests::recent_behaviour_outweighs_old_behaviour ... ok
[INFO] [stdout] test broker::estimator::tests::the_median_is_the_geometric_mean_of_what_was_seen ... ok
[INFO] [stdout] test agent::hub::tests::device_price_puts_are_sent_concurrently ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::anonymous_sentinel_is_never_buffered ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_drops_connections_its_policy_refuses ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_falls_back_to_another_port_when_the_preferred_one_is_taken ... ok
[INFO] [stdout] test broker::flush::earn_credit_purchase_payload_tests::flush_sends_a_credit_transaction_as_credit_purchase ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::transient_failure_then_success_is_not_quarantined ... ok
[INFO] [stdout] test broker::http_adapter::tests::header_is_case_insensitive ... ok
[INFO] [stdout] test broker::http_adapter::tests::into_tiny_http_preserves_status_and_headers ... ok
[INFO] [stdout] test broker::http_adapter::tests::into_tiny_http_skips_invalid_headers ... ok
[INFO] [stdout] test broker::http_adapter::tests::is_loopback_matches_127_and_unknown ... ok
[INFO] [stdout] test broker::http_adapter::tests::json_bytes_sets_content_type ... ok
[INFO] [stdout] test broker::http_adapter::tests::response_round_trips_through_tiny_http ... ok
[INFO] [stdout] test broker::http_adapter::tests::with_header_appends ... ok
[INFO] [stdout] test broker::info::panic_fix_tests::check_port_bad_host_returns_false_not_panic ... ok
[INFO] [stdout] test broker::info::panic_fix_tests::check_port_unreachable_ip_returns_false ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::transport_error_counts_as_an_attempt_and_quarantines ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::quarantined_entry_does_not_block_later_transactions ... ok
[INFO] [stdout] test broker::ledger::balance_window_tests::a_failed_fetch_does_not_open_a_window ... ok
[INFO] [stdout] test broker::deploy::expose::tests::forwarder_splices_both_directions_to_the_target ... ok
[INFO] [stdout] test broker::ledger::sync_reply_tests::an_old_hub_reply_carries_no_prices ... ok
[INFO] [stdout] test broker::ledger::sync_reply_tests::prices_map_worker_ids_to_effective_prices ... ok
[INFO] [stdout] test broker::ledger::sync_reply_tests::unusable_prices_are_dropped ... ok
[INFO] [stdout] test broker::ledger::balance_window_tests::a_lookup_inside_the_window_does_not_ask_the_hub_again ... ok
[INFO] [stdout] test broker::ledger::tests::parse_balance_response_reads_credits_balance ... ok
[INFO] [stdout] test broker::ledger::tests::parse_balance_response_reads_balance_alias ... ok
[INFO] [stdout] test broker::ledger::tests::test_cancel_is_idempotent ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::per_item_rejection_inside_200_gets_the_same_attempt_grace ... ok
[INFO] [stdout] test broker::ledger::tests::parse_balance_response_rejects_malformed_or_missing ... ok
[INFO] [stdout] test broker::discovery::localhost_only_discovery_tests::only_loopback_worker_is_registered_locally ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::per_item_rejection_that_later_succeeds_is_not_quarantined ... ok
[INFO] [stdout] test broker::ledger::tests::test_local_commit_after_cancel_is_invalid ... ok
[INFO] [stdout] test broker::ledger::tests::test_local_fallback ... ok
[INFO] [stdout] test broker::ledger::tests::test_commit_after_cancel_is_invalid ... ok
[INFO] [stdout] test broker::ledger::tests::test_over_charge_clamped_to_reserved_exact ... ok
[INFO] [stdout] test broker::ledger::tests::test_double_commit_is_invalid ... ok
[INFO] [stdout] test broker::node_health::tests::missing_optional_fields_are_none_not_zero ... ok
[INFO] [stdout] test broker::node_health::tests::junk_does_not_panic_or_guess ... ok
[INFO] [stdout] test broker::node_health::tests::accepts_a_numeric_string_restart_count ... ok
[INFO] [stdout] test broker::ledger::balance_window_tests::a_reservation_inside_the_window_is_deducted_from_what_the_next_lookup_sees ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::quarantine_file_lines_are_valid_json_with_error_text ... ok
[INFO] [stdout] test broker::node_health::tests::nothing_but_the_three_fields_is_carried ... ok
[INFO] [stdout] test broker::node_health::tests::parses_a_healthy_service ... ok
[INFO] [stdout] test broker::node_health::tests::no_status_is_no_health ... ok
[INFO] [stdout] test broker::node_health::tests::parses_a_flapping_service ... ok
[INFO] [stdout] test broker::node_identity::fp_tests::fingerprint_is_stable_and_unique ... ok
[INFO] [stdout] test broker::node_identity::tests::load_or_create_persists ... ok
[INFO] [stdout] test broker::node_identity::fp_tests::node_filter_matches_fingerprint_not_hostname ... ok
[INFO] [stdout] test broker::flush::quarantine_tests::whole_request_failure_quarantines_after_max_attempts ... ok
[INFO] [stdout] test broker::node_identity::tests::canonical_is_stable ... ok
[INFO] [stdout] test broker::node_identity::tests::replay_and_skew ... ok
[INFO] [stdout] test broker::node_identity::tests::persist_roundtrip ... ok
[INFO] [stdout] test broker::node_identity::tests::load_in_never_creates_and_matches_load_or_create_in ... ok
[INFO] [stdout] test broker::node_sync::tests::fetch_roster_parses_live_response ... ignored, network mock; run with --ignored
[INFO] [stdout] test broker::node_sync::tests::obtain_voucher_extracts_signed_json_and_sig ... ignored, network mock; run with --ignored
[INFO] [stdout] test broker::node_identity::tests::a_mounted_volume_keeps_a_node_identity_across_restarts ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_owner_ips_rejects_bodies_without_an_ips_array ... ok
[INFO] [stdout] test broker::node_identity::tests::sign_verify_roundtrip ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_owner_ips_skips_entries_that_are_not_addresses ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_roster_handles_garbage ... ok
[INFO] [stdout] test broker::node_identity::tests::sign_headers_verify_request_roundtrip ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_owner_ips_reads_a_missing_complete_as_incomplete ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_roster_reads_pairs_and_defaults_revoked ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_roster_still_reads_bodies_without_endpoints ... ok
[INFO] [stdout] test broker::node_sync::tests::parse_owner_ips_reads_addresses_and_completeness ... ok
[INFO] [stdout] test broker::ledger::tests::test_extract_user_from_key ... ok
[INFO] [stdout] test broker::ledger::balance_window_tests::once_the_window_passes_the_next_lookup_refreshes ... ok
[INFO] [stdout] test broker::node_identity::tests::nonce_is_random_and_hex ... ok
[INFO] [stdout] test broker::node_identity::tests::zakuro_home_outranks_home_and_empty_does_not_count ... ok
[INFO] [stdout] test broker::node_sync::tests::parses_endpoints_skipping_absent_and_null ... ok
[INFO] [stdout] test broker::node_sync::tests::register_payload_omits_deploy_runtime_when_unknown ... ok
[INFO] [stdout] test broker::node_sync::tests::register_payload_omits_mesh_endpoint_key_when_none ... ok
[INFO] [stdout] test broker::peer::persisted_fingerprint_seeding_tests::all_writers_converge_on_the_canonical_shape ... ok
[INFO] [stdout] test broker::peer::persisted_fingerprint_seeding_tests::persisted_fingerprint_is_seeded_on_load_without_any_health_probe ... ok
[INFO] [stdout] test broker::peer::persisted_fingerprint_seeding_tests::persisted_peer_without_a_fingerprint_is_registered_but_unresolvable ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::eviction_clears_the_quic_port_index ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::fingerprint_lookup_accepts_both_bare_and_canonical_forms ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::remove_roster_peer_refuses_a_configured_peer ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::roster_cannot_downgrade_a_configured_peer_to_evictable ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::roster_derived_peer_does_not_answer_the_configured_lookup ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::roster_peer_absent_from_the_roster_is_evicted ... ok
[INFO] [stdout] test broker::node_sync::tests::register_payload_includes_exact_mesh_endpoint_when_some ... ok
[INFO] [stdout] test broker::node_sync::tests::register_payload_reports_a_missing_deploy_runtime_as_explicit_false ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::legacy_peers_json_without_the_flag_reloads_as_configured ... ok
[INFO] [stdout] test broker::node_sync::tests::register_payload_reports_a_usable_deploy_runtime ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::a_peer_advertising_quic_port_0_loses_its_cached_port ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::roster_peer_still_on_the_roster_is_kept ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::configured_peer_is_never_evicted_by_an_empty_roster ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_endpoint_does_not_prefix_match_hosts ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::configured_peer_is_found_by_fingerprint_under_a_different_spelling ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_ip_matches_host_exactly_not_substring ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::unprobed_configured_peer_has_no_fingerprint_match ... ok
[INFO] [stdout] test broker::peer::tests::host_of_extracts_host ... ok
[INFO] [stdout] test broker::peer::tests::no_node_key_produces_no_headers ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_endpoint_matches_exact_key_first ... ok
[INFO] [stdout] test broker::peer::tests::port_of_defaults_by_scheme ... ok
[INFO] [stdout] test broker::peer::roster_peer_lifecycle_tests::roster_provenance_survives_persist_and_reload ... ok
[INFO] [stdout] test broker::peer::tests::persist_then_load_roundtrips_peer_urls ... ok
[INFO] [stdout] test broker::peer::tests::proxied_peer_resolves_by_identity_where_ip_match_fails ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_fingerprint_matches_cached_identity_not_host ... ok
[INFO] [stdout] test broker::peer::tests::outbound_signature_verifies_server_side ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_endpoint_matches_dns_against_ip_registration ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_endpoint_matches_ip_against_dns_registration ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_endpoint_requires_the_same_port ... ok
[INFO] [stdout] test broker::peer::tests::get_url_for_endpoint_returns_none_for_unresolvable_and_unknown ... ok
[INFO] [stdout] test broker::peer::tests::test_simple_hash_distribution ... ok
[INFO] [stdout] test broker::peer::tests::url_sign_path_strips_host_and_query ... ok
[INFO] [stdout] test broker::peer::tests::test_async_peer_unreachable_is_error_not_panic ... ok
[INFO] [stdout] test broker::peer::tests::test_determine_authority_disabled ... ok
[INFO] [stdout] test broker::peer::tests::test_determine_authority_single_broker ... ok
[INFO] [stdout] test broker::peer::tests::test_simple_hash_deterministic ... ok
[INFO] [stdout] test broker::peer::tests::test_async_peer_reserve_error_surfaces_peer_message_and_code ... ok
[INFO] [stdout] test broker::policy::tests::a_barely_measured_worker_is_sampled_widely ... ok
[INFO] [stdout] test broker::policy::tests::a_well_measured_worker_is_sampled_close_to_what_it_measured ... ok
[INFO] [stdout] test broker::peer::tests::test_async_peer_client_happy_path_roundtrip ... ok
[INFO] [stdout] test broker::policy::tests::queueing_counts_against_a_worker ... ok
[INFO] [stdout] test broker::policy::tests::the_table_weights_a_fast_idle_worker_above_a_slow_busy_one ... ok
[INFO] [stdout] test broker::pricing::tests::broker_price_from_env_default ... ok
[INFO] [stdout] test broker::pricing::tests::broker_price_set_get_and_rejects_bad ... ok
[INFO] [stdout] test broker::quic::feed_subscription_tests::the_subscription_loop_makes_no_attempt_without_a_cached_port ... ok
[INFO] [stdout] test broker::quic::feed_subscription_tests::a_feed_subscription_keeps_going_only_while_the_peer_advertises_a_quic_port ... ok
[INFO] [stdout] test broker::quic::feed_subscription_tests::the_subscription_loop_ends_once_the_peers_cached_port_reads_0 ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::cap_msg_len_bounds ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::dead_subscribers_are_pruned_on_send_failure ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::derive_quic_identity_differs_by_key ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::derive_quic_identity_is_deterministic ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::matching_key_is_accepted ... ok
[INFO] [stdout] test broker::policy::tests::failure_and_price_move_the_cost_the_way_they_should ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::derived_key_is_a_valid_private_key ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::pinned_verify_accepts_matching_cert ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::empty_expected_allows_any_provided ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::mismatched_or_missing_key_is_rejected ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::quic_seed_is_stable_and_key_separated ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::parse_persisted_key_rejects_garbage_without_panicking ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::pinned_verify_rejects_mismatched_cert ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::resolve_peer_addr_prefers_ipv4 ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::build_tls_configs_keyed_and_keyless ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::resolve_peer_addr_rejects_unresolvable_names ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::subscribe_message_peer_key_defaults_and_round_trips ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::resolve_peer_addr_accepts_dns_names ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::resolve_peer_addr_accepts_literal_ips ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::task_offer_peer_key_defaults_when_absent ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::task_feed_config_keeps_idle_connections_alive ... ok
[INFO] [stdout] test broker::roster_cache::tests::fingerprint_authorized_matches_node_key_fingerprint ... ok
[INFO] [stdout] test broker::roster_cache::tests::parses_legacy_roster_file_without_endpoints ... ok
[INFO] [stdout] test broker::roster_cache::tests::endpoint_lookup_is_by_fingerprint_and_skips_revoked ... ok
[INFO] [stdout] test broker::quic::panic_fix_tests::task_offer_peer_key_round_trips ... ok
[INFO] [stdout] test broker::roster_cache::tests::to_json_then_load_from_str_roundtrips_endpoints_and_entries ... ok
[INFO] [stdout] test broker::roster_cache::tests::authorized_only_when_present_and_not_revoked ... ok
[INFO] [stdout] test broker::router::adaptive_tests::it_says_adaptive_in_the_reason_and_charges_nothing ... ok
[INFO] [stdout] test broker::roster_cache::tests::synthetic_127_entry_legacy_roster_survives_deserialization ... ok
[INFO] [stdout] test broker::roster_cache::tests::persist_then_load_roundtrips_roster_entries ... ok
[INFO] [stdout] test broker::router::tests::best_latency_does_not_mistake_never_measured_for_instant ... ok
[INFO] [stdout] test broker::router::tests::best_latency_still_routes_when_nothing_has_been_measured ... ok
[INFO] [stdout] test broker::router::tests::best_price_selects_cheapest_with_many_candidates ... ok
[INFO] [stdout] test broker::router::tests::local_selection_follows_ownership_not_uri_spelling ... ok
[INFO] [stdout] test broker::router::tests::peer_synced_workers_are_never_selected_as_local ... ok
[INFO] [stdout] test broker::router::tests::test_best_latency_selects_fastest_worker ... ok
[INFO] [stdout] test broker::router::tests::test_best_price_selects_cheapest_worker ... ok
[INFO] [stdout] test broker::router::tests::test_client_target_worker_is_noop_for_routing ... ok
[INFO] [stdout] test broker::router::tests::test_estimate_cost_no_workers_returns_none ... ok
[INFO] [stdout] test broker::router::tests::test_estimate_cost_returns_min_and_max ... ok
[INFO] [stdout] test broker::router::tests::test_insufficient_credits_returns_error ... ok
[INFO] [stdout] test broker::router::tests::test_local_mode_no_workers_returns_error ... ok
[INFO] [stdout] test broker::router::tests::test_local_mode_returns_first_worker_free ... ok
[INFO] [stdout] test broker::router::tests::test_no_capacity_returns_no_capacity ... ok
[INFO] [stdout] test broker::router::tests::test_no_healthy_workers_returns_no_workers ... ok
[INFO] [stdout] test broker::router::adaptive_tests::a_brand_new_worker_is_still_tried ... ok
[INFO] [stdout] test broker::router::tests::test_pin_target_node_other_node_rejected ... ok
[INFO] [stdout] test broker::router::tests::test_rate_limited_returns_error ... ok
[INFO] [stdout] test broker::router::tests::test_round_robin_cycles_through_workers ... ok
[INFO] [stdout] test broker::router::adaptive_tests::it_prefers_the_worker_that_has_been_fastest ... ok
[INFO] [stdout] test broker::router::tests::test_price_change_affects_routing_decision ... ok
[INFO] [stdout] test broker::router::tests::test_tag_filter_requires_all_tags ... ok
[INFO] [stdout] test broker::router::tests::test_timeout_unlimited_worker_accepts_any_timeout ... ok
[INFO] [stdout] test broker::router::tests::test_timeout_incompatible_returns_error ... ok
[INFO] [stdout] test broker::router::tests::test_worker_type_mismatch_returns_error ... ok
[INFO] [stdout] test broker::router::tests::the_decision_says_how_it_was_made ... ok
[INFO] [stdout] test broker::router::tests::test_worker_type_match_routes_correctly ... ok
[INFO] [stdout] test broker::router::tests::the_unchecked_path_honours_the_strategy_it_was_given ... ok
[INFO] [stdout] test broker::router::tests::workers_a_strategy_cannot_separate_still_share_the_load ... ok
[INFO] [stdout] test broker::sampler::tests::a_zero_weight_is_never_drawn ... ok
[INFO] [stdout] test broker::sampler::tests::best_of_d_picks_the_best_it_saw ... ok
[INFO] [stdout] test broker::router::adaptive_tests::no_workers_is_an_error_not_a_panic ... ok
[INFO] [stdout] test broker::router::tests::best_latency_accounts_for_what_is_already_queued ... ok
[INFO] [stdout] test broker::sampler::tests::the_same_seed_makes_the_same_choices ... ok
[INFO] [stdout] test broker::sampler::tests::nothing_to_draw_from_is_not_a_panic ... ok
[INFO] [stdout] test broker::selection::tests::select_none_when_no_admitted_peer ... ok
[INFO] [stdout] test broker::sampler::tests::two_choices_beat_one ... ok
[INFO] [stdout] test broker::selection::tests::select_prefers_lowest_latency_among_resource_sufficient_fresh_peers ... ok
[INFO] [stdout] test agent::supervisor::tests::route_kind_changes_restart_the_broker_address_changes_dont ... ok
[INFO] [stdout] test broker::policy::regret_tests::the_policy_beats_round_robin_by_a_wide_margin ... ok
[INFO] [stdout] test broker::sampler::tests::draws_land_in_proportion_to_the_weights ... ok
[INFO] [stdout] test agent::supervisor::tests::terminate_all_also_reaches_a_group_member_that_ignores_term ... ok
[INFO] [stdout] test broker::policy::regret_tests::it_follows_the_mesh_when_conditions_change ... ok
[INFO] [stdout] test broker::server::brokers_endpoint_tests::self_id_is_key_derived_and_matches_node_key ... ok
[INFO] [stdout] test broker::server::brokers_endpoint_tests::one_broker_registered_under_two_spellings_is_listed_once ... ok
[INFO] [stdout] test broker::server::brokers_endpoint_tests::unknown_peer_fingerprint_is_omitted_not_leaked_as_ip ... ok
[INFO] [stdout] test broker::server::brokers_endpoint_tests::distinct_brokers_are_each_listed ... ok
[INFO] [stdout] test broker::server::commit_credits_arm_tests::stamped_resolvable_worker_takes_payout_arm_via_commit_credits ... ok
[INFO] [stdout] test broker::policy::regret_tests::regret_per_task_shrinks_as_it_learns ... ok
[INFO] [stdout] test broker::server::dispatch_deadline_tests::broadcast_targets_excludes_abandoned_preferred_peer ... ok
[INFO] [stdout] test broker::server::commit_credits_arm_tests::unstamped_worker_takes_full_refund_arm_via_commit_credits ... ok
[INFO] [stdout] test broker::server::dispatch_deadline_tests::explicit_timeout_is_honored_with_slack ... ok
[INFO] [stdout] test broker::server::dispatch_deadline_tests::unset_timeout_caps_at_30s_not_the_peer_clients_310s_default ... ok
[INFO] [stdout] test broker::server::commit_credits_arm_tests::some_arm_redeems_the_voucher_exactly_once ... ok
[INFO] [stdout] test broker::server::brokers_endpoint_tests::peers_endpoint_is_ip_free_and_key_derived ... ok
[INFO] [stdout] test broker::server::brokers_endpoint_tests::known_peer_fingerprint_appears_as_zc_id_no_ip_leaked ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::dashboard_types_are_stable ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::settle_executor_payout_refund_id_does_not_start_with_earn_prefix ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::settle_own_provider_payout_books_an_earn_prefixed_credit_for_the_owner ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::peer_earn_books_an_earn_prefixed_credit_purchase_for_the_owner ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::settle_own_provider_payout_refund_id_does_not_start_with_earn_prefix ... ok
[INFO] [stdout] test broker::server::drain_route_tests::drain_is_loopback_only_and_marks_the_worker_draining ... ok
[INFO] [stdout] test broker::server::executor_identity_tests::direct_but_unstamped_executor_now_routes_to_full_refund_arm ... ok
[INFO] [stdout] test broker::server::executor_identity_tests::executor_fp_prefers_node_identity_and_refuses_unstamped_workers ... ok
[INFO] [stdout] test broker::server::executor_identity_tests::proxied_executor_resolves_by_fingerprint_where_ip_match_fails ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::settle_self_payout_refund_id_does_not_start_with_earn_prefix ... ok
[INFO] [stdout] test broker::server::forward_routing_tests::a_caller_that_names_no_timeout_still_gets_one ... ok
[INFO] [stdout] test broker::server::earn_prefix_contract_tests::settle_self_payout_books_an_earn_prefixed_credit_for_the_owner ... ok
[INFO] [stdout] test broker::server::forward_async_tests::forward_async_round_trips_status_body_and_headers ... ok
[INFO] [stdout] test broker::server::forward_routing_tests::an_explicit_timeout_keeps_its_five_seconds_of_slack ... ok
[INFO] [stdout] test broker::server::forward_routing_tests::mesh_workers_take_the_proxied_client_and_local_workers_the_direct_one ... ok
[INFO] [stdout] test broker::server::commit_credits_arm_tests::none_arm_redeems_nothing ... ok
[INFO] [stdout] test broker::server::infer_tests::billed_infer_charges_actual_tokens_and_reports_it ... ok
[INFO] [stdout] test broker::server::infer_tests::cost_ceiling_and_actual_cost_math ... ok
[INFO] [stdout] test broker::server::forward_routing_tests::a_mesh_forward_leaves_through_the_sidecar_proxy ... ok
[INFO] [stdout] test broker::server::infer_tests::general_provider_receives_the_model_uuid_not_the_worker_name ... ok
[INFO] [stdout] test broker::server::infer_tests::invalid_model_uri_returns_400 ... ok
[INFO] [stdout] test broker::server::infer_tests::failed_forward_refunds_the_full_reservation ... ok
[INFO] [stdout] test broker::server::infer_tests::insufficient_credits_rejects_before_forwarding ... ok
[INFO] [stdout] test broker::server::infer_tests::keyless_local_caller_stays_free_even_on_priced_provider ... ok
[INFO] [stdout] test broker::server::infer_tests::local_mode_without_bearer_is_allowed ... ok
[INFO] [stdout] test broker::server::infer_tests::provider_forward_error_returns_502_without_leaking_internals ... ok
[INFO] [stdout] test broker::server::infer_tests::remote_mode_with_valid_bearer_proceeds ... ok
[INFO] [stdout] test broker::server::infer_tests::over_reporting_provider_cannot_charge_past_the_ceiling ... ok
[INFO] [stdout] test broker::server::infer_tests::no_owner_refunds_payout_to_requester ... ok
[INFO] [stdout] test broker::server::infer_tests::served_uuid_forwards_and_maps_response ... ok
[INFO] [stdout] test broker::policy::regret_tests::it_notices_a_slow_worker_that_becomes_fast ... ok
[INFO] [stdout] test broker::server::infer_tests::unpriced_provider_stays_free_for_authed_caller ... ok
[INFO] [stdout] test broker::server::infer_tests::unstamped_provider_settlement_refunds_in_full ... ok
[INFO] [stdout] test broker::server::infer_tests::unserved_uuid_returns_404 ... ok
[INFO] [stdout] test broker::server::marketplace_preselection_guard_tests::marketplace_select_escape_hatch ... ok
[INFO] [stdout] test broker::server::infer_tests::remote_mode_without_bearer_returns_401_before_forward ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::a_node_that_joins_the_roster_later_becomes_routable_without_a_restart ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::capped_charge_never_exceeds_reserved ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::a_probed_identity_is_never_overwritten_by_the_roster ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::a_seeded_roster_peer_is_not_reported_reachable ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::header_or_accepts_valid_value ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::header_or_does_not_panic_on_peer_supplied_garbage ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::check_node_sig_accepts_rostered_signer_rejects_others ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::health_wireguard_connected_and_mesh_tunnel_never_disagree ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::merge_evicts_departed_roster_peers_and_spares_configured_ones ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::mesh_endpoint_is_ip_plus_bound_port ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::mesh_endpoint_log_gate_logs_again_after_interval_elapses ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::mesh_endpoint_log_gate_logs_on_first_absence ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::mesh_endpoint_log_gate_logs_recovery_on_transition_back ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::mesh_endpoint_log_gate_stays_silent_while_connected ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::mesh_endpoint_log_gate_suppresses_repeat_within_interval ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::client_response_uses_key_derived_node_uri ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::peer_peers_requires_valid_node_signature_and_signs_response ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::no_client_surface_emits_ip ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::health_endpoint_body_has_no_mesh_ip ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_entries_carry_the_nodes_fingerprint ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_entries_excludes_self_even_when_its_address_changed ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_entries_still_drops_revoked_rows_with_identity_filter_on ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_urls_excludes_self_endpoint ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_urls_prefixes_bare_addresses_with_http ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_urls_skips_empty_and_whitespace_only_endpoints ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_entries_excludes_self_by_pubkey_when_tunnel_is_down ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_urls_empty_roster_yields_empty_vec ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::roster_peer_urls_skips_revoked_entries ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::stats_worker_and_response_serialization_has_no_mesh_ip ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::worker_to_info_client_hides_ip_peer_keeps_it ... ok
[INFO] [stdout] test broker::server::panic_fix_tests::worker_to_info_carries_provider_fields_for_peers ... ok
[INFO] [stdout] test broker::server::quic_route_tests::offers_go_over_http_when_this_broker_runs_no_quic ... ok
[INFO] [stdout] test broker::server::quic_route_tests::offers_use_quic_only_when_the_peer_advertises_a_port ... ok
[INFO] [stdout] test broker::server::quic_route_tests::quic_is_off_on_the_proxy_route ... ok
[INFO] [stdout] test broker::server::quic_route_tests::quic_runs_on_the_host_route_and_with_no_route ... ok
[INFO] [stdout] test broker::server::quic_route_tests::the_disable_env_still_turns_quic_off ... ok
[INFO] [stdout] test broker::server::quic_route_tests::a_broker_on_the_proxy_route_starts_no_quic_and_advertises_quic_port_0 ... ok
[INFO] [stdout] test broker::server::quic_route_tests::with_no_quic_transport_an_offer_goes_over_http_despite_a_cached_quic_port ... ok
[INFO] [stdout] test broker::server::billing_price_pin_tests::billing_reads_the_worker_price_not_the_broker_price ... ok
[INFO] [stdout] test broker::server::quic_route_tests::discovery_clears_the_cached_port_of_a_peer_advertising_quic_port_0 ... ok
[INFO] [stdout] test broker::server::runtime_tests::runtime_zero_workers_is_current_thread ... ok
[INFO] [stdout] test broker::server::task_result_producer_tests::dotted_quad_detector_is_sound ... ok
[INFO] [stdout] test broker::server::task_result_producer_tests::producer_emits_no_address_in_peer_identity ... ok
[INFO] [stdout] test broker::sampler::scale_tests::a_draw_costs_the_same_at_a_hundred_workers_and_at_a_million ... ok
[INFO] [stdout] test broker::server::task_result_producer_tests::quic_producer_emits_identity_not_worker_uri ... ok
[INFO] [stdout] test broker::server::two_phase_tests::cancel_is_idempotent ... ok
[INFO] [stdout] test broker::server::task_result_producer_tests::producer_emits_no_address_in_task_result ... ok
[INFO] [stdout] test broker::server::runtime_tests::runtime_defaults_to_multi_thread_when_unset ... ok
[INFO] [stdout] test broker::server::runtime_tests::runtime_honors_explicit_worker_thread_count ... ok
[INFO] [stdout] test broker::server::two_phase_tests::earn_refund_conserves_on_success_and_failure ... ok
[INFO] [stdout] test broker::sampler::scale_tests::building_a_million_entry_table_is_affordable_once_a_tick ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_defaults_zero_without_voucher ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_out_of_range_falls_back_to_zero ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_parse_failure_falls_back_to_zero ... ok
[INFO] [stdout] test broker::server::billing_price_pin_tests::hub_price_from_sync_reply_is_what_a_job_is_billed ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_zero_when_no_pubkey_cached ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_reads_validly_signed_voucher ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_zero_when_signature_invalid ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_zero_when_signature_missing ... ok
[INFO] [stdout] test broker::server::two_phase_tests::mint_and_verify_voucher_rejects_without_api_creds ... ok
[INFO] [stdout] test broker::server::two_phase_tests::settle_payout_conserves_at_named_commission_rates ... ok
[INFO] [stdout] test broker::server::two_phase_tests::settlement_conserves_for_all_commission_rates ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_zero_when_tampered_after_signing ... ok
[INFO] [stdout] test broker::server::two_phase_tests::reserve_offer_rejects_when_no_local_worker ... ok
[INFO] [stdout] test broker::server::two_phase_tests::mint_and_verify_voucher_fails_closed_even_with_cached_pubkey ... ok
[INFO] [stdout] test broker::server::two_phase_tests::split_commission_min_charge_no_leak ... ok
[INFO] [stdout] test broker::server::two_phase_tests::offer_commission_c_zero_when_signed_by_wrong_key ... ok
[INFO] [stdout] test broker::server::two_phase_tests::split_commission_ten_percent_exact ... ok
[INFO] [stdout] test broker::server::two_phase_tests::unresolved_peer_full_refund_makes_requester_whole ... ok
[INFO] [stdout] test broker::server::two_phase_tests::voucher_commission_valid_gate ... ok
[INFO] [stdout] test broker::shadow::tests::it_counts_what_the_live_choice_cost_against_what_the_policy_would_have_picked ... ok
[INFO] [stdout] test broker::shadow::tests::an_empty_or_out_of_range_decision_is_ignored_rather_than_panicking ... ok
[INFO] [stdout] test broker::server::two_phase_tests::split_commission_zero_is_identity ... ok
[INFO] [stdout] test broker::server::reservation_activity_tests::a_reserved_offer_counts_as_activity_until_commit_cancel_or_expiry ... ok
[INFO] [stdout] test broker::shadow::tests::it_reports_no_saving_when_the_live_choice_is_already_the_best ... ok
[INFO] [stdout] test broker::task_board::tests::new_types_round_trip ... ok
[INFO] [stdout] test broker::shadow::tests::the_summary_says_what_was_learned ... ok
[INFO] [stdout] test broker::task_board::tests::peer_identity_supports_two_phase_defaults_false_for_old_peers ... ok
[INFO] [stdout] test broker::task_board::tests::receipt_bytes_stable_and_sensitive_to_settlement_fields ... ok
[INFO] [stdout] test broker::task_board::tests::target_worker_defaults_empty_and_strips_scheme ... ok
[INFO] [stdout] test broker::task_board::tests::task_offer_two_phase_defaults_false_for_old_senders ... ok
[INFO] [stdout] test broker::task_board::tests::task_result_carries_identity_not_addresses ... ok
[INFO] [stdout] test broker::task_board::tests::verify_receipt_false_for_unrostered_signer ... ok
[INFO] [stdout] test broker::task_board::tests::verify_receipt_false_when_sig_or_node_id_missing ... ok
[INFO] [stdout] test broker::task_board::tests::verify_receipt_false_when_tampered_after_signing ... ok
[INFO] [stdout] test broker::tests::p2p_is_the_explicit_setting_else_on_for_any_mesh_route ... ok
[INFO] [stdout] test broker::uri::tests::health_parsing_requires_the_broker_service_tag ... ok
[INFO] [stdout] test broker::task_board::tests::verify_receipt_true_for_rostered_signer ... ok
[INFO] [stdout] test broker::uri::tests::matching_by_fingerprint_name_and_wildcard ... ok
[INFO] [stdout] test broker::tests::broker_state_has_shared_async_client ... ok
[INFO] [stdout] test broker::uri::tests::rejects_malformed ... ok
[INFO] [stdout] test broker::uri::tests::rejects_plain_http ... ok
[INFO] [stdout] test broker::voucher::tests::bad_signature_rejected ... ok
[INFO] [stdout] test broker::voucher::tests::commission_c_of_one_rejected ... ok
[INFO] [stdout] test broker::voucher::tests::commission_c_negative_rejected ... ok
[INFO] [stdout] test broker::voucher::tests::commission_c_parses_and_verifies ... ok
[INFO] [stdout] test broker::voucher::tests::expired_rejected ... ok
[INFO] [stdout] test broker::voucher::tests::python_signed_voucher_verifies ... ignored, cross-language interop; run with env from the Python signer
[INFO] [stdout] test broker::voucher::tests::over_budget_rejected ... ok
[INFO] [stdout] test broker::voucher::tests::tampered_bytes_break_signature ... ok
[INFO] [stdout] test broker::voucher::tests::valid_voucher_passes_and_parses ... ok
[INFO] [stdout] test broker::voucher::tests::legacy_voucher_without_commission_c_defaults_and_verifies ... ok
[INFO] [stdout] test broker::wal::tests::test_append_then_flush_persists_to_disk ... ok
[INFO] [stdout] test broker::wal::tests::test_compact_also_clears_failed_entries ... ok
[INFO] [stdout] test broker::wal::tests::test_flush_worker_drains_on_shutdown ... ok
[INFO] [stdout] test broker::server::two_phase_tests::take_committed_removes_once ... ok
[INFO] [stdout] test broker::server::two_phase_tests::sweep_releases_stale_keeps_fresh ... ok
[INFO] [stdout] test broker::wal::tests::test_compact_removes_committed_entries_from_disk ... ok
[INFO] [stdout] test broker::wal::tests::test_open_creates_file ... ok
[INFO] [stdout] test broker::wal::tests::test_full_lifecycle_reserved_executed_committed ... ok
[INFO] [stdout] test broker::server::two_phase_tests::verify_offer_voucher_gate ... ok
[INFO] [stdout] test broker::wal::tests::test_update_status_unknown_request_is_noop ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::a_worker_heartbeat_does_not_undo_a_drain ... ok
[INFO] [stdout] test broker::wal::tests::test_earned_status_is_uncommitted_until_marked_committed ... ok
[INFO] [stdout] test broker::wal::tests::test_reload_populates_index_from_disk ... ok
[INFO] [stdout] test broker::wal::tests::test_update_status_appends_new_line ... ok
[INFO] [stdout] test broker::wal::tests::test_read_uncommitted_excludes_committed_and_failed ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::discovery_refresh_does_not_undo_a_drain ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::drain_marks_draining_and_leaves_the_routable_set ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::draining_an_unknown_worker_is_none ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::discovery_refresh_keeps_the_hub_price ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::hub_price_survives_re_registration_with_no_sync_in_between ... ok
[INFO] [stdout] test broker::worker::tests::active_guard_disarm_skips_decrement ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::peer_workers_are_never_repriced ... ok
[INFO] [stdout] test broker::worker::tests::active_guard_decrements_on_drop_even_without_record ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::hub_price_overrides_billing_and_remembers_the_workers_own_price ... ok
[INFO] [stdout] test broker::worker::drain_and_price_tests::mark_unhealthy_does_not_undo_a_drain ... ok
[INFO] [stdout] test broker::worker::tests::test_can_handle_exact_match ... ok
[INFO] [stdout] test broker::worker::tests::test_can_handle_gpu_required_but_none_fails ... ok
[INFO] [stdout] test broker::worker::tests::test_can_handle_over_cpu_fails ... ok
[INFO] [stdout] test broker::worker::tests::test_can_handle_unhealthy_worker_fails ... ok
[INFO] [stdout] test broker::worker::tests::aggregate_available_sums_healthy_workers ... ok
[INFO] [stdout] test broker::worker::tests::aggregate_available_excludes_unhealthy_and_ignores_empty ... ok
[INFO] [stdout] test broker::worker::tests::test_find_capable_filters_by_resources ... ok
[INFO] [stdout] test broker::worker::tests::test_heartbeat_unknown_worker_returns_none ... ok
[INFO] [stdout] test broker::worker::tests::test_heartbeat_updates_resources_and_status ... ok
[INFO] [stdout] test broker::worker::tests::test_increment_active_and_decrement_on_record ... ok
[INFO] [stdout] test broker::worker::tests::test_legacy_worker_registration_json_without_new_fields_defaults_back_compat ... ok
[INFO] [stdout] test broker::server::p2p_active_requests_tests::a_slow_p2p_offer_holds_active_requests_at_one_until_it_completes ... ok
[INFO] [stdout] test broker::worker::tests::test_mark_stale_sets_unhealthy ... ok
[INFO] [stdout] test broker::worker::tests::test_pricing_cost_formula ... ok
[INFO] [stdout] test broker::worker::tests::test_pricing_min_charge_enforced ... ok
[INFO] [stdout] test broker::worker::tests::test_refresh_heartbeat_restores_healthy ... ok
[INFO] [stdout] test broker::worker::tests::test_can_handle_over_memory_fails ... ok
[INFO] [stdout] test broker::worker::tests::test_pricing_price_score_weighted ... ok
[INFO] [stdout] test broker::worker::tests::test_register_assigns_unique_id ... ok
[INFO] [stdout] test broker::worker::tests::test_healthy_list_excludes_unhealthy ... ok
[INFO] [stdout] test broker::worker::tests::test_register_stores_fields ... ok
[INFO] [stdout] test broker::worker::tests::test_remove_drops_worker_from_general_index ... ok
[INFO] [stdout] test broker::worker::tests::test_legacy_worker_json_without_new_fields_defaults_back_compat ... ok
[INFO] [stdout] test broker::worker::tests::test_resolve_model_excludes_unhealthy_specialized_falls_back_to_general ... ok
[INFO] [stdout] test broker::worker::tests::test_remove_worker ... ok
[INFO] [stdout] test broker::worker::tests::test_resolve_model_cheapest_among_specialized ... ok
[INFO] [stdout] test broker::worker::tests::test_record_request_latency_ema ... ok
[INFO] [stdout] test broker::worker::tests::test_reregister_updates_model_index ... ok
[INFO] [stdout] test broker::worker::tests::test_workers_serving_specialized_matches_only_its_model ... ok
[INFO] [stdout] test broker::worker::tests::test_workers_serving_unions_specialized_and_general ... ok
[INFO] [stdout] test broker::worker::tests::test_resolve_model_general_fallback_cheapest ... ok
[INFO] [stdout] test broker::worker_quic::tests::network_roundtrip ... ignored
[INFO] [stdout] test broker::worker::tests::test_resolve_model_prefers_specialized_over_general ... ok
[INFO] [stdout] test broker::worker::tests::test_resolve_model_no_provider_when_no_healthy_candidate ... ok
[INFO] [stdout] test broker::worker::tests::worker_zc_uri_and_source_node_default ... ok
[INFO] [stdout] test broker::worker_quic::tests::parse_uri_default_port ... ok
[INFO] [stdout] test broker::worker::tests::worker_zc_uri_is_key_derived_and_collision_free ... ok
[INFO] [stdout] test broker::worker_quic::tests::parse_uri_ok ... ok
[INFO] [stdout] test broker::worker_quic::tests::parse_uri_rejects_http ... ok
[INFO] [stdout] test broker::worker_quic::tests::parse_uri_strips_trailing_path ... ok
[INFO] [stdout] test broker_target_tests::only_this_machine_counts_as_a_loopback_broker ... ok
[INFO] [stdout] test brokers_cli_tests::brokers_output_is_ip_free ... ok
[INFO] [stdout] test common::panic_fix_tests::profile_request_value_escapes_special_chars ... ok
[INFO] [stdout] test common::panic_fix_tests::context_returns_err_when_config_missing ... ok
[INFO] [stdout] test credentials::tests::parse_strips_export_prefix ... ok
[INFO] [stdout] test broker::worker::tests::test_workers_serving_general_matches_any_model ... ok
[INFO] [stdout] test broker_target_tests::only_a_broker_that_never_answered_is_unreachable ... ok
[INFO] [stdout] test credentials::tests::dir_never_falls_back_outside_the_temp_dir_in_unit_tests ... ok
[INFO] [stdout] test credentials::tests::parse_prefers_env_else_file ... ok
[INFO] [stdout] test dataset::tests::a_bare_uuid_is_accepted_too ... ok
[INFO] [stdout] test dataset::tests::a_corrupted_download_is_rejected ... ok
[INFO] [stdout] test dataset::tests::a_dangling_output_flag_is_an_error ... ok
[INFO] [stdout] test dataset::tests::a_matching_hash_verifies ... ok
[INFO] [stdout] test dataset::tests::a_missing_reference_is_an_error_not_a_download_of_nothing ... ok
[INFO] [stdout] test credentials::tests::staging_points_at_stg_api_not_the_retired_stg_my ... ok
[INFO] [stdout] test dataset::tests::a_path_that_is_only_dots_yields_nothing_to_write ... ok
[INFO] [stdout] test dataset::tests::a_body_without_files_is_an_error ... ok
[INFO] [stdout] test credentials::tests::unit_tests_swap_a_real_home_for_a_scratch_one ... ok
[INFO] [stdout] test dataset::tests::a_nested_path_lands_under_the_output_directory ... ok
[INFO] [stdout] test dataset::tests::a_named_reference_resolves_through_the_resolve_route ... ok
[INFO] [stdout] test dataset::tests::a_pinned_digest_survives_into_the_resolve_ref ... ok
[INFO] [stdout] test dataset::tests::an_absolute_path_is_reparented_not_honoured ... ok
[INFO] [stdout] test dataset::tests::an_uppercase_published_hash_still_matches ... ok
[INFO] [stdout] test dataset::tests::files_are_read_out_of_a_version_body ... ok
[INFO] [stdout] test dataset::tests::help_is_not_an_error ... ok
[INFO] [stdout] test dataset::tests::nonsense_is_rejected_with_the_expected_shapes_named ... ok
[INFO] [stdout] test dataset::tests::an_unknown_subcommand_is_refused ... ok
[INFO] [stdout] test dataset::tests::a_traversing_path_cannot_climb_out ... ok
[INFO] [stdout] test dataset::tests::parses_a_reference_with_an_output_directory ... ok
[INFO] [stdout] test dataset::tests::a_uuid_reference_never_goes_to_resolve ... ok
[INFO] [stdout] test dataset::tests::an_api_url_flag_overrides_the_default ... ok
[INFO] [stdout] test dataset::tests::an_unknown_flag_is_refused_rather_than_ignored ... ok
[INFO] [stdout] test enroll::tests::decide_join_maps_statuses ... ok
[INFO] [stdout] test enroll::tests::decide_mint_maps_statuses ... ok
[INFO] [stdout] test enroll::tests::join_token_format ... ok
[INFO] [stdout] test dataset::tests::sha256_matches_a_known_vector ... ok
[INFO] [stdout] test dataset::tests::the_404_message_says_private_datasets_are_out_of_reach ... ok
[INFO] [stdout] test infer::tests::build_infer_body_with_system_and_max_tokens ... ok
[INFO] [stdout] test infer::tests::build_infer_body_without_system_or_max_tokens ... ok
[INFO] [stdout] test infer::tests::format_infer_error_falls_back_to_raw_body ... ok
[INFO] [stdout] test infer::tests::format_infer_output_defaults_on_missing_fields ... ok
[INFO] [stdout] test infer::tests::format_infer_error_extracts_error_field ... ok
[INFO] [stdout] test infer::tests::format_infer_output_renders_content_and_usage ... ok
[INFO] [stdout] test infer::tests::parses_full_infer_args ... ok
[INFO] [stdout] test infer::tests::parses_minimal_infer_args ... ok
[INFO] [stdout] test infer::tests::rejects_invalid_model_uri ... ok
[INFO] [stdout] test infer::tests::parses_chat_args ... ok
[INFO] [stdout] test infer::tests::rejects_missing_prompt ... ok
[INFO] [stdout] test infer::tests::rejects_missing_model ... ok
[INFO] [stdout] test init::tests::approval_says_when_the_hub_minted_a_device_key ... ok
[INFO] [stdout] test exec::tests::run_reports_error_on_missing_binary ... ok
[INFO] [stdout] test enroll::tests::join_end_to_end_writes_credentials ... ok
[INFO] [stdout] test init::tests::blank_key_is_not_signed_in ... ok
[INFO] [stdout] test init::tests::decision_maps_statuses ... ok
[INFO] [stdout] test init::tests::device_name_clamp_passes_short_names_through ... ok
[INFO] [stdout] test init::tests::device_name_clamp_defaults_empty_or_blank_to_zc_cli ... ok
[INFO] [stdout] test init::tests::login_args_force_and_no_connect ... ok
[INFO] [stdout] test init::tests::login_args_help_long_flag ... ok
[INFO] [stdout] test init::tests::login_args_help_short_flag ... ok
[INFO] [stdout] test init::tests::login_args_plain_sign_in_has_no_flags ... ok
[INFO] [stdout] test init::tests::device_name_clamp_truncates_multibyte_chars_not_bytes ... ok
[INFO] [stdout] test exec::tests::run_executes_argv_without_a_shell ... ok
[INFO] [stdout] test init::tests::login_args_staging_flag ... ok
[INFO] [stdout] test init::tests::login_creates_the_node_key_when_not_root ... ok
[INFO] [stdout] test init::tests::force_signs_in_again ... ok
[INFO] [stdout] test init::tests::login_as_root_creates_no_node_key ... ok
[INFO] [stdout] test init::tests::node_key_step_matrix ... ok
[INFO] [stdout] test init::tests::login_leaves_an_existing_node_key_alone ... ok
[INFO] [stdout] test init::tests::post_sign_in_default_connects_the_mesh ... ok
[INFO] [stdout] test init::tests::post_sign_in_no_connect_skips_the_mesh ... ok
[INFO] [stdout] test init::tests::start_sends_this_macs_device_name ... ok
[INFO] [stdout] test init::tests::no_connect_keeps_the_old_report_only_behaviour ... ok
[INFO] [stdout] test init::tests::already_signed_in_connects_the_mesh ... ok
[INFO] [stdout] test init::tests::no_key_signs_in ... ok
[INFO] [stdout] test broker::uri::tests::ip_forms_are_direct ... ok
[INFO] [stdout] test dataset::tests::the_reference_is_encoded_for_a_query_string ... ok
[INFO] [stdout] test integration_tests::integration::agent_it::device_price_fans_out_over_http_and_seeds_a_new_row ... ok
[INFO] [stdout] test integration_tests::integration::retry_does_not_retry_non_transient ... ok
[INFO] [stdout] test integration_tests::integration::free_port_hands_out_unique_ports ... ok
[INFO] [stdout] test integration_tests::integration::retry_gives_up_after_attempts ... ok
[INFO] [stdout] test integration_tests::integration::retry_returns_ok_after_transient_failures ... ok
[INFO] [stdout] test integration_tests::integration::test_api_key_format_zk_user_hex_resolves_user_id ... ok
[INFO] [stdout] test integration_tests::integration::test_api_key_invalid_format_rejected ... ok
[INFO] [stdout] test integration_tests::integration::test_api_mode_credit_cycle_uses_local_only ... ok
[INFO] [stdout] test integration_tests::integration::test_api_mode_skips_pg_pool_creation ... ok
[INFO] [stdout] test integration_tests::integration::test_api_mode_wal_recovery_cancel_uses_local_fallback ... ok
[INFO] [stdout] test integration_tests::integration::test_api_mode_wal_recovery_commit_uses_local_fallback ... ok
[INFO] [stdout] test integration_tests::integration::test_add_credits_and_read_balance ... ok
[INFO] [stdout] test integration_tests::integration::test_broker_state_local_mode_flag ... ok
[INFO] [stdout] test integration_tests::integration::test_budget_credits_derives_correct_timeout_and_reservation ... ok
[INFO] [stdout] test integration_tests::integration::test_concurrent_reservations_no_overdraft ... ok
[INFO] [stdout] test integration_tests::integration::test_cost_calculation_price_consistency ... ok
[INFO] [stdout] test integration_tests::integration::test_async_execute_route_round_trips_worker_response ... ok
[INFO] [stdout] test broker::wal::tests::test_flush_worker_persists_without_manual_flush ... ok
[INFO] [stdout] test integration_tests::integration::test_credits_endpoint_returns_balance_status ... ok
[INFO] [stdout] test integration_tests::integration::test_execute_insufficient_credits_rejected ... ok
[INFO] [stdout] test integration_tests::integration::test_execute_no_auth_returns_unauthorized_when_local_mode_disabled ... ok
[INFO] [stdout] test integration_tests::integration::test_execute_local_mode_no_worker_returns_no_workers ... ok
[INFO] [stdout] test integration_tests::integration::test_flush_per_item_results_marks_only_durable_committed ... ok
[INFO] [stdout] test integration_tests::integration::test_is_local_worker_all_local_in_local_mode ... ok
[INFO] [stdout] test integration_tests::integration::test_execute_negative_budget_credits_rejected ... ok
[INFO] [stdout] test integration_tests::integration::test_is_local_worker_comprehensive ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_commit_caps_actual_to_reserved_range ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_add_credits_accumulates ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_cancel_restores_full_balance ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_commit_caps_actual_to_reserved_range ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_fallback_full_cycle ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_reserve_commit_refunds_difference ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_reserve_insufficient_rejects ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_local_reserve_rejects_non_finite_and_negative ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_reserve_loads_absent_local_credits_key ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_reserve_rejects_non_finite_and_negative ... ok
[INFO] [stdout] test integration_tests::integration::test_ledger_unknown_balance_is_not_insufficient_credits ... ok
[INFO] [stdout] test integration_tests::integration::test_is_local_worker_localhost ... ok
[INFO] [stdout] test integration_tests::integration::test_multi_window_rate_limits_enforced_together ... ok
[INFO] [stdout] test integration_tests::integration::test_health_check_no_auth_required ... ok
[INFO] [stdout] test integration_tests::integration::test_local_mode_mock_worker_execute_no_credits_charged ... ok
[INFO] [stdout] test integration_tests::integration::test_non_api_mode_attempts_pg_connection ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_authority_deterministic_with_two_brokers ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_authority_distribution_two_brokers ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_authority_is_deterministic ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_authority_peer_url_stable ... ok
[INFO] [stdout] test broker::server::forward_routing_tests::a_forward_without_a_caller_timeout_gives_up_instead_of_hanging ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_local_reserve_commit_balance_consistency ... ok
[INFO] [stdout] test integration_tests::integration::test_multiple_topups_accumulate ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_mesh_fibonacci_500_api ... ok
[INFO] [stdout] test broker::server::forward_routing_tests::a_sync_retry_without_a_caller_timeout_gives_up_instead_of_hanging ... ok
[INFO] [stdout] test integration_tests::integration::test_multiple_workers_registered ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_dispatch_rejects_insufficient_credits_before_dispatch ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_cancel_refunds_via_http ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_credit_surface_rejects_any_key_when_none_configured ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_health_accessible_without_key ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_credit_surface_fail_closed_without_key ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_health_rejects_wrong_key ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_reserve_insufficient_returns_402 ... ok
[INFO] [stdout] test integration_tests::integration::test_prefetched_balance_status_transitions ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_reserve_commit_cycle_via_http ... ok
[INFO] [stdout] test agent::supervisor::tests::adoption_needs_a_live_pid_with_the_same_start_time ... ok
[INFO] [stdout] test integration_tests::integration::test_quic_throughput_benchmark ... ok
[INFO] [stdout] test integration_tests::integration::test_rate_limit_per_second_blocks_excess_requests ... ok
[INFO] [stdout] test integration_tests::integration::test_reconciliation_needed_after_staleness ... ok
[INFO] [stdout] test integration_tests::integration::test_peer_workers_exports_own_workers_never_peer_synced_ones ... ok
[INFO] [stdout] test integration_tests::integration::agent_it::agent_serves_a_summary_merged_from_the_hub_and_its_broker ... ok
[INFO] [stdout] test integration_tests::integration::test_price_estimate_no_workers_returns_error ... ok
[INFO] [stdout] test integration_tests::integration::test_reserve_uses_authoritative_balance_as_fallback ... ok
[INFO] [stdout] test integration_tests::integration::test_peers_requires_key_when_configured ... ok
[INFO] [stdout] test agent::supervisor::tests::an_adopted_broker_on_an_unrelayed_port_restarts_on_the_proxy_route ... ok
[INFO] [stdout] test agent::supervisor::tests::killpg_reaches_the_whole_process_group ... ok
[INFO] [stdout] test integration_tests::integration::test_round_robin_even_distribution ... ok
[INFO] [stdout] test integration_tests::integration::test_register_worker_appears_in_list ... ok
[INFO] [stdout] test integration_tests::integration::test_price_estimate_with_workers ... ok
[INFO] [stdout] test integration_tests::integration::test_remote_mode_requires_bearer_auth ... ok
[INFO] [stdout] test integration_tests::integration::test_standalone_billing_cancel_full_refund ... ok
[INFO] [stdout] test integration_tests::integration::test_stale_worker_marked_unhealthy ... ok
[INFO] [stdout] test integration_tests::integration::test_standalone_billing_cycle_reserve_commit ... ok
[INFO] [stdout] test integration_tests::integration::test_standalone_billing_insufficient_credits ... ok
[INFO] [stdout] test integration_tests::integration::test_transaction_buffer_balance_snapshots ... ok
[INFO] [stdout] test integration_tests::integration::test_two_broker_balance_sheet_consistency ... ok
[INFO] [stdout] test integration_tests::integration::test_transaction_buffer_push_and_drain ... ok
[INFO] [stdout] test integration_tests::integration::test_retry_failure_then_new_healthy_worker_succeeds ... ok
[INFO] [stdout] test integration_tests::integration::test_retry_exhausts_all_workers_returns_503 ... ok
[INFO] [stdout] test integration_tests::integration::test_scenario_register_worker_and_verify_price ... ok
[INFO] [stdout] test integration_tests::integration::test_remote_mode_enforces_credits_for_non_local_worker ... ok
[INFO] [stdout] test integration_tests::integration::test_scenario_add_credits_then_execute_path ... ok
[INFO] [stdout] test integration_tests::integration::test_wal_proof_of_execution_full_lifecycle ... ok
[INFO] [stdout] test integration_tests::integration::test_wal_recovery_cancels_reserved_entries ... ok
[INFO] [stdout] test broker::deploy::reconcile::tests::drive_health_failure_rolls_back_to_previous_container ... ok
[INFO] [stdout] test integration_tests::integration::test_two_phase_commit_unknown_rejects ... ok
[INFO] [stdout] test integration_tests::integration::test_wal_recovery_does_not_double_credit_committed_earn ... ok
[INFO] [stdout] test integration_tests::integration::test_wal_recovery_cancels_stale_reservations ... ok
[INFO] [stdout] test integration_tests::integration::test_wal_recovery_commits_executed_entries ... ok
[INFO] [stdout] test integration_tests::integration::test_wal_recovery_replays_unflushed_earn ... ok
[INFO] [stdout] test integration_tests::integration::test_two_phase_endpoints_require_peer_key ... ok
[INFO] [stdout] test json_listing_tests::absent_json_flag_leaves_args_untouched ... ok
[INFO] [stdout] test json_listing_tests::detects_and_strips_json_flag_before_positional_args ... ok
[INFO] [stdout] test json_listing_tests::detects_and_strips_trailing_json_flag ... ok
[INFO] [stdout] test json_listing_tests::worker_listing_json_carries_price_and_capability_fields ... ok
[INFO] [stdout] test mesh_dir::tests::fingerprint_shape ... ok
[INFO] [stdout] test mesh_dir::tests::parses_roster_rows_into_fingerprints_and_endpoints ... ok
[INFO] [stdout] test integration_tests::integration::test_retry_marks_unreachable_workers_unhealthy ... ok
[INFO] [stdout] test mesh_dir::tests::probe_accepts_only_a_zakuro_broker_health_body ... ok
[INFO] [stdout] test mesh_dir::tests::probe_marks_endpointless_nodes_unreachable_without_dialing ... ok
[INFO] [stdout] test mesh_dir::tests::render_is_ip_free ... ok
[INFO] [stdout] test model_uri::address_tests::a_three_segment_path_is_not_an_address ... ok
[INFO] [stdout] test model_uri::address_tests::empty_segments_are_rejected ... ok
[INFO] [stdout] test model_uri::address_tests::a_short_digest_is_rejected_rather_than_truncated ... ok
[INFO] [stdout] test model_uri::address_tests::owner_name_form ... ok
[INFO] [stdout] test model_uri::address_tests::node_and_worker_addresses_are_still_not_models ... ok
[INFO] [stdout] test model_uri::address_tests::owner_name_pinned ... ok
[INFO] [stdout] test model_uri::address_tests::round_trips_through_a_ref_string ... ok
[INFO] [stdout] test model_uri::resolve_tests::a_uuid_address_needs_no_network ... ok
[INFO] [stdout] test model_uri::address_tests::uuid_form_needs_no_lookup ... ok
[INFO] [stdout] test integration_tests::integration::test_unregister_worker_removes_from_list ... ok
[INFO] [stdout] test model_uri::tests::bare_uuid ... ok
[INFO] [stdout] test model_uri::resolve_tests::leaves_unreserved_characters_alone ... ok
[INFO] [stdout] test model_uri::resolve_tests::encodes_the_reference_for_a_query_string ... ok
[INFO] [stdout] test model_uri::tests::host_uri_rejected ... ok
[INFO] [stdout] test model_uri::tests::empty_string_rejected ... ok
[INFO] [stdout] test model_uri::tests::uppercase_normalizes_to_lowercase ... ok
[INFO] [stdout] test model_uri::tests::worker_uri_rejected ... ok
[INFO] [stdout] test model_uri::tests::node_uri_rejected ... ok
[INFO] [stdout] test model_uri::tests::zc_prefixed_uuid ... ok
[INFO] [stdout] test price_command_tests::a_form_that_would_clear_or_mangle_a_price_is_refused ... ok
[INFO] [stdout] test price_command_tests::each_form_maps_to_one_command ... ok
[INFO] [stdout] test serve::tests::download_url_construction ... ok
[INFO] [stdout] test model_uri::tests::zc_model_prefixed_uuid ... ok
[INFO] [stdout] test serve::tests::heartbeat_loop_never_sends_if_already_stopped ... ok
[INFO] [stdout] test price_arg_tests::a_price_argument_must_be_a_finite_number ... ok
[INFO] [stdout] test serve::tests::heartbeat_interval_is_well_under_broker_worker_timeout ... ok
[INFO] [stdout] test serve::tests::parses_advertise_flag ... ok
[INFO] [stdout] test serve::tests::parses_general_flag_alone ... ok
[INFO] [stdout] test serve::tests::parses_multiple_models_with_price_and_port ... ok
[INFO] [stdout] test serve::tests::parses_api_url_override ... ok
[INFO] [stdout] test serve::tests::parses_single_specialized_model ... ok
[INFO] [stdout] test serve::tests::rejects_missing_price_value ... ok
[INFO] [stdout] test serve::tests::rejects_garbage_model_address ... ok
[INFO] [stdout] test serve::tests::rejects_no_models_and_no_general ... ok
[INFO] [stdout] test serve::tests::resolve_model_file_errors_without_gguf ... ok
[INFO] [stdout] test serve::tests::resolve_model_file_errors_without_latest_version ... ok
[INFO] [stdout] test serve::tests::select_gguf_file_none_when_absent ... ok
[INFO] [stdout] test serve::tests::select_gguf_file_picks_the_gguf_among_others ... ok
[INFO] [stdout] test serve::tests::resolve_model_file_from_stubbed_json ... ok
[INFO] [stdout] test serve::tests::worker_registration_for_specialized_model ... ok
[INFO] [stdout] test serve::tests::worker_registration_general_uses_wildcard ... ok
[INFO] [stdout] test serve::tests::worker_uri_bare_host_gets_scheme_and_port ... ok
[INFO] [stdout] test serve::tests::worker_uri_defaults_to_loopback ... ok
[INFO] [stdout] test serve::tests::worker_uri_keeps_explicit_scheme ... ok
[INFO] [stdout] test serve::tests::heartbeat_loop_sends_once_per_interval_until_stopped ... ok
[INFO] [stdout] test serve::tests::send_heartbeat_builds_dedicated_heartbeat_payload ... ok
[INFO] [stdout] test serve_general::tests::failed_readiness_kills_the_spawn_and_errors ... ok
[INFO] [stdout] test serve_general::tests::model_uuid_accepted_in_all_spellings ... ok
[INFO] [stdout] test serve_general::tests::dead_backend_is_respawned_not_proxied_into ... ok
[INFO] [stdout] test serve_general::tests::second_request_reuses_the_resident_server ... ok
[INFO] [stdout] test up::tests::an_invalid_env_setting_falls_through_to_the_file_setting ... ok
[INFO] [stdout] test up::tests::an_invalid_setting_produces_the_expected_detail_text ... ok
[INFO] [stdout] test up::tests::an_operator_host_or_caller_auth_is_left_alone ... ok
[INFO] [stdout] test up::tests::both_settings_invalid_falls_through_to_the_zc_dir ... ok
[INFO] [stdout] test serve_general::tests::lru_eviction_at_the_cap ... ok
[INFO] [stdout] test up::tests::a_worker_with_no_caller_auth_binds_loopback ... ok
[INFO] [stdout] test up::tests::legacy_zakuro_dir_candidates_from_env_orders_cwd_dev_path_then_home ... ok
[INFO] [stdout] test up::tests::env_var_wins_when_valid ... ok
[INFO] [stdout] test up::tests::nothing_found_and_no_setting_given_has_no_detail ... ok
[INFO] [stdout] test up::tests::nothing_found_reports_the_first_invalid_setting ... ok
[INFO] [stdout] test up::tests::worker_argv_is_the_python_entrypoint ... ok
[INFO] [stdout] test up::tests::worker_name_is_fp8_dash_index ... ok
[INFO] [stdout] test up::tests::two_macs_never_share_a_worker_name ... ok
[INFO] [stdout] test update::tests::a_token_becomes_an_authorization_header_on_github_requests_only ... ok
[INFO] [stdout] test integration_tests::integration::test_user_balances_are_independent ... ok
[INFO] [stdout] test update::tests::asset_selection_falls_back_to_the_browser_download_url ... ok
[INFO] [stdout] test update::tests::asset_selection_prefers_the_api_url_with_octet_stream ... ok
[INFO] [stdout] test update::tests::parse_mode_default_is_prebuilt_release ... ok
[INFO] [stdout] test update::tests::parse_mode_from_source_among_other_args ... ok
[INFO] [stdout] test update::tests::parse_mode_from_source_flag_selects_source_build ... ok
[INFO] [stdout] test update::tests::parse_mode_other_flags_still_prebuilt_release ... ok
[INFO] [stdout] test update::tests::resolve_token_falls_back_to_gh_pat ... ok
[INFO] [stdout] test update::tests::resolve_token_falls_back_to_github_token ... ok
[INFO] [stdout] test update::tests::resolve_token_none_found ... ok
[INFO] [stdout] test update::tests::resolve_token_prefers_gh ... ok
[INFO] [stdout] test update::tests::resolve_token_skips_blank_values ... ok
[INFO] [stdout] test integration_tests::integration::test_two_phase_offer_reserves_without_executing ... ok
[INFO] [stdout] test up::tests::legacy_candidates_are_tried_in_the_given_order ... ok
[INFO] [stdout] test update::tests::append_line_once_is_idempotent ... ok
[INFO] [stdout] test update::tests::the_token_goes_to_api_github_com_only ... ok
[INFO] [stdout] test update::tests::with_a_token_a_404_says_it_may_lack_access_or_there_is_no_release ... ok
[INFO] [stdout] test update::tests::without_a_token_a_404_says_the_releases_are_private ... ok
[INFO] [stdout] test vpn::connector::tests::auto_prefers_native_then_docker ... ok
[INFO] [stdout] test vpn::connector::tests::forced_backends_require_availability ... ok
[INFO] [stdout] test vpn::docker::tests::a_connection_rebuilt_from_the_labels_records_the_relay ... ok
[INFO] [stdout] test vpn::docker::tests::a_failed_bringup_says_why ... ok
[INFO] [stdout] test vpn::docker::tests::docker_backend_is_unavailable_in_unit_tests ... ok
[INFO] [stdout] test vpn::docker::tests::docker_is_refused_in_unit_tests ... ok
[INFO] [stdout] test vpn::docker::tests::labels_parse_the_node_and_the_relay_version ... ok
[INFO] [stdout] test vpn::docker::tests::mode_labels_roundtrip ... ok
[INFO] [stdout] test vpn::docker::tests::mode_selection ... ok
[INFO] [stdout] test vpn::docker::tests::labels_from_an_older_sidecar_have_no_node ... ok
[INFO] [stdout] test vpn::docker::tests::node_label_names_the_fingerprint_or_shared ... ok
[INFO] [stdout] test vpn::docker::tests::parses_latest_handshakes ... ok
[INFO] [stdout] test vpn::docker::tests::picks_a_free_proxy_port_in_range ... ok
[INFO] [stdout] test vpn::docker::tests::proxy_run_args_name_the_sidecar_and_end_with_the_script ... ok
[INFO] [stdout] test vpn::docker::tests::proxy_run_args_publish_only_the_connect_proxy ... ok
[INFO] [stdout] test update::tests::the_download_follows_the_redirect_without_the_token ... ok
[INFO] [stdout] test vpn::docker::tests::proxy_run_args_reach_the_host_through_host_gateway ... ok
[INFO] [stdout] test vpn::docker::tests::proxy_run_args_stamp_the_labels_status_and_connect_read ... ok
[INFO] [stdout] test update::tests::the_download_gets_300_s_and_the_api_call_30_s ... ok
[INFO] [stdout] test vpn::docker::tests::proxy_start_script_relays_9000_through_9010_after_the_tunnel_is_up ... ok
[INFO] [stdout] test vpn::docker::tests::proxy_start_script_stops_before_the_tunnel_without_socat ... ok
[INFO] [stdout] test vpn::loopback_proxy_tests::a_target_on_this_machine_is_recognised ... ok
[INFO] [stdout] test vpn::loopback_proxy_tests::only_a_mesh_target_goes_through_the_sidecar ... ok
[INFO] [stdout] test vpn::native::tests::mesh_ip_agrees_with_discovery_get_mesh_ip_in_the_ambient_environment ... ok
[INFO] [stdout] test vpn::native::tests::native_connect_is_refused_in_unit_tests ... ok
[INFO] [stdout] test vpn::native::tests::wg_quick_is_refused_in_unit_tests ... ok
[INFO] [stdout] test vpn::native::tests::mesh_ip_agrees_with_discovery_get_mesh_ip_under_env_override ... ok
[INFO] [stdout] test vpn::profile::tests::conf_pins_a_safe_mtu ... ok
[INFO] [stdout] test vpn::profile::tests::debug_redacts_secrets ... ok
[INFO] [stdout] test vpn::profile::tests::fetch_profile_sources ... ok
[INFO] [stdout] test vpn::profile::tests::device_fingerprint_in_reads_only_never_creates ... ok
[INFO] [stdout] test update::cargo_invocation_tests::rustup_invocation_puts_cargo_after_run_stable ... ok
[INFO] [stdout] test vpn::profile::tests::a_hub_that_echoes_the_fingerprint_marks_the_profile_per_device ... ok
[INFO] [stdout] test vpn::profile::tests::fetch_without_a_node_key_sends_no_header_and_keeps_no_echo ... ok
[INFO] [stdout] test vpn::profile::tests::mtu_is_overridable_within_sane_bounds ... ok
[INFO] [stdout] test vpn::profile::tests::mesh_subnet_falls_back_to_allowed_ips ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_bad_preshared_key ... ok
[INFO] [stdout] test vpn::profile::tests::fetch_sends_this_devices_node_fingerprint ... ok
[INFO] [stdout] test integration_tests::integration::test_worker_heartbeat_accepted ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_endpoint_without_port ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_address_without_cidr ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_leading_whitespace_in_address ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_newline_injection_in_private_key ... ok
[INFO] [stdout] test vpn::profile::tests::parses_and_renders_conf ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_cr_injection_in_endpoint ... ok
[INFO] [stdout] test vpn::profile::tests::valid_profile_renders_ok ... ok
[INFO] [stdout] test integration_tests::integration::test_worker_list_empty_on_fresh_broker ... ok
[INFO] [stdout] test vpn::state::tests::save_load_clear_roundtrip ... ok
[INFO] [stdout] test integration_tests::integration::test_worker_price_affects_estimate ... ok
[INFO] [stdout] test vpn::tests::a_hostnet_sidecar_still_needs_this_devices_identity ... ok
[INFO] [stdout] test vpn::profile::tests::rejects_non_base64_key ... ok
[INFO] [stdout] test vpn::tests::a_host_tunnel_is_recorded_as_a_routable_host_connection ... ok
[INFO] [stdout] test vpn::state::tests::state_dir_prefers_the_override_then_home ... ok
[INFO] [stdout] test vpn::profile::tests::a_legacy_or_mismatched_answer_is_not_per_device ... ok
[INFO] [stdout] test vpn::state::tests::state_path_is_under_the_temp_dir_in_unit_tests ... ok
[INFO] [stdout] test vpn::tests::a_per_device_sidecar_is_kept_when_the_node_key_vanished ... ok
[INFO] [stdout] test vpn::tests::a_route_via_another_vpn_is_not_host ... ok
[INFO] [stdout] test vpn::tests::a_proxy_sidecar_without_the_relay_is_recreated ... ok
[INFO] [stdout] test vpn::tests::a_recorded_host_connection_follows_the_host_tunnel ... ok
[INFO] [stdout] test vpn::tests::a_current_sidecar_and_a_native_tunnel_are_reused ... ok
[INFO] [stdout] test vpn::tests::a_hostnet_sidecar_needs_no_relay ... ok
[INFO] [stdout] test vpn::tests::a_sidecar_from_before_per_device_identities_is_recreated ... ok
[INFO] [stdout] test vpn::tests::a_sidecar_with_another_devices_identity_is_recreated ... ok
[INFO] [stdout] test vpn::tests::a_shared_sidecar_is_recreated_from_the_profile_that_names_this_device ... ok
[INFO] [stdout] test vpn::tests::an_explicit_backend_skips_the_host_tunnel ... ok
[INFO] [stdout] test vpn::tests::an_explicit_backend_replaces_a_recorded_host_connection ... ok
[INFO] [stdout] test vpn::tests::a_sidecar_with_this_devices_identity_is_reused_without_asking_the_hub ... ok
[INFO] [stdout] test vpn::tests::a_proxy_route_without_the_relay_advertises_nothing ... ok
[INFO] [stdout] test vpn::tests::conf_renders_wg_quick_from_profile_file ... ok
[INFO] [stdout] test vpn::tests::connect_starts_fresh_with_nothing_up ... ok
[INFO] [stdout] test vpn::tests::a_shared_sidecar_without_the_relay_is_recreated_without_asking_the_hub ... ok
[INFO] [stdout] test vpn::tests::a_sidecar_whose_labels_cannot_be_read_is_recreated ... ok
[INFO] [stdout] test vpn::tests::a_shared_sidecar_is_kept_when_the_hub_cannot_be_asked ... ok
[INFO] [stdout] test vpn::tests::connect_prefers_a_host_tunnel_over_a_running_sidecar ... ok
[INFO] [stdout] test vpn::tests::ensure_ladder_reuse_host_reuse_proxy_then_connect ... ok
[INFO] [stdout] test vpn::tests::connection_info_proxy_roundtrip_and_default ... ok
[INFO] [stdout] test vpn::tests::disconnect_says_a_host_tunnel_is_only_forgotten ... ok
[INFO] [stdout] test vpn::tests::a_shared_sidecar_is_kept_while_the_hub_answers_the_shared_profile ... ok
[INFO] [stdout] test vpn::tests::connect_uses_a_host_tunnel_instead_of_starting_the_sidecar ... ok
[INFO] [stdout] test vpn::tests::host_ops_are_refused_in_unit_tests ... ok
[INFO] [stdout] test vpn::tests::local_mesh_env_overrides_keep_their_precedence ... ok
[INFO] [stdout] test vpn::tests::local_mesh_ignores_other_subnets_and_ipv6 ... ok
[INFO] [stdout] test vpn::tests::local_mesh_prefers_zakuro0_then_wg_names ... ok
[INFO] [stdout] test vpn::tests::local_mesh_is_found_by_address_on_a_utun ... ok
[INFO] [stdout] test vpn::tests::mesh_ip_detection ... ok
[INFO] [stdout] test vpn::tests::no_route_advertises_nothing ... ok
[INFO] [stdout] test vpn::tests::proxy_accepts_only_a_listening_address ... ok
[INFO] [stdout] test vpn::tests::route_none_without_a_tunnel ... ok
[INFO] [stdout] test vpn::tests::route_proxy_needs_a_live_connect_proxy ... ok
[INFO] [stdout] test vpn::tests::route_proxy_reports_a_sidecar_without_the_relay ... ok
[INFO] [stdout] test vpn::tests::the_connect_proxy_is_used_only_without_a_host_tunnel ... ok
[INFO] [stdout] test vpn::tests::parse_pref_reads_flags ... ok
[INFO] [stdout] test vpn::tests::relay_covers_the_agents_broker_range ... ok
[INFO] [stdout] test vpn::tests::route_host_beats_proxy ... ok
[INFO] [stdout] test vpn::tests::route_kinds_carry_the_summary_labels ... ok
[INFO] [stdout] test vpn::tests::the_host_path_prints_no_node_key_hint ... ok
[INFO] [stdout] test vpn::tests::the_host_route_advertises_the_host_address_on_any_port ... ok
[INFO] [stdout] test vpn::tests::the_proxy_route_advertises_the_container_address_only_inside_the_relay_range ... ok
[INFO] [stdout] test vpn::tests::with_a_node_key_a_shared_sidecar_asks_the_hub ... ok
[INFO] [stdout] test vpn::tests::zcs_own_native_tunnel_stays_native ... ok
[INFO] [stdout] test workers_table_tests::numbers_carry_no_digits_they_do_not_need ... ok
[INFO] [stdout] test workers_table_tests::every_row_lines_up_with_the_header ... ok
[INFO] [stdout] test vpn::tests::without_a_node_key_a_shared_hostnet_sidecar_is_reused ... ok
[INFO] [stdout] test vpn::tests::mesh_agent_uses_connect_proxy_when_state_has_one ... ok
[INFO] [stdout] test vpn::tests::without_a_node_key_a_shared_sidecar_is_current_and_the_hub_is_not_asked ... ok
[INFO] [stdout] test wire::tests::envelope_roundtrip_matches_zakuro_wire_canonical ... ok
[INFO] [stdout] test workers_table_tests::workers_are_listed_under_the_broker_that_owns_them ... ok
[INFO] [stdout] test integration_tests::integration::test_p2p_mesh_fibonacci_500 ... ok
[INFO] [stdout] test integration_tests::integration::body_over_cap_returns_413 ... ok
[INFO] [stdout] test integration_tests::integration::test_two_broker_round_robin_credit_accounting ... ok
[INFO] [stdout] test integration_tests::integration::agent_it::shutdown_signals_a_term_ignoring_worker_promptly_even_with_a_hanging_hub ... ok
[INFO] [stdout] test integration_tests::integration::agent_it::draining_a_worker_survives_discovery_rescans_and_stops_new_execute_calls ... ok
[INFO] [stdout] test integration_tests::integration::agent_it::scaling_two_to_one_drains_then_stops_the_highest_worker_and_pause_stops_all ... ok
[INFO] [stdout] test agent::supervisor::tests::a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it ... FAILED
[INFO] [stdout] test broker::server::dispatch_deadline_tests::preselected_offer_wait_is_bounded_by_dispatch_deadline_not_offer_tasks_310s ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- agent::supervisor::tests::a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'agent::supervisor::tests::a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it' (3354) panicked at src/agent/supervisor.rs:1863:9:
[INFO] [stdout] terminate_all must still finish off a group terminate() handed back
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d3bc5734c41 - std[70759c8f55707aa4]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d3bc5734c41 - std[70759c8f55707aa4]::backtrace_rs::backtrace::trace_unsynchronized::<std[70759c8f55707aa4]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d3bc5734c41 - std[70759c8f55707aa4]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d3bc5734c41 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d3bc574f90a - <core[df12db4294e9bfd3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d3bc574f90a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    6:     0x5d3bc573a7cc - core[df12db4294e9bfd3]::io::write::default_write_fmt::<alloc[2182bb758b4b3781]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:402:11
[INFO] [stdout]    7:     0x5d3bc573a7cc - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:335:13
[INFO] [stdout]    8:     0x5d3bc570a7e6 - <std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d3bc570a7e6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d3bc572a6e9 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d3bc4f85610 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   12:     0x5d3bc4f85610 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5d3bc572aa12 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   14:     0x5d3bc572aa12 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x5d3bc570a8c4 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:681:13
[INFO] [stdout]   16:     0x5d3bc5703099 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d3bc570ba4d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x5d3bc575012c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d3bc4d67a2b - a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it
[INFO] [stdout]                                at /opt/rustwide/workdir/src/agent/supervisor.rs:1863:9
[INFO] [stdout]   20:     0x5d3bc4d1bb33 - zc[6bd17afe0f33f12a]::agent::supervisor::tests::a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/agent/supervisor.rs:1795:80
[INFO] [stdout]   21:     0x5d3bc44eefc6 - <zc[6bd17afe0f33f12a]::agent::supervisor::tests::a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5d3bc4f788fb - <fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5d3bc4f788fb - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:733:18
[INFO] [stdout]   24:     0x5d3bc4f85f65 - test[9d35eded1c95d3be]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:74
[INFO] [stdout]   25:     0x5d3bc4f85f65 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x5d3bc4f85f65 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   27:     0x5d3bc4f85f65 - std[70759c8f55707aa4]::panicking::catch_unwind::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5d3bc4f85f65 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5d3bc4f85f65 - test[9d35eded1c95d3be]::run_test_in_process
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:27
[INFO] [stdout]   30:     0x5d3bc4f85f65 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:677:43
[INFO] [stdout]   31:     0x5d3bc4f7f824 - test[9d35eded1c95d3be]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:707:41
[INFO] [stdout]   32:     0x5d3bc4f7f824 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5d3bc4f890c2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   34:     0x5d3bc4f890c2 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x5d3bc4f890c2 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   36:     0x5d3bc4f890c2 - std[70759c8f55707aa4]::panicking::catch_unwind::<(), core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5d3bc4f890c2 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5d3bc4f890c2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   39:     0x5d3bc4f890c2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5d3bc57331a9 - <alloc[2182bb758b4b3781]::boxed::Box<dyn core[df12db4294e9bfd3]::ops::function::FnOnce<(), Output = ()> + core[df12db4294e9bfd3]::marker::Send> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2320:9
[INFO] [stdout]   41:     0x5d3bc57331a9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   42:     0x720810f21dfa - <unknown>
[INFO] [stdout]   43:     0x720810fb53d4 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     agent::supervisor::tests::a_stop_flag_set_mid_wait_hands_the_group_back_instead_of_sigkilling_it
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1120 passed; 1 failed; 6 ignored; 0 measured; 0 filtered out; finished in 30.90s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin zc`
[INFO] running `Command { std: "docker" "inspect" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa", kill_on_drop: false }`
[INFO] [stdout] 9a36063e9ccc9e7ab9428d6ff47ef6c14fc5dd92581ebec3b5b9761dbcc9fdaa
