[INFO] cloning repository https://github.com/k3-yamada/bonsai-agent [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/k3-yamada/bonsai-agent" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk3-yamada%2Fbonsai-agent", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk3-yamada%2Fbonsai-agent'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b3ca152291c3ad4cce1e3dfc05bc06f674dc0dee [INFO] testing k3-yamada/bonsai-agent against 1.95.0 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk3-yamada%2Fbonsai-agent" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/k3-yamada/bonsai-agent [INFO] finished tweaking git repo https://github.com/k3-yamada/bonsai-agent [INFO] tweaked toml for git repo https://github.com/k3-yamada/bonsai-agent written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/k3-yamada/bonsai-agent on toolchain 1.95.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/k3-yamada/bonsai-agent 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.117 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.117 [INFO] [stderr] Downloaded safetensors v0.7.0 [INFO] [stderr] Downloaded streaming-iterator v0.1.9 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.117 [INFO] [stderr] Downloaded zerofrom v0.1.7 [INFO] [stderr] Downloaded avif-serialize v0.8.8 [INFO] [stderr] Downloaded zerofrom-derive v0.1.7 [INFO] [stderr] Downloaded ravif v0.13.0 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.67 [INFO] [stderr] Downloaded litemap v0.8.2 [INFO] [stderr] Downloaded rgb v0.8.53 [INFO] [stderr] Downloaded portable-atomic-util v0.2.6 [INFO] [stderr] Downloaded zune-jpeg v0.5.15 [INFO] [stderr] Downloaded tiff v0.11.3 [INFO] [stderr] Downloaded libfuzzer-sys v0.4.12 [INFO] [stderr] Downloaded rusqlite v0.32.1 [INFO] [stderr] Downloaded tokenizers v0.22.2 [INFO] [stderr] Downloaded iri-string v0.7.12 [INFO] [stderr] Downloaded tree-sitter v0.26.8 [INFO] [stderr] Downloaded ndarray v0.17.2 [INFO] [stderr] Downloaded lzma-rust2 v0.15.7 [INFO] [stderr] Downloaded image v0.25.10 [INFO] [stderr] Downloaded tree-sitter-rust v0.24.2 [INFO] [stderr] Downloaded zerocopy-derive v0.8.48 [INFO] [stderr] Downloaded icu_properties_data v2.2.0 [INFO] [stderr] Downloaded zerocopy v0.8.48 [INFO] [stderr] Downloaded png v0.18.1 [INFO] [stderr] Downloaded fastembed v5.13.1 [INFO] [stderr] Downloaded zerovec v0.11.6 [INFO] [stderr] Downloaded hyper v1.9.0 [INFO] [stderr] Downloaded moxcms v0.8.1 [INFO] [stderr] Downloaded tree-sitter-go v0.25.0 [INFO] [stderr] Downloaded tree-sitter-javascript v0.25.0 [INFO] [stderr] Downloaded tree-sitter-python v0.25.0 [INFO] [stderr] Downloaded der v0.8.0 [INFO] [stderr] Downloaded zerotrie v0.2.4 [INFO] [stderr] Downloaded icu_normalizer v2.2.0 [INFO] [stderr] Downloaded icu_collections v2.2.0 [INFO] [stderr] Downloaded web-sys v0.3.94 [INFO] [stderr] Downloaded icu_locale_core v2.2.0 [INFO] [stderr] Downloaded writeable v0.6.3 [INFO] [stderr] Downloaded icu_properties v2.2.0 [INFO] [stderr] Downloaded hmac-sha256 v1.1.14 [INFO] [stderr] Downloaded libc v0.2.184 [INFO] [stderr] Downloaded tree-sitter-language v0.1.7 [INFO] [stderr] Downloaded icu_normalizer_data v2.2.0 [INFO] [stderr] Downloaded yoke-derive v0.8.2 [INFO] [stderr] Downloaded tree-sitter-typescript v0.23.2 [INFO] [stderr] Downloaded webpki-root-certs v1.0.6 [INFO] [stderr] Downloaded indexmap v2.13.1 [INFO] [stderr] Downloaded pxfm v0.1.28 [INFO] [stderr] Downloaded tinystr v0.8.3 [INFO] [stderr] Downloaded cc v1.2.59 [INFO] [stderr] Downloaded tokio v1.51.1 [INFO] [stderr] Downloaded js-sys v0.3.94 [INFO] [stderr] Downloaded potential_utf v0.1.5 [INFO] [stderr] Downloaded yoke v0.8.2 [INFO] [stderr] Downloaded zerovec-derive v0.11.3 [INFO] [stderr] Downloaded pem-rfc7468 v1.0.0 [INFO] [stderr] Downloaded wasm-bindgen v0.2.117 [INFO] [stderr] Downloaded icu_provider v2.2.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9304c24bcaf40b654f856de164f2f9f3844f93004a507ecb5a4347ca0ba450d3 [INFO] running `Command { std: "docker" "start" "-a" "9304c24bcaf40b654f856de164f2f9f3844f93004a507ecb5a4347ca0ba450d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9304c24bcaf40b654f856de164f2f9f3844f93004a507ecb5a4347ca0ba450d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9304c24bcaf40b654f856de164f2f9f3844f93004a507ecb5a4347ca0ba450d3", kill_on_drop: false }` [INFO] [stdout] 9304c24bcaf40b654f856de164f2f9f3844f93004a507ecb5a4347ca0ba450d3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 90205a6faf3986a6ee71b05441b30e914dc8774dca32f998c01b47ac832ad4ad [INFO] running `Command { std: "docker" "start" "-a" "90205a6faf3986a6ee71b05441b30e914dc8774dca32f998c01b47ac832ad4ad", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.184 [INFO] [stderr] Compiling itoa v1.0.18 [INFO] [stderr] Compiling tree-sitter-language v0.1.7 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling cc v1.2.59 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling writeable v0.6.3 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling litemap v0.8.2 [INFO] [stderr] Compiling icu_normalizer_data v2.2.0 [INFO] [stderr] Compiling icu_properties_data v2.2.0 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling indexmap v2.13.1 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling zerocopy v0.8.48 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling openssl-probe v0.2.1 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling schemars v0.8.22 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling iri-string v0.7.12 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling ureq-proto v0.6.0 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling openssl-sys v0.9.112 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling tree-sitter-rust v0.24.2 [INFO] [stderr] Compiling tokio v1.51.1 [INFO] [stderr] Compiling tree-sitter-javascript v0.25.0 [INFO] [stderr] Compiling tree-sitter-typescript v0.23.2 [INFO] [stderr] Compiling tree-sitter-go v0.25.0 [INFO] [stderr] Compiling tree-sitter-python v0.25.0 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling utf8-zero v0.8.1 [INFO] [stderr] Compiling streaming-iterator v0.1.9 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling dyn-clone v1.0.20 [INFO] [stderr] Compiling tree-sitter v0.26.8 [INFO] [stderr] Compiling uuid v1.23.0 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling hashbrown v0.14.5 [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 displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling schemars_derive v0.8.22 [INFO] [stderr] Compiling clap_derive v4.6.0 [INFO] [stderr] Compiling zerofrom v0.1.7 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling yoke v0.8.2 [INFO] [stderr] Compiling zerovec v0.11.6 [INFO] [stderr] Compiling zerotrie v0.2.4 [INFO] [stderr] Compiling hyper v1.9.0 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling clap v4.6.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 rustls-webpki v0.103.10 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling ureq v3.3.0 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling bonsai-agent v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 22s [INFO] running `Command { std: "docker" "inspect" "90205a6faf3986a6ee71b05441b30e914dc8774dca32f998c01b47ac832ad4ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "90205a6faf3986a6ee71b05441b30e914dc8774dca32f998c01b47ac832ad4ad", kill_on_drop: false }` [INFO] [stdout] 90205a6faf3986a6ee71b05441b30e914dc8774dca32f998c01b47ac832ad4ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fd99302c7c5a865de5ab0e1c523947cd76f4382f79c50b000de7692829bf7cfc [INFO] running `Command { std: "docker" "start" "-a" "fd99302c7c5a865de5ab0e1c523947cd76f4382f79c50b000de7692829bf7cfc", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling openssl v0.10.76 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling bonsai-agent v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: duplicated attribute [INFO] [stdout] --> src/agent/experiment.rs:1404:5 [INFO] [stdout] | [INFO] [stdout] 1404 | #[test] [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(duplicate_macro_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tools/mod.rs:802:13 [INFO] [stdout] | [INFO] [stdout] 802 | let mut reg = ToolRegistry::new(); [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] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 31.20s [INFO] running `Command { std: "docker" "inspect" "fd99302c7c5a865de5ab0e1c523947cd76f4382f79c50b000de7692829bf7cfc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fd99302c7c5a865de5ab0e1c523947cd76f4382f79c50b000de7692829bf7cfc", kill_on_drop: false }` [INFO] [stdout] fd99302c7c5a865de5ab0e1c523947cd76f4382f79c50b000de7692829bf7cfc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0792650b83586ed2d64e04b3430d935572f4a4e9e58d1426e06144ee2d8bba19 [INFO] running `Command { std: "docker" "start" "-a" "0792650b83586ed2d64e04b3430d935572f4a4e9e58d1426e06144ee2d8bba19", kill_on_drop: false }` [INFO] [stderr] warning: duplicated attribute [INFO] [stderr] --> src/agent/experiment.rs:1404:5 [INFO] [stderr] | [INFO] [stderr] 1404 | #[test] [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(duplicate_macro_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/tools/mod.rs:802:13 [INFO] [stderr] | [INFO] [stderr] 802 | let mut reg = ToolRegistry::new(); [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: `bonsai-agent` (lib test) generated 2 warnings (run `cargo fix --lib -p bonsai-agent --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bonsai_agent-f5ca206973eeca92) [INFO] [stdout] [INFO] [stdout] running 884 tests [INFO] [stdout] test agent::agent_loop::tests::t_check_invariants_low_success_rate ... ok [INFO] [stdout] test agent::agent_loop::tests::t_check_invariants_no_violations ... ok [INFO] [stdout] test agent::agent_loop::tests::t_loop_state_has_trial_summary ... ok [INFO] [stdout] test agent::agent_loop::tests::t_planning_step_contains_hypothesis ... ok [INFO] [stdout] test agent::agent_loop::tests::t_verification_checklist ... ok [INFO] [stdout] test agent::agent_loop::tests::test_agent_config_custom_advisor ... ok [INFO] [stdout] test agent::agent_loop::tests::test_agent_config_default_auto_checkpoint_enabled ... ok [INFO] [stdout] test agent::agent_loop::tests::test_agent_config_includes_advisor ... ok [INFO] [stdout] test agent::agent_loop::tests::test_before_step_abort_stops_loop ... ok [INFO] [stdout] test agent::agent_loop::tests::test_before_step_inject_adds_message ... ok [INFO] [stdout] test agent::agent_loop::tests::test_detect_task_complexity_complex ... ok [INFO] [stdout] test agent::agent_loop::tests::test_compute_output_hash_differs_for_different_content ... ok [INFO] [stdout] test agent::agent_loop::tests::t_replan_with_trial_summary ... ok [INFO] [stdout] test agent::agent_loop::tests::test_default_prompt_contains_plan_rule ... ok [INFO] [stdout] test agent::agent_loop::tests::test_detect_task_complexity_simple ... ok [INFO] [stdout] test agent::agent_loop::tests::test_file_read_is_read_only ... ok [INFO] [stdout] test agent::agent_loop::tests::test_handle_outcome_aborted_returns ... ok [INFO] [stdout] test agent::agent_loop::tests::test_handle_outcome_continue_returns_continue ... ok [INFO] [stdout] test agent::agent_loop::tests::test_handle_outcome_final_answer_returns ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inference_for_task_file_operation ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inference_for_task_research ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_planning_step_simple ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_planning_step_complex ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inference_for_task_general_unchanged ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_replan_on_stall_skips_on_progress ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_replan_on_stall_triggers_after_threshold ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_verification_step_injects ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_verification_step_respects_max_uses ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_verification_step_skips_first_iteration ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_verification_step_skips_verified ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_verification_step_skips_simple_task ... ok [INFO] [stdout] test agent::agent_loop::tests::test_load_soul_empty_file_is_none ... ok [INFO] [stdout] test agent::agent_loop::tests::test_load_soul_missing_is_none ... ok [INFO] [stdout] test agent::agent_loop::tests::test_load_soul_none_path ... ok [INFO] [stdout] test agent::agent_loop::tests::test_load_soul_from_explicit_path ... ok [INFO] [stdout] test agent::agent_loop::tests::test_execute_validated_calls_empty ... ok [INFO] [stdout] test agent::agent_loop::tests::test_loop_state_new ... ok [INFO] [stdout] test agent::agent_loop::tests::test_inject_replan_on_stall_respects_advisor_max_uses ... ok [INFO] [stdout] test agent::agent_loop::tests::test_no_timeout_by_default ... ok [INFO] [stdout] test agent::agent_loop::tests::test_repo_map_is_read_only ... ok [INFO] [stdout] test agent::agent_loop::tests::test_log_advisor_call_with_no_store ... ok [INFO] [stdout] test agent::agent_loop::tests::test_repomap_registered ... ok [INFO] [stdout] test agent::agent_loop::tests::test_resolve_advisor_prompt_local_when_no_endpoint ... ok [INFO] [stdout] test agent::agent_loop::tests::test_stall_detector_default_threshold ... ok [INFO] [stdout] test agent::agent_loop::tests::test_create_task_start_checkpoint_no_store ... ok [INFO] [stdout] test agent::agent_loop::tests::test_stall_detector_no_progress ... ok [INFO] [stdout] test agent::agent_loop::tests::test_stall_detector_resets_on_progress ... ok [INFO] [stdout] test agent::agent_loop::tests::test_stall_detector_same_output_hash ... ok [INFO] [stdout] test agent::agent_loop::tests::test_cancellation ... ok [INFO] [stdout] test agent::agent_loop::tests::test_task_timeout_triggers ... ok [INFO] [stdout] test agent::agent_loop::tests::test_max_iterations ... ok [INFO] [stdout] test agent::agent_loop::tests::test_direct_answer ... ok [INFO] [stdout] test agent::agent_loop::tests::test_single_tool_call ... ok [INFO] [stdout] test agent::agent_loop::tests::test_validated_call_read_only_flag ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_score_empty_expected ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_score_extra_calls ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_score_no_match ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_score_partial_match ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_score_perfect_match ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_composite_score ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_composite_with_extras ... ok [INFO] [stdout] test agent::benchmark::tests::t_trajectory_score_wrong_order ... ok [INFO] [stdout] test agent::benchmark::tests::test_benchmark_result_composite ... ok [INFO] [stdout] test agent::agent_loop::tests::test_loop_detection ... ok [INFO] [stdout] test agent::benchmark::tests::test_benchmark_result_empty ... ok [INFO] [stdout] test agent::benchmark::tests::test_code_gen_fizzbuzz_keywords ... ok [INFO] [stdout] test agent::benchmark::tests::test_code_gen_fizzbuzz_partial ... ok [INFO] [stdout] test agent::agent_loop::tests::test_tool_failure_recorded ... ok [INFO] [stdout] test agent::agent_loop::tests::test_create_task_start_checkpoint_with_store ... ok [INFO] [stdout] test agent::agent_loop::tests::t_inject_experience_context_empty_no_message ... ok [INFO] [stdout] test agent::agent_loop::tests::t_context_tags_consistent ... ok [INFO] [stdout] test agent::benchmark::tests::test_evaluate_actual_tools_matched ... ok [INFO] [stdout] test agent::benchmark::tests::test_default_tasks_count ... ok [INFO] [stdout] test agent::benchmark::tests::test_default_tasks_unique_ids ... ok [INFO] [stdout] test agent::benchmark::tests::test_evaluate_different_iterations_different_scores ... ok [INFO] [stdout] test agent::benchmark::tests::test_evaluate_task_response_all_keywords ... ok [INFO] [stdout] test agent::benchmark::tests::test_error_recovery_permission_with_error ... ok [INFO] [stdout] test agent::benchmark::tests::test_evaluate_task_response_keywords ... ok [INFO] [stdout] test agent::benchmark::tests::test_evaluate_task_response_missing_keywords ... ok [INFO] [stdout] test agent::benchmark::tests::test_expanded_tasks_count ... ok [INFO] [stdout] test agent::benchmark::tests::test_fizzbuzz_case_insensitive ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_run_task_score_all_pass ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_run_task_score_some_pass ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_run_variance_calculation ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_run_variance_nonzero ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_run_benchmark_result_composite ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_step_field_count_no_number ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_run_empty_scores ... ok [INFO] [stdout] test agent::benchmark::tests::test_code_gen_sort_keywords ... ok [INFO] [stdout] test agent::benchmark::tests::test_multi_step_field_count_with_number ... ok [INFO] [stdout] test agent::benchmark::tests::test_new_task_categories ... ok [INFO] [stdout] test agent::benchmark::tests::test_new_task_categories_expanded ... ok [INFO] [stdout] test agent::benchmark::tests::test_error_handling_no_error_keyword ... ok [INFO] [stdout] test agent::benchmark::tests::test_evaluate_task_response_with_tools ... ok [INFO] [stdout] test agent::benchmark::tests::test_error_handling_with_error_keyword ... ok [INFO] [stdout] test agent::benchmark::tests::test_task_score_over_budget ... ok [INFO] [stdout] test agent::benchmark::tests::test_new_tasks_exist_in_expanded_suite ... ok [INFO] [stdout] test agent::benchmark::tests::test_new_tasks_exist_in_suite ... ok [INFO] [stdout] test agent::benchmark::tests::test_pass_consecutive_k_interleaved ... ok [INFO] [stdout] test agent::benchmark::tests::test_pass_consecutive_k_streak ... ok [INFO] [stdout] test agent::benchmark::tests::test_reasoning_json_parse_correct ... ok [INFO] [stdout] test agent::benchmark::tests::test_summarize_long_enough ... ok [INFO] [stdout] test agent::benchmark::tests::test_summarize_too_short ... ok [INFO] [stdout] test agent::agent_loop::tests::test_log_advisor_call_writes_to_store ... ok [INFO] [stdout] test agent::checkpoint::tests::t_checkpoint_stats_rates ... ok [INFO] [stdout] test agent::benchmark::tests::test_task_score_zero_budget ... ok [INFO] [stdout] test agent::benchmark::tests::test_task_score_partial ... ok [INFO] [stdout] test agent::benchmark::tests::test_task_score_perfect ... ok [INFO] [stdout] test agent::benchmark::tests::test_task_score_zero ... ok [INFO] [stdout] test agent::agent_loop::tests::t_inject_experience_context_formats_correctly ... ok [INFO] [stdout] test agent::checkpoint::tests::t_rb_last ... ok [INFO] [stdout] test agent::checkpoint::tests::t_rb_err ... ok [INFO] [stdout] test agent::checkpoint::tests::t_create ... ok [INFO] [stdout] test agent::agent_loop::tests::test_unknown_tool_blocked ... ok [INFO] [stdout] test agent::checkpoint::tests::t_multi ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_last_outcome_assistant ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_last_outcome_fallback_to_tool ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_last_outcome_strips_think ... ok [INFO] [stdout] test agent::agent_loop::tests::test_apply_tool_result_records_graph_tool_usage ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_last_outcome_truncates ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_thinking_empty ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_last_outcome_empty ... ok [INFO] [stdout] test agent::compaction::tests::t_extract_thinking_summary ... ok [INFO] [stdout] test agent::compaction::tests::t_find_pairs ... ok [INFO] [stdout] test agent::agent_loop::tests::t_inject_experience_context_includes_insights ... ok [INFO] [stdout] test agent::checkpoint::tests::t_git ... ok [INFO] [stdout] test agent::compaction::tests::t_handoff_short_session_skipped ... ok [INFO] [stdout] test agent::compaction::tests::t_l0 ... ok [INFO] [stdout] test agent::compaction::tests::t_handoff_summary ... ok [INFO] [stdout] test agent::compaction::tests::t_l1_no_orphan ... ok [INFO] [stdout] test agent::compaction::tests::t_l2 ... ok [INFO] [stdout] test agent::compaction::tests::t_flush_no_store ... ok [INFO] [stdout] test agent::compaction::tests::t_l1_protect_boundary_pair ... ok [INFO] [stdout] test agent::compaction::tests::t_l1 ... ok [INFO] [stdout] test agent::compaction::tests::t_l3_handoff_includes_outcome ... ok [INFO] [stdout] test agent::compaction::tests::t_level2_preserves_thinking ... ok [INFO] [stdout] test agent::compaction::tests::t_l3 ... ok [INFO] [stdout] test agent::compaction::tests::t_pair_multiple ... ok [INFO] [stdout] test agent::compaction::tests::t_pair_none ... ok [INFO] [stdout] test agent::compaction::tests::t_score_importance_error ... ok [INFO] [stdout] test agent::compaction::tests::t_score_importance_system_context ... ok [INFO] [stdout] test agent::compaction::tests::t_score_importance_system_normal ... ok [INFO] [stdout] test agent::compaction::tests::t_score_importance_tool_call ... ok [INFO] [stdout] test agent::compaction::tests::t_score_importance_user ... ok [INFO] [stdout] test agent::compaction::tests::t_summarize_tool_usage_basic ... ok [INFO] [stdout] test agent::compaction::tests::t_l3_handoff_includes_tool_stats ... ok [INFO] [stdout] test agent::compaction::tests::t_l3_handoff_includes_unresolved ... ok [INFO] [stdout] test agent::compaction::tests::t_noop ... ok [INFO] [stdout] test agent::compaction::tests::t_tok ... ok [INFO] [stdout] test agent::compaction::tests::t_summarize_tool_usage_multiple_in_one_message ... ok [INFO] [stdout] test agent::compaction::tests::t_summarize_tool_usage_empty ... ok [INFO] [stdout] test agent::context_inject::tests::t_inject_vault_knowledge_with_rules ... ok [INFO] [stdout] test agent::context_inject::tests::t_load_soul_existing ... ok [INFO] [stdout] test agent::context_inject::tests::t_load_soul_none_path ... ok [INFO] [stdout] test agent::context_inject::tests::t_load_soul_nonexistent ... ok [INFO] [stdout] test agent::conversation::tests::test_message_system ... ok [INFO] [stdout] test agent::conversation::tests::test_message_tool ... ok [INFO] [stdout] test agent::conversation::tests::test_message_user ... ok [INFO] [stdout] test agent::conversation::tests::test_message_with_image ... ok [INFO] [stdout] test agent::conversation::tests::test_role_serialization ... ok [INFO] [stdout] test agent::conversation::tests::test_session_add_message ... ok [INFO] [stdout] test agent::conversation::tests::test_session_new ... ok [INFO] [stdout] test agent::agent_loop::tests::test_apply_tool_result_records_graph_error_pattern ... ok [INFO] [stdout] test agent::conversation::tests::test_tool_call_serialization ... ok [INFO] [stdout] test agent::error_recovery::tests::t_classify_env_failure_network ... ok [INFO] [stdout] test agent::error_recovery::tests::t_classify_env_failure_none ... ok [INFO] [stdout] test agent::error_recovery::tests::t_classify_env_failure_server ... ok [INFO] [stdout] test agent::context_inject::tests::t_inject_vault_knowledge_empty ... ok [INFO] [stdout] test agent::error_recovery::tests::t_format_structured_contains_sections ... ok [INFO] [stdout] test agent::error_recovery::tests::t_format_structured_empty_is_empty ... ok [INFO] [stdout] test agent::error_recovery::tests::t_structured_feedback_confidence_decreases_with_failures ... ok [INFO] [stdout] test agent::error_recovery::tests::t_structured_feedback_empty_trial ... ok [INFO] [stdout] test agent::error_recovery::tests::t_structured_feedback_from_trial_summary ... ok [INFO] [stdout] test agent::error_recovery::tests::t_structured_feedback_max_confidence_clamp ... ok [INFO] [stdout] test agent::error_recovery::tests::t_trial_summary_empty ... ok [INFO] [stdout] test agent::error_recovery::tests::t_structured_feedback_unique_tools_in_evaluation ... ok [INFO] [stdout] test agent::error_recovery::tests::t_trial_summary_max_entries ... ok [INFO] [stdout] test agent::error_recovery::tests::t_trial_summary_record ... ok [INFO] [stdout] test agent::error_recovery::tests::test_circuit_breaker_independent_tools ... ok [INFO] [stdout] test agent::error_recovery::tests::test_circuit_breaker_initially_available ... ok [INFO] [stdout] test agent::error_recovery::tests::test_circuit_breaker_success_resets ... ok [INFO] [stdout] test agent::error_recovery::tests::test_circuit_breaker_trips_after_threshold ... ok [INFO] [stdout] test agent::error_recovery::tests::test_continue_site_default ... ok [INFO] [stdout] test agent::error_recovery::tests::test_continue_site_different_failures ... ok [INFO] [stdout] test agent::error_recovery::tests::test_continue_site_stage1_retry ... ok [INFO] [stdout] test agent::error_recovery::tests::test_continue_site_stage2_replan ... ok [INFO] [stdout] test agent::error_recovery::tests::test_continue_site_stage3_safe_stop ... ok [INFO] [stdout] test agent::error_recovery::tests::test_continue_site_success_resets ... ok [INFO] [stdout] test agent::error_recovery::tests::test_decide_recovery_context_overflow ... ok [INFO] [stdout] test agent::error_recovery::tests::test_decide_recovery_server_disconnect ... ok [INFO] [stdout] test agent::error_recovery::tests::test_file_stuck_guard_give_up_at_6 ... ok [INFO] [stdout] test agent::error_recovery::tests::test_file_stuck_guard_no_failure ... ok [INFO] [stdout] test agent::error_recovery::tests::test_file_stuck_guard_nudge_at_3 ... ok [INFO] [stdout] test agent::error_recovery::tests::test_file_stuck_guard_reset_on_success ... ok [INFO] [stdout] test agent::error_recovery::tests::test_file_stuck_guard_tracks_per_file ... ok [INFO] [stdout] test agent::error_recovery::tests::t_trial_summary_format ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_backward_compat ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_cyclic_pattern ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_detects_repeat ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_different_actions_no_loop ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_frequency_threshold ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_near_duplicate ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_no_loop ... ok [INFO] [stdout] test agent::error_recovery::tests::test_loop_detector_reset ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_hint_context_overflow ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_hint_loop_not_retryable ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_hint_rate_limited ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_hint_server_disconnect ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_loop_detected ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_max_retries_exceeded ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_parse_invalid_json ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_reasoning_error ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_tool_permission_denied ... ok [INFO] [stdout] test agent::error_recovery::tests::test_recovery_tool_timeout ... ok [INFO] [stdout] test agent::error_recovery::tests::test_salient_hash_normalization ... ok [INFO] [stdout] test agent::agent_loop::tests::test_step_outcome_audit_logged ... ok [INFO] [stdout] test agent::event_store::tests::test_event_type_as_str ... ok [INFO] [stdout] test agent::agent_loop::tests::test_experience_recording ... ok [INFO] [stdout] test agent::checkpoint::tests::t_stats_counts_rolled_back ... ok [INFO] [stdout] test agent::experiment::tests::t_add_worst_reasoning_insights ... ok [INFO] [stdout] test agent::experiment::tests::t_extract_worst_reasoning_empty ... ok [INFO] [stdout] test agent::experiment::tests::t_extract_worst_reasoning_filters_rejects ... ok [INFO] [stdout] test agent::experiment::tests::t_extract_worst_reasoning_truncates ... ok [INFO] [stdout] test agent::experiment::tests::t_stagnation_detector_no_trigger ... ok [INFO] [stdout] test agent::experiment::tests::t_stagnation_detector_no_trigger ... ok [INFO] [stdout] test agent::experiment::tests::t_stagnation_detector_reset ... ok [INFO] [stdout] test agent::experiment::tests::t_stagnation_detector_reset_on_improvement ... ok [INFO] [stdout] test agent::experiment::tests::t_stagnation_detector_stagnation ... ok [INFO] [stdout] test agent::experiment::tests::t_stagnation_detector_variance_collapse ... ok [INFO] [stdout] test agent::experiment::tests::test_adaptive_cycle_rotation ... ok [INFO] [stdout] test agent::experiment::tests::test_add_insight_mutation ... ok [INFO] [stdout] test agent::experiment::tests::test_apply_mutation_add_rule ... ok [INFO] [stdout] test agent::experiment::tests::test_apply_mutation_compound_rules ... ok [INFO] [stdout] test agent::experiment::tests::test_apply_mutation_preserves_base ... ok [INFO] [stdout] test agent::experiment::tests::test_apply_mutation_remove_rule ... ok [INFO] [stdout] test agent::experiment::tests::test_apply_mutation_set_iterations ... ok [INFO] [stdout] test agent::experiment::tests::test_apply_mutation_set_retries ... ok [INFO] [stdout] test agent::experiment::tests::test_config_snapshot ... ok [INFO] [stdout] test agent::experiment::tests::test_default_prompt_rules_non_empty ... ok [INFO] [stdout] test agent::experiment::tests::test_default_rules_expanded ... ok [INFO] [stdout] test agent::experiment::tests::test_experiment_loop_config_default ... ok [INFO] [stdout] test agent::experiment::tests::test_experiment_loop_config_prescreening_defaults ... ok [INFO] [stdout] test agent::experiment::tests::test_hypothesis_generator_rotation ... ok [INFO] [stdout] test agent::experiment::tests::test_hypothesis_generator_skips_tried ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_can_generate_with_two ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_cannot_generate_with_one ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_cannot_generate_with_zero ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_compound_combines_top_delta ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_compound_returns_none_insufficient ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_compound_rotation ... ok [INFO] [stdout] test agent::experiment::tests::test_meta_generator_prompt_hint_included ... ok [INFO] [stdout] test agent::experiment::tests::test_new_mutation_actions_apply ... ok [INFO] [stdout] test agent::experiment::tests::test_param_mutations_count ... ok [INFO] [stdout] test agent::experiment::tests::test_prescreening_threshold_passes_positive_delta ... ok [INFO] [stdout] test agent::experiment::tests::test_prescreening_threshold_rejects_negative_delta ... ok [INFO] [stdout] test agent::experiment::tests::test_priority_score_matching ... ok [INFO] [stdout] test agent::experiment::tests::test_priority_score_no_match ... ok [INFO] [stdout] test agent::error_recovery::tests::test_circuit_breaker_cooldown ... ok [INFO] [stdout] test agent::checkpoint::tests::t_stats_empty ... ok [INFO] [stdout] test agent::experiment_log::tests::test_accepted_mutation_struct_clone ... ok [INFO] [stdout] test agent::checkpoint::tests::t_persist_session_filter ... ok [INFO] [stdout] test agent::experiment_log::tests::test_experiment_from_results ... ok [INFO] [stdout] test agent::checkpoint::tests::t_persist_rollback_marks_timestamp ... ok [INFO] [stdout] test agent::checkpoint::tests::t_persist_create ... ok [INFO] [stdout] test agent::event_store::tests::test_append_and_replay ... ok [INFO] [stdout] test agent::experiment_log::tests::test_acceptance_rate ... ok [INFO] [stdout] test agent::experiment_log::tests::test_mutation_type_meta_mutation_roundtrip ... ok [INFO] [stdout] test agent::experiment_log::tests::test_mutation_type_roundtrip ... ok [INFO] [stdout] test agent::event_store::tests::test_count_by_type ... ok [INFO] [stdout] test agent::compaction::tests::t_flush_saves_to_store ... ok [INFO] [stdout] test agent::context_inject::tests::t_inject_experience_context_empty ... ok [INFO] [stdout] test agent::experiment_log::tests::test_tsv_append ... ok [INFO] [stdout] test agent::experiment_log::tests::test_tsv_tab_in_detail_is_sanitized ... ok [INFO] [stdout] test agent::middleware::tests::t_before_step_abort ... ok [INFO] [stdout] test agent::middleware::tests::t_before_step_abort_stops_chain ... ok [INFO] [stdout] test agent::middleware::tests::t_before_step_default_ok ... ok [INFO] [stdout] test agent::middleware::tests::t_before_step_inject ... ok [INFO] [stdout] test agent::middleware::tests::test_audit_no_store_no_panic ... ok [INFO] [stdout] test agent::checkpoint::tests::t_persist_no_session_id ... ok [INFO] [stdout] test agent::middleware::tests::test_build_default_chain_has_5_middlewares ... ok [INFO] [stdout] test agent::event_store::tests::test_replay_empty_session ... ok [INFO] [stdout] test agent::middleware::tests::test_chain_empty ... ok [INFO] [stdout] test agent::middleware::tests::test_chain_ordering ... ok [INFO] [stdout] test agent::middleware::tests::test_chain_integration_run ... ok [INFO] [stdout] test agent::middleware::tests::test_compaction_runs_without_panic ... ok [INFO] [stdout] test agent::middleware::tests::test_send_safe_middlewares ... ok [INFO] [stdout] test agent::middleware::tests::test_stall_default_threshold_is_3 ... ok [INFO] [stdout] test agent::experiment_log::tests::test_load_accepted_archive_empty ... ok [INFO] [stdout] test agent::middleware::tests::test_stall_detects_after_threshold ... ok [INFO] [stdout] test agent::middleware::tests::test_stall_resets_after_detection ... ok [INFO] [stdout] test agent::middleware::tests::test_stall_skips_non_continue ... ok [INFO] [stdout] test agent::middleware::tests::test_independent_chains_in_parallel_threads ... ok [INFO] [stdout] test agent::middleware::tests::test_token_budget_ok_initially ... ok [INFO] [stdout] test agent::middleware::tests::test_token_budget_warns_near_limit ... ok [INFO] [stdout] test agent::middleware::tests::test_tool_tracking_accumulates ... ok [INFO] [stdout] test agent::parse::tests::test_coerce_non_numeric_string_unchanged ... ok [INFO] [stdout] test agent::parse::tests::test_coerce_string_to_bool ... ok [INFO] [stdout] test agent::parse::tests::test_coerce_string_to_float ... ok [INFO] [stdout] test agent::parse::tests::test_coerce_string_to_int ... ok [INFO] [stdout] test agent::parse::tests::test_empty_tool_call ... ok [INFO] [stdout] test agent::experiment_log::tests::test_acceptance_rate_empty ... ok [INFO] [stdout] test agent::parse::tests::test_fg_format_system_prompt ... ok [INFO] [stdout] test agent::parse::tests::test_fg_format_tool_declaration ... ok [INFO] [stdout] test agent::parse::tests::test_fg_multiple_params ... ok [INFO] [stdout] test agent::context_inject::tests::t_inject_contextual_memories_no_panic ... ok [INFO] [stdout] test agent::parse::tests::test_fg_no_params ... ok [INFO] [stdout] test agent::parse::tests::test_fg_single_call ... ok [INFO] [stdout] test agent::experiment_log::tests::test_recent_experiments_ordering ... ok [INFO] [stdout] test agent::event_store::tests::test_total_count ... ok [INFO] [stdout] test agent::experiment_log::tests::test_load_accepted_archive_fields ... ok [INFO] [stdout] test agent::experiment_log::tests::test_duplicate_experiment_id_rejected ... ok [INFO] [stdout] test agent::experiment_log::tests::test_save_rejected_experiment ... ok [INFO] [stdout] test agent::parse::tests::test_fg_text_only ... ok [INFO] [stdout] test agent::experiment_log::tests::test_load_accepted_archive_filters_rejected ... ok [INFO] [stdout] test agent::experiment_log::tests::test_load_accepted_archive_preserves_order ... ok [INFO] [stdout] test agent::parse::tests::test_fg_unclosed_tag ... ok [INFO] [stdout] test agent::experiment_log::tests::test_save_and_retrieve_from_db ... ok [INFO] [stdout] test agent::parse::tests::test_fg_with_text_before ... ok [INFO] [stdout] test agent::parse::tests::test_invalid_json ... ok [INFO] [stdout] test agent::parse::tests::test_mixed_content ... ok [INFO] [stdout] test agent::parse::tests::test_multiple_tool_calls ... ok [INFO] [stdout] test agent::parse::tests::test_single_tool_call ... ok [INFO] [stdout] test agent::parse::tests::test_think_block_only ... ok [INFO] [stdout] test agent::parse::tests::test_unclosed_think_tag ... ok [INFO] [stdout] test agent::subagent::tests::test_delegation_result_all_succeeded ... ok [INFO] [stdout] test agent::subagent::tests::test_delegation_result_partial_failure ... ok [INFO] [stdout] test agent::subagent::tests::test_delegation_result_empty ... ok [INFO] [stdout] test agent::parse::tests::test_plain_text_only ... ok [INFO] [stdout] test agent::subagent::tests::test_format_delegation_for_context ... ok [INFO] [stdout] test agent::subagent::tests::test_sub_agent_config_depth_limit ... ok [INFO] [stdout] test agent::subagent::tests::test_sub_config_min_iterations ... ok [INFO] [stdout] test agent::subagent::tests::test_sub_agent_config_with_tools ... ok [INFO] [stdout] test agent::subagent::tests::test_sub_agent_config_from_parent ... ok [INFO] [stdout] test agent::middleware::tests::test_audit_with_store ... ok [INFO] [stdout] test agent::task::tests::test_task_state_serialization ... ok [INFO] [stdout] test agent::subagent::tests::test_empty_subtasks ... ok [INFO] [stdout] test agent::subagent::tests::test_cancellation_stops_subtasks ... ok [INFO] [stdout] test agent::task::tests::test_task_not_found ... ok [INFO] [stdout] test agent::tool_exec::tests::t_execute_single_call_error ... ok [INFO] [stdout] test agent::tool_exec::tests::t_execute_single_call_success ... ok [INFO] [stdout] test agent::tool_exec::tests::t_validated_call_fields ... ok [INFO] [stdout] test agent::tool_exec::truncation_tests::test_truncate_large_output ... ok [INFO] [stdout] test agent::checkpoint::tests::t_stats_filters_by_session ... ok [INFO] [stdout] test agent::tool_exec::truncation_tests::test_truncate_small_output ... ok [INFO] [stdout] test agent::tool_exec::truncation_tests::test_truncate_zero_max ... ok [INFO] [stdout] test agent::tool_exec::truncation_tests::test_truncate_unicode_safe ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_bench_result_summary ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_bonsai_tool_schemas_count ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_bonsai_tool_schemas_names ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_default_cases_all_have_expected ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_default_cases_unique_ids ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_live_tool_selection_bench ... ignored [INFO] [stdout] test agent::tool_selection_bench::tests::test_selection_result_correct_logic ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_system_prompt_contains_all_tools ... ok [INFO] [stdout] test agent::validate::tests::test_dangerous_rm_rf ... ok [INFO] [stdout] test agent::checkpoint::tests::t_stats_counts_total ... ok [INFO] [stdout] test agent::validate::tests::test_dangerous_sudo ... ok [INFO] [stdout] test agent::subagent::tests::test_depth_limit_blocks_delegation ... ok [INFO] [stdout] test agent::validate::tests::test_denied_path ... ok [INFO] [stdout] test agent::validate::tests::test_edit_distance ... ok [INFO] [stdout] test agent::validate::tests::test_fork_bomb_detection ... ok [INFO] [stdout] test agent::task::tests::test_get_task ... ok [INFO] [stdout] test agent::validate::tests::test_multiple_issues ... ok [INFO] [stdout] test agent::validate::tests::test_nested_path_check ... ok [INFO] [stdout] test agent::validate::tests::test_path_guard_tilde_expansion ... ok [INFO] [stdout] test agent::task::tests::test_set_error ... ok [INFO] [stdout] test agent::validate::tests::test_suggest_similar_tool ... ok [INFO] [stdout] test agent::validate::tests::test_unknown_tool ... ok [INFO] [stdout] test cancel::tests::test_cancel_sets_flag ... ok [INFO] [stdout] test cancel::tests::test_clone_shares_state ... ok [INFO] [stdout] test cancel::tests::test_new_token_is_not_cancelled ... ok [INFO] [stdout] test agent::validate::tests::test_valid_tool_call ... ok [INFO] [stdout] test config::tests::test_advisor_default ... ok [INFO] [stdout] test config::tests::test_advisor_to_runtime_explicit_api_key_takes_precedence ... ok [INFO] [stdout] test config::tests::test_advisor_from_toml ... ok [INFO] [stdout] test config::tests::test_config_path ... ok [INFO] [stdout] test agent::validate::tests::test_safe_path ... ok [INFO] [stdout] test config::tests::test_advisor_to_runtime_uses_default_prompt_when_empty ... ok [INFO] [stdout] test config::tests::test_bitnet_backend_from_toml ... ok [INFO] [stdout] test config::tests::test_advisor_to_runtime_preserves_custom_prompt ... ok [INFO] [stdout] test config::tests::test_default_config ... ok [INFO] [stdout] test config::tests::test_experiment_config_default ... ok [INFO] [stdout] test config::tests::test_experiment_config_prescreening_defaults ... ok [INFO] [stdout] test config::tests::test_experiment_config_task_timeout_default ... ok [INFO] [stdout] test config::tests::test_detect_api_key_no_endpoint_no_env ... ok [INFO] [stdout] test agent::tool_exec::tests::t_apply_tool_result_success ... ok [INFO] [stdout] test config::tests::test_experiment_config_from_toml ... ok [INFO] [stdout] test config::tests::test_experiment_config_prescreening_from_toml ... ok [INFO] [stdout] test config::tests::test_experiment_config_task_timeout_from_toml ... ok [INFO] [stdout] test config::tests::test_experiment_config_task_timeout_zero_means_unlimited ... ok [INFO] [stdout] test config::tests::test_inference_params_default ... ok [INFO] [stdout] test config::tests::test_inference_params_from_toml ... ok [INFO] [stdout] test config::tests::test_mcp_config_with_url_toml ... ok [INFO] [stdout] test config::tests::test_llama_server_default_preset ... ok [INFO] [stdout] test config::tests::test_load_nonexistent_returns_default ... ok [INFO] [stdout] test agent::task::tests::test_list_incomplete ... ok [INFO] [stdout] test config::tests::test_mlx_optimized_preset ... ok [INFO] [stdout] test config::tests::test_model_config_default_backend_is_llama ... ok [INFO] [stdout] test config::tests::test_model_config_ternary ... ok [INFO] [stdout] test config::tests::test_partial_config ... ok [INFO] [stdout] test config::tests::test_model_config_mlx_backend ... ok [INFO] [stdout] test config::tests::test_mcp_in_full_config_toml ... ok [INFO] [stdout] test agent::subagent::tests::test_build_summary_format ... ok [INFO] [stdout] test config::tests::test_server_backend_deserialize_llama ... ok [INFO] [stdout] test config::tests::test_server_backend_serialize_mlx ... ok [INFO] [stdout] test config::tests::test_soul_path_default_none ... ok [INFO] [stdout] test config::tests::test_server_backend_deserialize_mlx ... ok [INFO] [stdout] test config::tests::test_server_backend_serialize_llama ... ok [INFO] [stdout] test config::tests::test_soul_path_from_toml ... ok [INFO] [stdout] test db::migrate::tests::test_get_migration_sql_exists ... ok [INFO] [stdout] test db::migrate::tests::test_get_migration_sql_not_found ... ok [INFO] [stdout] test db::migrate::tests::test_partial_migration ... ok [INFO] [stdout] test db::migrate::tests::test_up_to_date_needs_no_migrations ... ok [INFO] [stdout] test agent::tool_selection_bench::tests::test_default_cases_count ... ok [INFO] [stdout] test agent::task::tests::test_subtasks ... ok [INFO] [stdout] test config::tests::test_serialize_deserialize ... ok [INFO] [stdout] test config::tests::test_server_backend_toml_roundtrip ... ok [INFO] [stdout] test config::tests::test_server_backend_toml_roundtrip_mlx ... ok [INFO] [stdout] test db::schema::tests::test_migrations_count_matches_version ... ok [INFO] [stdout] test db::schema::tests::test_migrations_exist ... ok [INFO] [stdout] test db::schema::tests::test_migrations_are_sequential ... ok [INFO] [stdout] test db::schema::tests::test_schema_v1_has_wal_mode ... ok [INFO] [stdout] test db::schema::tests::test_schema_v1_contains_all_tables ... ok [INFO] [stdout] test db::schema::tests::test_schema_v1_has_foreign_keys ... ok [INFO] [stdout] test db::migrate::tests::test_fresh_install_needs_all_migrations ... ok [INFO] [stdout] test db::schema::tests::test_schema_version_is_positive ... ok [INFO] [stdout] test db::schema::tests::test_schema_v3_contains_events_table ... ok [INFO] [stdout] test db::schema::tests::test_schema_v4_contains_checkpoints_table ... ok [INFO] [stdout] test db::schema::tests::test_schema_v5_contains_knowledge_graph_tables ... ok [INFO] [stdout] test knowledge::extractor::tests::t_all_categories ... ok [INFO] [stdout] test db::schema::tests::test_schema_v2_contains_experiment_tables ... ok [INFO] [stdout] test knowledge::extractor::tests::t_docs_for_task_context ... ok [INFO] [stdout] test agent::tool_exec::tests::t_apply_tool_result_error ... ok [INFO] [stdout] test db::schema::tests::test_schema_v7_contains_prescreened_column ... ok [INFO] [stdout] test knowledge::extractor::tests::t_decision_en ... ok [INFO] [stdout] test knowledge::extractor::tests::t_decision_ja ... ok [INFO] [stdout] test knowledge::extractor::tests::t_docs_for_task_empty ... ok [INFO] [stdout] test knowledge::extractor::tests::t_docs_for_task_todo ... ok [INFO] [stdout] test agent::task::tests::test_update_state ... ok [INFO] [stdout] test db::schema::tests::test_schema_v1_has_fts5_triggers ... ok [INFO] [stdout] test db::schema::tests::test_schema_v6_ttl_migration ... ok [INFO] [stdout] test knowledge::extractor::tests::t_is_rule ... ok [INFO] [stdout] test agent::task::tests::test_save_context ... ok [INFO] [stdout] test knowledge::extractor::tests::t_preference ... ok [INFO] [stdout] test knowledge::extractor::tests::t_short_skip ... ok [INFO] [stdout] test knowledge::adr::tests::t_adr_record_creates_file ... ok [INFO] [stdout] test knowledge::extractor::tests::t_todo ... ok [INFO] [stdout] test knowledge::adr::tests::t_adr_count ... ok [INFO] [stdout] test agent::task::tests::test_create_task ... ok [INFO] [stdout] test knowledge::adr::tests::t_adr_record_appends ... ok [INFO] [stdout] test knowledge::extractor::tests::t_insight ... ok [INFO] [stdout] test knowledge::vault::tests::t_create ... ok [INFO] [stdout] test knowledge::extractor::tests::t_no_match ... ok [INFO] [stdout] test knowledge::vault::tests::t_read_docs_for_context ... ok [INFO] [stdout] test agent::task::tests::test_add_step ... ok [INFO] [stdout] test knowledge::vault::tests::t_append ... ok [INFO] [stdout] test knowledge::vault::tests::t_summary ... ok [INFO] [stdout] test knowledge::vault::tests::t_read_rules ... ok [INFO] [stdout] test memory::evolution::tests::test_auto_collect_live ... ignored [INFO] [stdout] test memory::evolution::tests::test_extract_xml_tag ... ok [INFO] [stdout] test knowledge::vault::tests::t_dedup ... ok [INFO] [stdout] test knowledge::vault::tests::test_record_to_graph_without_source ... ok [INFO] [stdout] test memory::evolution::tests::test_parse_arxiv_xml ... ok [INFO] [stdout] test memory::evolution::tests::test_parse_arxiv_xml_multibyte_summary ... ok [INFO] [stdout] test memory::evolution::tests::test_parse_empty_xml ... ok [INFO] [stdout] test memory::evolution::tests::test_search_arxiv_live ... ignored [INFO] [stdout] test memory::dreams::tests::test_insights_low_success ... ok [INFO] [stdout] test agent::subagent::tests::test_successful_subtask_execution ... ok [INFO] [stdout] test memory::evolution::tests::test_insight_based_mutations_empty ... ok [INFO] [stdout] test memory::evolution::tests::test_ingest_dedup ... ok [INFO] [stdout] test memory::dreams::tests::test_insights_high_success ... ok [INFO] [stdout] test memory::dreams::tests::test_empty_report ... ok [INFO] [stdout] test memory::dreams::tests::test_tool_usage_stats ... ok [INFO] [stdout] test memory::evolution::tests::test_evolution_engine_suggest ... ok [INFO] [stdout] test memory::dreams::tests::test_dream_light ... ok [INFO] [stdout] test knowledge::vault::tests::test_record_to_graph ... ok [INFO] [stdout] test memory::dreams::tests::test_generate_report ... ok [INFO] [stdout] test memory::dreams::tests::test_success_rate ... ok [INFO] [stdout] test memory::dreams::tests::test_dream_deep ... ok [INFO] [stdout] test memory::evolution::tests::test_insight_based_mutations_with_data ... ok [INFO] [stdout] test memory::feedback::tests::test_correction_takes_priority ... ok [INFO] [stdout] test memory::feedback::tests::test_correction_japanese ... ok [INFO] [stdout] test memory::feedback::tests::test_correction_english ... ok [INFO] [stdout] test memory::feedback::tests::test_correction_fix ... ok [INFO] [stdout] test memory::dreams::tests::test_dream_phase_difference ... ok [INFO] [stdout] test memory::feedback::tests::test_neutral ... ok [INFO] [stdout] test memory::feedback::tests::test_reinforcement_english ... ok [INFO] [stdout] test memory::feedback::tests::test_reinforcement_japanese ... ok [INFO] [stdout] test memory::feedback::tests::test_reinforcement_thanks ... ok [INFO] [stdout] test memory::experience::tests::t_purge_keeps_valid ... ok [INFO] [stdout] test memory::experience::tests::t_set_ttl_updates_expires ... ok [INFO] [stdout] test memory::experience::tests::test_find_similar ... ok [INFO] [stdout] test memory::experience::tests::t_purge_expired_removes_old ... ok [INFO] [stdout] test memory::experience::tests::test_failure_patterns ... ok [INFO] [stdout] test memory::experience::tests::test_record_failure ... ok [INFO] [stdout] test memory::experience::tests::test_record_success ... ok [INFO] [stdout] test memory::graph::tests::test_add_edge_creates_relation ... ok [INFO] [stdout] test memory::experience::tests::test_success_count ... ok [INFO] [stdout] test memory::graph::tests::test_add_node_upsert_returns_same_id ... ok [INFO] [stdout] test memory::graph::tests::test_add_node_different_names_different_ids ... ok [INFO] [stdout] test memory::graph::tests::test_neighbors_unknown_node_returns_empty ... ok [INFO] [stdout] test memory::graph::tests::test_add_node_returns_id ... ok [INFO] [stdout] test memory::graph::tests::test_neighbors_depth_2 ... ok [INFO] [stdout] test memory::graph::tests::test_record_error_pattern ... ok [INFO] [stdout] test memory::graph::tests::test_add_edge_upsert_accumulates_weight ... ok [INFO] [stdout] test memory::graph::tests::test_bidirectional_traversal ... ok [INFO] [stdout] test memory::graph::tests::test_record_tool_usage ... ok [INFO] [stdout] test memory::graph::tests::test_record_tool_usage_accumulates ... ok [INFO] [stdout] test memory::graph::tests::test_related_context_empty_for_unknown ... ok [INFO] [stdout] test memory::graph::tests::test_related_context_respects_max_results ... ok [INFO] [stdout] test memory::search::tests::test_hybrid_search_empty_store ... ok [INFO] [stdout] test memory::search::tests::test_hybrid_search_relevance ... ok [INFO] [stdout] test memory::graph::tests::test_related_context_generates_string ... ok [INFO] [stdout] test memory::skill::tests::t_export_to_file ... ok [INFO] [stdout] test memory::search::tests::test_hybrid_search_limit ... ok [INFO] [stdout] test memory::search::tests::test_hybrid_search_alpha ... ok [INFO] [stdout] test memory::skill::tests::t_export_markdown_empty ... ok [INFO] [stdout] test memory::search::tests::test_search_source_hybrid ... ok [INFO] [stdout] test memory::skill::tests::t_skill_purge_expired ... ok [INFO] [stdout] test memory::search::tests::test_hybrid_search_returns_results ... ok [INFO] [stdout] test memory::skill::tests::t_skill_purge_keeps_valid ... ok [INFO] [stdout] test memory::skill::tests::test_find_matching ... ok [INFO] [stdout] test memory::skill::tests::t_export_markdown_with_skills ... ok [INFO] [stdout] test memory::skill::tests::test_promote_threshold_not_met ... ok [INFO] [stdout] test observability::audit::tests::test_action_serialization ... ok [INFO] [stdout] test memory::skill::tests::test_list_all ... ok [INFO] [stdout] test memory::skill::tests::test_promote_from_experiences ... ok [INFO] [stdout] test memory::store::tests::t_purge_all_expired_no_expired ... ok [INFO] [stdout] test memory::store::tests::t_purge_all_expired ... ok [INFO] [stdout] test memory::store::tests::test_initialize ... ok [INFO] [stdout] test memory::store::tests::test_link_memories ... ok [INFO] [stdout] test memory::store::tests::test_profile_not_found ... ok [INFO] [stdout] test memory::store::tests::test_memory_count ... ok [INFO] [stdout] test memory::store::tests::test_profile_set_get ... ok [INFO] [stdout] test memory::store::tests::test_profile_overwrite ... ok [INFO] [stdout] test memory::store::tests::test_purge_stale ... ok [INFO] [stdout] test memory::skill::tests::test_save_new_skill ... ok [INFO] [stdout] test memory::store::tests::test_save_and_search_memory ... ok [INFO] [stdout] test memory::skill::tests::test_save_updates_existing ... ok [INFO] [stdout] test memory::store::tests::test_search_updates_access_count ... ok [INFO] [stdout] test observability::audit::tests::test_log_security_event ... ok [INFO] [stdout] test observability::audit::tests::test_advisor_stats_aggregates_correctly ... ok [INFO] [stdout] test observability::audit::tests::test_advisor_stats_ignores_other_action_types ... ok [INFO] [stdout] test observability::audit::tests::test_log_llm_call ... ok [INFO] [stdout] test observability::logger::tests::test_log_level_from_str ... ok [INFO] [stdout] test observability::logger::tests::test_bonsai_log_macro ... ok [INFO] [stdout] test observability::logger::tests::test_log_event_does_not_panic ... ok [INFO] [stdout] test observability::logger::tests::test_log_level_ordering ... ok [INFO] [stdout] test observability::logger::tests::test_log_level_tag ... ok [INFO] [stdout] test runtime::cache::cached_tests::test_cached_backend_miss_then_hit ... ok [INFO] [stdout] test runtime::cache::cached_tests::test_cached_backend_different_prompts ... ok [INFO] [stdout] test runtime::cache::tests::test_cache_hit ... ok [INFO] [stdout] test runtime::cache::tests::test_cache_miss ... ok [INFO] [stdout] test runtime::cache::tests::test_clear ... ok [INFO] [stdout] test runtime::cache::tests::test_different_models_different_keys ... ok [INFO] [stdout] test runtime::cache::tests::test_eviction_keeps_frequently_accessed ... ok [INFO] [stdout] test runtime::cache::tests::test_eviction_on_max ... ok [INFO] [stdout] test runtime::cache::tests::test_overwrite_existing_key ... ok [INFO] [stdout] test runtime::cache::tests::test_same_model_different_prompts ... ok [INFO] [stdout] test runtime::embedder::tests::test_cosine_similarity_identical ... ok [INFO] [stdout] test runtime::embedder::tests::test_cosine_similarity_orthogonal ... ok [INFO] [stdout] test runtime::embedder::tests::test_cosine_similarity_zero_vector ... ok [INFO] [stdout] test runtime::embedder::tests::test_create_embedder ... ok [INFO] [stdout] test runtime::embedder::tests::test_similar_texts_higher_similarity ... ok [INFO] [stdout] test runtime::embedder::tests::test_simple_embedder_normalized ... ok [INFO] [stdout] test observability::audit::tests::test_advisor_stats_empty ... ok [INFO] [stdout] test runtime::embedder::tests::test_simple_embedder ... ok [INFO] [stdout] test runtime::inference::tests::test_mock_cancelled ... ok [INFO] [stdout] test runtime::inference::tests::test_mock_multiple_responses ... ok [INFO] [stdout] test runtime::inference::tests::test_mock_exhausted ... ok [INFO] [stdout] test runtime::embedder::tests::test_multiple_texts ... ok [INFO] [stdout] test runtime::inference::tests::test_model_id ... ok [INFO] [stdout] test runtime::llama_server::tests::test_backend_base_url ... ok [INFO] [stdout] test runtime::inference::tests::test_streaming_callback ... ok [INFO] [stdout] test runtime::inference::tests::test_mock_single_response ... ok [INFO] [stdout] test runtime::llama_server::tests::test_build_request_body_stream_enabled ... ok [INFO] [stdout] test runtime::llama_server::tests::test_build_request_body ... ok [INFO] [stdout] test runtime::llama_server::tests::test_build_request_body_with_tools ... ok [INFO] [stdout] test runtime::inference::tests::test_token_usage ... ok [INFO] [stdout] test observability::audit::tests::test_advisor_stats_filters_by_session ... ok [INFO] [stdout] test runtime::llama_server::tests::test_build_request_body_uses_inference_params ... ok [INFO] [stdout] test runtime::llama_server::tests::test_backend_connect ... ok [INFO] [stdout] test runtime::llama_server::tests::test_connect ... ok [INFO] [stdout] test runtime::llama_server::tests::test_estimate_tokens_from_messages ... ok [INFO] [stdout] test runtime::llama_server::tests::test_estimate_tokens_japanese ... ok [INFO] [stdout] test runtime::llama_server::tests::test_connect_trailing_slash ... ok [INFO] [stdout] test runtime::llama_server::tests::test_generate_with_live_server ... ignored [INFO] [stdout] test runtime::llama_server::tests::test_connect_with_params ... ok [INFO] [stdout] test runtime::llama_server::tests::test_format_tool_schemas ... ok [INFO] [stdout] test runtime::llama_server::tests::test_parse_sse_stream_basic ... ok [INFO] [stdout] test runtime::llama_server::tests::test_health_fallback_to_models ... ok [INFO] [stdout] test runtime::llama_server::tests::test_find_free_port ... ok [INFO] [stdout] test runtime::llama_server::tests::test_estimate_tokens_from_text ... ok [INFO] [stdout] test runtime::llama_server::tests::test_health_check_fails_without_server ... ok [INFO] [stdout] test runtime::llama_server::tests::test_parse_sse_stream_empty_content ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_api_endpoint ... ok [INFO] [stdout] test runtime::llama_server::tests::test_parse_sse_stream_cancel ... ok [INFO] [stdout] test runtime::llama_server::tests::test_parse_sse_stream_malformed_json ... ok [INFO] [stdout] test runtime::llama_server::tests::test_parse_sse_stream_no_usage_returns_zero ... ok [INFO] [stdout] test observability::audit::tests::test_for_session ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_build_verification_prompt ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_default ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_custom_verification_prompt ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_default_includes_new_fields ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_default_replan_prompt ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_max_uses ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_role_user_prompts_include_context ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_config_default_verification_prompt ... ok [INFO] [stdout] test runtime::model_router::tests::test_cache_key_differs_by_role ... ok [INFO] [stdout] test runtime::model_router::tests::test_advisor_role_system_prompts_differ ... ok [INFO] [stdout] test runtime::model_router::tests::test_cache_key_differs_by_context ... ok [INFO] [stdout] test runtime::model_router::tests::test_cache_key_same_for_same_inputs ... ok [INFO] [stdout] test runtime::model_router::tests::test_cache_clone_independence ... ok [INFO] [stdout] test runtime::model_router::tests::test_cache_returns_hit_without_http ... ok [INFO] [stdout] test runtime::model_router::tests::test_cache_starts_empty ... ok [INFO] [stdout] test runtime::model_router::tests::test_model_selection_debug ... ok [INFO] [stdout] test runtime::model_router::tests::test_get_available_ram ... ok [INFO] [stdout] test runtime::model_router::tests::test_local_prompt_for_routes_by_role ... ok [INFO] [stdout] test runtime::model_router::tests::test_log_startup_remote_mode ... ok [INFO] [stdout] test runtime::model_router::tests::test_log_startup_local_mode ... ok [INFO] [stdout] test runtime::model_router::tests::test_select_disabled_router ... ok [INFO] [stdout] test runtime::model_router::tests::test_select_image_e2b_fallback ... ok [INFO] [stdout] test runtime::model_router::tests::test_select_image_insufficient_ram ... ok [INFO] [stdout] test runtime::model_router::tests::test_pipeline_stage_debug ... ok [INFO] [stdout] test runtime::model_router::tests::test_select_image_with_enough_ram ... ok [INFO] [stdout] test runtime::model_router::tests::test_select_daemon_always_bonsai ... ok [INFO] [stdout] test runtime::model_router::tests::test_select_default_bonsai ... ok [INFO] [stdout] test runtime::model_router::tests::test_task_context_from_messages ... ok [INFO] [stdout] test runtime::model_router::tests::test_task_context_with_image ... ok [INFO] [stdout] test runtime::model_router::tests::test_try_remote_advice_no_endpoint_returns_none ... ok [INFO] [stdout] test safety::autonomy::tests::t_default ... ok [INFO] [stdout] test safety::autonomy::tests::t_full ... ok [INFO] [stdout] test safety::autonomy::tests::t_ro ... ok [INFO] [stdout] test safety::autonomy::tests::t_serde ... ok [INFO] [stdout] test safety::autonomy::tests::t_sv ... ok [INFO] [stdout] test safety::boot_guard::tests::t_new ... ok [INFO] [stdout] test runtime::model_router::tests::test_try_remote_advice_invalid_endpoint_returns_err ... ok [INFO] [stdout] test safety::manifest::tests::t_format ... ok [INFO] [stdout] test safety::manifest::tests::t_manifest ... ok [INFO] [stdout] test safety::network::tests::t_strict ... ok [INFO] [stdout] test safety::network::tests::t_allow_all ... ok [INFO] [stdout] test safety::network::tests::t_domain ... ok [INFO] [stdout] test safety::boot_guard::tests::t_trip ... ok [INFO] [stdout] test safety::network::tests::t_subdomain ... ok [INFO] [stdout] test safety::boot_guard::tests::t_reset ... ok [INFO] [stdout] test observability::audit::tests::test_log_step_outcome_success ... ok [INFO] [stdout] test safety::secrets::tests::test_custom_patterns ... ok [INFO] [stdout] test safety::secrets::tests::test_detect ... ok [INFO] [stdout] test observability::audit::tests::test_log_tool_call ... ok [INFO] [stdout] test observability::audit::tests::test_recent ... ok [INFO] [stdout] test observability::audit::tests::test_log_step_outcome_aborted ... ok [INFO] [stdout] test safety::secrets::tests::test_contains_secrets ... ok [INFO] [stdout] test tools::arxiv::tests::t_live ... ignored [INFO] [stdout] test observability::audit::tests::test_empty_audit ... ok [INFO] [stdout] test observability::audit::tests::test_task_complete_stats_empty ... ok [INFO] [stdout] test tools::arxiv::tests::t_miss ... ok [INFO] [stdout] test tools::file::tests::test_block_anchor_too_short ... ok [INFO] [stdout] test tools::arxiv::tests::t_schema_has_query ... ok [INFO] [stdout] test tools::file::tests::test_context_aware_no_duplicates ... ok [INFO] [stdout] test tools::file::tests::test_context_aware_too_short ... ok [INFO] [stdout] test tools::file::tests::test_file_read_nonexistent ... ok [INFO] [stdout] test tools::file::tests::test_file_read_permission ... ok [INFO] [stdout] test tools::file::tests::test_file_read_offset_limit ... ok [INFO] [stdout] test tools::file::tests::test_file_write_permission ... ok [INFO] [stdout] test tools::file::tests::test_file_write_create_new ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_block_anchor_below_threshold ... ok [INFO] [stdout] test observability::audit::tests::test_step_outcome_duration_recorded ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_boundary_trim ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_block_anchor_match ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_context_aware ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_indentation_flexible ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_escape_normalized ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_levenshtein_block ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_levenshtein_block_too_distant ... ok [INFO] [stdout] test observability::audit::tests::test_step_outcome_consecutive_failures_tracked ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_replace_not_found_returns_none ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_trim_match ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_replace_trailing_whitespace ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_unicode_normalization ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_replace_whitespace_difference ... ok [INFO] [stdout] test tools::file::tests::test_levenshtein_block_too_short ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_whitespace_normalization ... ok [INFO] [stdout] test tools::file::tests::test_line_distance ... ok [INFO] [stdout] test tools::file::tests::test_multi_edit_empty_edits ... ok [INFO] [stdout] test observability::audit::tests::test_task_complete_stats_filters_by_session ... ok [INFO] [stdout] test observability::audit::tests::test_task_complete_stats_aggregates ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_api_key ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_aws_key ... ok [INFO] [stdout] test tools::file::tests::test_normalize_whitespace ... ok [INFO] [stdout] test tools::file::tests::test_read_existing_file ... ok [INFO] [stdout] test tools::file::tests::test_read_missing_param ... ok [INFO] [stdout] test tools::file::tests::test_read_nonexistent_file ... ok [INFO] [stdout] test tools::file::tests::test_read_with_line_numbers ... ok [INFO] [stdout] test tools::file::tests::test_read_with_offset_limit ... ok [INFO] [stdout] test tools::file::tests::test_replace_lines_trailing_newline ... ok [INFO] [stdout] test tools::file::tests::test_search_replace_empty_old_text ... ok [INFO] [stdout] test tools::file::tests::test_search_replace_no_match ... ok [INFO] [stdout] test tools::file::tests::test_multi_edit_basic ... ok [INFO] [stdout] test tools::file::tests::test_write_creates_parent_dirs ... ok [INFO] [stdout] test tools::file::tests::test_write_full_content ... ok [INFO] [stdout] test tools::file::tests::test_write_no_content_params ... ok [INFO] [stdout] test tools::file::tests::test_multi_edit_rollback_on_failure ... ok [INFO] [stdout] test tools::file::tests::test_write_search_replace_not_found ... ok [INFO] [stdout] test tools::file::tests::test_search_replace_multiple_matches ... ok [INFO] [stdout] test tools::git::tests::test_git_missing_subcommand ... ok [INFO] [stdout] test tools::git::tests::test_git_unknown_subcommand ... ok [INFO] [stdout] test tools::hooks::tests::test_empty_hooks ... ok [INFO] [stdout] test tools::arxiv::tests::t_meta ... ok [INFO] [stdout] test tools::file::tests::test_fuzzy_replace_exact_still_preferred ... ok [INFO] [stdout] test tools::file::tests::test_write_search_replace ... ok [INFO] [stdout] test safety::secrets::tests::test_no_false_positive ... ok [INFO] [stdout] test tools::hooks::tests::test_hooks_config_deserialize ... ok [INFO] [stdout] test tools::git::tests::test_git_branch ... ok [INFO] [stdout] test safety::secrets::tests::test_multiple_secrets ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_error_response_parsing ... ok [INFO] [stdout] test tools::git::tests::test_git_metadata ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_ssh_key ... ok [INFO] [stdout] test tools::git::tests::test_git_log ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_initialize_request_format ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_notification_format ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_tool_call_result_empty_content ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_config_url_overrides_command ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_tool_call_result_with_text ... ok [INFO] [stdout] test tools::mcp_client::tests::test_json_rpc_request_serialize ... ok [INFO] [stdout] test tools::hooks::tests::test_post_tool_hook_with_env ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_echo_server ... ignored [INFO] [stdout] test tools::mcp_client::tests::test_json_rpc_response_both_result_and_error ... ok [INFO] [stdout] test tools::mcp_client::tests::test_json_rpc_request_with_params ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_server_config_deserialize ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_multiple_servers_toml ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_tool_call_result_no_content_field ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_server_config_with_url ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_server_config_http_toml ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_server_config_without_url ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_tool_info ... ok [INFO] [stdout] test tools::hooks::tests::test_failing_hook ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_tool_info_schema ... ok [INFO] [stdout] test tools::mcp_client::tests::test_mcp_tool_wrapper_display_name_format ... ok [INFO] [stdout] test tools::hooks::tests::test_pre_tool_hook ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_tool_call_result_non_text_content ... ok [INFO] [stdout] test tools::permission::tests::test_daemon_auto_only_auto ... ok [INFO] [stdout] test tools::permission::tests::test_daemon_auto_only_confirm ... ok [INFO] [stdout] test tools::hooks::tests::test_session_hooks ... ok [INFO] [stdout] test tools::permission::tests::test_daemon_deny ... ok [INFO] [stdout] test tools::permission::tests::test_interactive_deny ... ok [INFO] [stdout] test tools::plugin::tests::test_expand_command_multiple_params ... ok [INFO] [stdout] test tools::permission::tests::test_daemon_policy_serialization ... ok [INFO] [stdout] test tools::permission::tests::test_daemon_queue_confirm ... ok [INFO] [stdout] test tools::plugin::tests::test_load_plugin_tools ... ok [INFO] [stdout] test tools::permission::tests::test_interactive_auto ... ok [INFO] [stdout] test tools::permission::tests::test_interactive_confirm ... ok [INFO] [stdout] test tools::permission::tests::test_permission_serialization ... ok [INFO] [stdout] test tools::plugin::tests::test_expand_command ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_summary_explicit ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_summary_fallback_truncates_long_description ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_summary_fallback_from_description ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_tool_metadata ... ok [INFO] [stdout] test tools::plugin::tests::test_parameters_schema ... ok [INFO] [stdout] test tools::hooks::tests::test_multiple_hooks ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_permission_confirm ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_permission_deny ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_tags ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_tags_empty ... ok [INFO] [stdout] test tools::mcp_client::tests::test_http_transport_request_serialization ... ok [INFO] [stdout] test tools::plugin::tests::test_toml_deserialization ... ok [INFO] [stdout] test tools::plugin::tests::test_toml_deserialization_with_summary_and_tags ... ok [INFO] [stdout] test tools::plugin::tests::test_toml_deserialization_without_summary_and_tags ... ok [INFO] [stdout] test tools::repomap::tests::t_dedup_via_hashset ... ok [INFO] [stdout] test tools::repomap::tests::t_extract_references ... ok [INFO] [stdout] test tools::repomap::tests::t_go_interface ... ok [INFO] [stdout] test tools::repomap::tests::t_go_syms ... ok [INFO] [stdout] test tools::repomap::tests::t_go_method ... ok [INFO] [stdout] test tools::repomap::tests::t_line_numbers ... ok [INFO] [stdout] test tools::repomap::tests::t_none ... ok [INFO] [stdout] test tools::repomap::tests::t_pagerank_cycle ... ok [INFO] [stdout] test tools::repomap::tests::t_pagerank_hub ... ok [INFO] [stdout] test tools::repomap::tests::t_pagerank_simple ... ok [INFO] [stdout] test tools::repomap::tests::t_python_async_def ... ok [INFO] [stdout] test tools::repomap::tests::t_python_class_method ... ok [INFO] [stdout] test tools::repomap::tests::t_rust_async_fn ... ok [INFO] [stdout] test tools::repomap::tests::t_rust_enum ... ok [INFO] [stdout] test tools::repomap::tests::t_build_dep_graph ... ok [INFO] [stdout] test tools::repomap::tests::t_supported_exts ... ok [INFO] [stdout] test tools::repomap::tests::t_rust_impl_trait ... ok [INFO] [stdout] test tools::git::tests::test_git_status ... ok [INFO] [stdout] test tools::repomap::tests::t_rust_pub_crate ... ok [INFO] [stdout] test tools::repomap::tests::t_ts_interface ... ok [INFO] [stdout] test tools::repomap::tests::t_ts_async_function ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_env_variable ... ok [INFO] [stdout] test tools::sandbox::tests::test_exec_failure ... ok [INFO] [stdout] test tools::git::tests::test_git_diff ... ok [INFO] [stdout] test tools::sandbox::tests::test_exec_result_success_check ... ok [INFO] [stdout] test tools::sandbox::tests::test_resource_limits_default ... ok [INFO] [stdout] test tools::sandbox::tests::test_shell_escape ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_github_token ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_token ... ok [INFO] [stdout] test tools::shell::tests::test_shell_metadata ... ok [INFO] [stdout] test tools::shell::tests::test_shell_missing_command ... ok [INFO] [stdout] test safety::secrets::tests::test_redact_bearer ... ok [INFO] [stdout] test tools::repomap::tests::t_extract_definitions ... ok [INFO] [stdout] test tools::tests::t_cache_hit ... ok [INFO] [stdout] test tools::plugin::tests::test_plugin_tool_call ... ok [INFO] [stdout] test tools::tests::t_cache_miss ... ok [INFO] [stdout] test tools::tests::t_cache_read_only_only ... ok [INFO] [stdout] test tools::tests::t_cache_stats ... ok [INFO] [stdout] test tools::tests::test_detect_task_type_code_execution ... ok [INFO] [stdout] test tools::tests::test_detect_task_type_file_operation ... ok [INFO] [stdout] test tools::tests::test_detect_task_type_general ... ok [INFO] [stdout] test tools::tests::test_detect_task_type_research ... ok [INFO] [stdout] test tools::tests::test_format_schemas ... ok [INFO] [stdout] test tools::tests::test_format_schemas_compact ... ok [INFO] [stdout] test tools::tests::test_format_schemas_compact_empty ... ok [INFO] [stdout] test tools::shell::tests::test_shell_with_timeout ... ok [INFO] [stdout] test tools::tests::test_format_schemas_compact_has_description ... ok [INFO] [stdout] test tools::tests::test_format_schemas_compact_no_params ... ok [INFO] [stdout] test tools::tests::test_format_schemas_empty ... ok [INFO] [stdout] test tools::sandbox::tests::test_exec_echo ... ok [INFO] [stdout] test tools::tests::test_format_schemas_progressive_empty ... ok [INFO] [stdout] test tools::tests::test_format_schemas_progressive_expanded ... ok [INFO] [stdout] test tools::tests::test_format_schemas_progressive_shorter_than_full ... ok [INFO] [stdout] test tools::tests::test_is_read_only_default_false ... ok [INFO] [stdout] test tools::tests::test_is_read_only_override_true ... ok [INFO] [stdout] test tools::tests::test_known_names ... ok [INFO] [stdout] test tools::tests::test_max_mcp_tools_in_context_default ... ok [INFO] [stdout] test tools::tests::test_format_schemas_progressive_all_expanded ... ok [INFO] [stdout] test tools::tests::test_format_schemas_progressive_collapsed ... ok [INFO] [stdout] test tools::tests::test_max_tools_in_context_default ... ok [INFO] [stdout] test tools::tests::test_names ... ok [INFO] [stdout] test tools::tests::test_register_and_get ... ok [INFO] [stdout] test tools::tests::test_registry_send_sync ... ok [INFO] [stdout] test tools::tests::test_select_relevant_max_limit ... ok [INFO] [stdout] test tools::tests::test_select_relevant_split_mcp_limit ... ok [INFO] [stdout] test tools::tests::test_select_relevant_split_no_mcp ... ok [INFO] [stdout] test tools::tests::test_select_relevant_keyword_match ... ok [INFO] [stdout] test tools::tests::test_select_relevant_split_separates_builtin_and_mcp ... ok [INFO] [stdout] test tools::tests::test_select_relevant_split_zero_mcp ... ok [INFO] [stdout] test tools::tests::test_select_relevant_unchanged ... ok [INFO] [stdout] test tools::tests::test_select_relevant_with_type_file_operation ... ok [INFO] [stdout] test tools::tests::test_select_relevant_no_match ... ok [INFO] [stdout] test tools::tests::test_select_relevant_with_type_code_execution ... ok [INFO] [stdout] test tools::repomap::tests::t_java_syms ... ok [INFO] [stdout] test tools::tests::t_cache_invalidate ... ok [INFO] [stdout] test tools::tests::test_select_relevant_with_type_general_no_filter ... ok [INFO] [stdout] test tools::repomap::tests::t_c_syms ... ok [INFO] [stdout] test tools::tests::test_select_relevant_with_type_respects_max ... ok [INFO] [stdout] test tools::tests::test_task_boost_git_query ... ok [INFO] [stdout] test tools::tests::test_task_boost_file_query ... ok [INFO] [stdout] test tools::repomap::tests::t_kotlin_syms ... ok [INFO] [stdout] test tools::tests::test_task_type_allowed_prefixes ... ok [INFO] [stdout] test tools::sandbox::tests::test_exec_nonexistent_command ... ok [INFO] [stdout] test tools::tests::test_tool_call ... ok [INFO] [stdout] test tools::tests::test_task_boost_no_boost ... ok [INFO] [stdout] test tools::shell::tests::test_shell_echo ... ok [INFO] [stdout] test tools::tests::test_tool_schema ... ok [INFO] [stdout] test tools::shell::tests::test_shell_failing_command ... ok [INFO] [stdout] test tools::tests::test_tool_send_sync_compile_time ... ok [INFO] [stdout] test tools::tests::test_select_relevant_with_type_research ... ok [INFO] [stdout] test tools::tests::test_warn_if_exceeded_no_panic ... ok [INFO] [stdout] test tools::typed::tests::t_simplify_schema_removes_meta ... ok [INFO] [stdout] test tools::typed::tests::t_simplify_schema_has_required ... ok [INFO] [stdout] test tools::typed::tests::t_typed_tool_as_tool ... ok [INFO] [stdout] test tools::typed::tests::t_typed_tool_call ... ok [INFO] [stdout] test tools::typed::tests::t_typed_tool_coerce_string_to_type ... ok [INFO] [stdout] test tools::typed::tests::t_typed_tool_missing_param ... ok [INFO] [stdout] test tools::typed::tests::t_typed_tool_registry_compat ... ok [INFO] [stdout] test tools::web::tests::test_format_ddg_empty ... ok [INFO] [stdout] test tools::tests::test_tool_parallel_call_via_thread_scope ... ok [INFO] [stdout] test tools::web::tests::test_format_ddg_with_abstract ... ok [INFO] [stdout] test tools::web::tests::test_web_fetch_live ... ignored [INFO] [stdout] test tools::web::tests::test_strip_html_whitespace ... ok [INFO] [stdout] test tools::web::tests::test_urlencoding ... ok [INFO] [stdout] test tools::web::tests::test_web_search_live ... ignored [INFO] [stdout] test tools::web::tests::test_web_search_metadata ... ok [INFO] [stdout] test tools::web::tests::test_format_ddg_with_answer ... ok [INFO] [stdout] test tools::web::tests::test_web_fetch_missing_param ... ok [INFO] [stdout] test tools::web::tests::test_strip_html_tags ... ok [INFO] [stdout] test tools::web::tests::test_web_fetch_metadata ... ok [INFO] [stdout] test tools::web::tests::test_web_search_missing_param ... ok [INFO] [stdout] test tools::repomap::tests::t_gen_map_ranked ... ok [INFO] [stdout] test tools::shell::tests::test_shell_pwd ... ok [INFO] [stdout] test tools::repomap::tests::t_swift_syms ... ok [INFO] [stdout] test tools::sandbox::tests::test_exec_timeout ... ok [INFO] [stdout] test tools::repomap::tests::t_src ... ok [INFO] [stdout] test tools::repomap::tests::t_tool ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 876 passed; 0 failed; 8 ignored; 0 measured; 0 filtered out; finished in 5.40s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/bonsai-882cd1efb8628b17) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests bonsai_agent [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/observability/logger.rs - observability::logger::bonsai_log (line 59) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.57s; merged doctests compilation took 0.56s [INFO] running `Command { std: "docker" "inspect" "0792650b83586ed2d64e04b3430d935572f4a4e9e58d1426e06144ee2d8bba19", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0792650b83586ed2d64e04b3430d935572f4a4e9e58d1426e06144ee2d8bba19", kill_on_drop: false }` [INFO] [stdout] 0792650b83586ed2d64e04b3430d935572f4a4e9e58d1426e06144ee2d8bba19