[INFO] fetching crate zeph-mcp 0.19.1... [INFO] testing zeph-mcp-0.19.1 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate zeph-mcp 0.19.1 into /workspace/builds/worker-7-tc1/source [INFO] started tweaking crates.io crate zeph-mcp 0.19.1 [INFO] finished tweaking crates.io crate zeph-mcp 0.19.1 [INFO] tweaked toml for crates.io crate zeph-mcp 0.19.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate zeph-mcp 0.19.1 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate zeph-mcp 0.19.1 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded zeph-common v0.19.1 [INFO] [stderr] Downloaded wasite v0.1.0 [INFO] [stderr] Downloaded eventsource-stream v0.2.3 [INFO] [stderr] Downloaded open v5.3.3 [INFO] [stderr] Downloaded windows-threading v0.2.1 [INFO] [stderr] Downloaded sqlx-macros-core v0.8.6 [INFO] [stderr] Downloaded windows-future v0.3.2 [INFO] [stderr] Downloaded prost-types v0.13.5 [INFO] [stderr] Downloaded prost-derive v0.13.5 [INFO] [stderr] Downloaded is-docker v0.2.0 [INFO] [stderr] Downloaded oauth2 v5.0.0 [INFO] [stderr] Downloaded tree-sitter-javascript v0.25.0 [INFO] [stderr] Downloaded tree-sitter-python v0.25.0 [INFO] [stderr] Downloaded process-wrap v9.1.0 [INFO] [stderr] Downloaded rmcp-macros v1.4.0 [INFO] [stderr] Downloaded prost v0.13.5 [INFO] [stderr] Downloaded rmcp v1.4.0 [INFO] [stderr] Downloaded tree-sitter-rust v0.24.2 [INFO] [stderr] Downloaded nix v0.31.2 [INFO] [stderr] Downloaded zeph-llm v0.19.1 [INFO] [stderr] Downloaded sqlx-postgres v0.8.6 [INFO] [stderr] Downloaded tree-sitter-bash v0.25.1 [INFO] [stderr] Downloaded selectors v0.36.1 [INFO] [stderr] Downloaded sqlx-mysql v0.8.6 [INFO] [stderr] Downloaded html5ever v0.39.0 [INFO] [stderr] Downloaded tree-sitter-md v0.5.3 [INFO] [stderr] Downloaded futures-intrusive v0.5.0 [INFO] [stderr] Downloaded sqlx v0.8.6 [INFO] [stderr] Downloaded sqlx-sqlite v0.8.6 [INFO] [stderr] Downloaded sqlx-core v0.8.6 [INFO] [stderr] Downloaded tree-sitter-typescript v0.23.2 [INFO] [stderr] Downloaded constant_time_eq v0.4.2 [INFO] [stderr] Downloaded is-wsl v0.4.0 [INFO] [stderr] Downloaded tokio v1.51.1 [INFO] [stderr] Downloaded windows-collections v0.3.2 [INFO] [stderr] Downloaded ollama-rs v0.3.4 [INFO] [stderr] Downloaded rand v0.10.1 [INFO] [stderr] Downloaded cssparser v0.36.0 [INFO] [stderr] Downloaded toml v1.1.2+spec-1.1.0 [INFO] [stderr] Downloaded sqlx-macros v0.8.6 [INFO] [stderr] Downloaded tendril v0.5.0 [INFO] [stderr] Downloaded whoami v1.6.1 [INFO] [stderr] Downloaded scrape-core v0.2.5 [INFO] [stderr] Downloaded tree-sitter-json v0.24.8 [INFO] [stderr] Downloaded tree-sitter-toml-ng v0.7.0 [INFO] [stderr] Downloaded qdrant-client v1.17.0 [INFO] [stderr] Downloaded tree-sitter-go v0.25.0 [INFO] [stderr] Downloaded zeph-tools v0.19.1 [INFO] [stderr] Downloaded windows-numerics v0.3.1 [INFO] [stderr] Downloaded sse-stream v0.2.2 [INFO] [stderr] Downloaded string_cache v0.9.0 [INFO] [stderr] Downloaded web_atoms v0.2.3 [INFO] [stderr] Downloaded zeph-memory v0.19.1 [INFO] [stderr] Downloaded markup5ever v0.39.0 [INFO] [stderr] Downloaded servo_arc v0.4.3 [INFO] [stderr] Downloaded rand_core v0.10.1 [INFO] [stderr] Downloaded hyper-rustls v0.27.8 [INFO] [stderr] Downloaded string_cache_codegen v0.6.1 [INFO] [stderr] Downloaded zeph-db v0.19.1 [INFO] [stderr] Downloaded tiktoken-rs v0.11.0 [INFO] [stderr] Downloaded aws-lc-sys v0.39.1 [INFO] [stderr] Downloaded windows v0.62.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ac89bbfdbaa4d39a7a68fd9efac32b90e95912855edaf9273486a19cab88e037 [INFO] running `Command { std: "docker" "start" "-a" "ac89bbfdbaa4d39a7a68fd9efac32b90e95912855edaf9273486a19cab88e037", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ac89bbfdbaa4d39a7a68fd9efac32b90e95912855edaf9273486a19cab88e037", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac89bbfdbaa4d39a7a68fd9efac32b90e95912855edaf9273486a19cab88e037", kill_on_drop: false }` [INFO] [stdout] ac89bbfdbaa4d39a7a68fd9efac32b90e95912855edaf9273486a19cab88e037 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d8d67f0614a55f79317d7123448a8f68c58c42868e725af7f595aa94f3ea530e [INFO] running `Command { std: "docker" "start" "-a" "d8d67f0614a55f79317d7123448a8f68c58c42868e725af7f595aa94f3ea530e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.185 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zerovec-derive v0.11.3 [INFO] [stderr] Compiling zerofrom-derive v0.1.7 [INFO] [stderr] Compiling yoke-derive v0.8.2 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling zeroize_derive v1.4.3 [INFO] [stderr] Compiling tree-sitter-language v0.1.7 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling untrusted v0.9.0 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling cc v1.2.60 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Compiling aws-lc-rs v1.16.2 [INFO] [stderr] Compiling zerofrom v0.1.7 [INFO] [stderr] Compiling yoke v0.8.2 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling siphasher v1.0.2 [INFO] [stderr] Compiling zerovec v0.11.6 [INFO] [stderr] Compiling zerotrie v0.2.4 [INFO] [stderr] Compiling rustls v0.23.38 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling cmake v0.1.58 [INFO] [stderr] Compiling tinystr v0.8.3 [INFO] [stderr] Compiling potential_utf v0.1.5 [INFO] [stderr] Compiling tokio v1.51.1 [INFO] [stderr] Compiling icu_locale_core v2.2.0 [INFO] [stderr] Compiling icu_collections v2.2.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling aws-lc-sys v0.39.1 [INFO] [stderr] Compiling libm v0.2.16 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling phf_codegen v0.13.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling crc-catalog v2.4.0 [INFO] [stderr] Compiling rand_core v0.10.1 [INFO] [stderr] Compiling crc v3.4.0 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling hashlink v0.10.0 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling rustls-native-certs v0.8.3 [INFO] [stderr] Compiling rustls-webpki v0.103.12 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling hyper v1.9.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling iri-string v0.7.12 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling webpki-roots v0.26.11 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling futures-intrusive v0.5.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling string_cache_codegen v0.6.1 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling web_atoms v0.2.3 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling flume v0.11.1 [INFO] [stderr] Compiling tree-sitter v0.26.8 [INFO] [stderr] Compiling schemars_derive v1.2.1 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling tree-sitter-rust v0.24.2 [INFO] [stderr] Compiling tree-sitter-go v0.25.0 [INFO] [stderr] Compiling tree-sitter-typescript v0.23.2 [INFO] [stderr] Compiling tree-sitter-javascript v0.25.0 [INFO] [stderr] Compiling blake3 v1.8.4 [INFO] [stderr] Compiling tree-sitter-python v0.25.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling async-stream v0.3.6 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling schemars v1.2.1 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling sqlx-core v0.8.6 [INFO] [stderr] Compiling prost-derive v0.13.5 [INFO] [stderr] Compiling string_cache v0.9.0 [INFO] [stderr] Compiling hybrid-array v0.4.10 [INFO] [stderr] Compiling pin-project-internal v1.1.11 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling dotenvy v0.15.7 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling dtoa v1.0.11 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling sha1_smol v1.0.1 [INFO] [stderr] Compiling sqlx-sqlite v0.8.6 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling uuid v1.23.0 [INFO] [stderr] Compiling pin-project v1.1.11 [INFO] [stderr] Compiling nix v0.31.2 [INFO] [stderr] Compiling dtoa-short v0.3.5 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling tendril v0.5.0 [INFO] [stderr] Compiling axum-core v0.4.5 [INFO] [stderr] Compiling prost v0.13.5 [INFO] [stderr] Compiling derive_builder_core v0.20.2 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling chacha20 v0.10.0 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling selectors v0.36.1 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling cssparser-macros v0.6.1 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling matchit v0.7.3 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling sqlx-macros-core v0.8.6 [INFO] [stderr] Compiling derive_builder_macro v0.20.2 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling cssparser v0.36.0 [INFO] [stderr] Compiling markup5ever v0.39.0 [INFO] [stderr] Compiling rand v0.10.1 [INFO] [stderr] Compiling axum v0.7.9 [INFO] [stderr] Compiling zeph-common v0.19.1 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling block-buffer v0.12.0 [INFO] [stderr] Compiling crypto-common v0.2.1 [INFO] [stderr] Compiling hyper-timeout v0.5.2 [INFO] [stderr] Compiling rustls-pemfile v2.2.0 [INFO] [stderr] Compiling sqlx-macros v0.8.6 [INFO] [stderr] Compiling tree-sitter-md v0.5.3 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling tree-sitter-json v0.24.8 [INFO] [stderr] Compiling tree-sitter-toml-ng v0.7.0 [INFO] [stderr] Compiling tree-sitter-bash v0.25.1 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling servo_arc v0.4.3 [INFO] [stderr] Compiling zeph-db v0.19.1 [INFO] [stderr] Compiling const-oid v0.10.2 [INFO] [stderr] Compiling rustc-hash v2.1.2 [INFO] [stderr] Compiling qdrant-client v1.17.0 [INFO] [stderr] Compiling winnow v1.0.1 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling digest v0.11.2 [INFO] [stderr] Compiling tinyvec v1.11.0 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling toml_parser v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling eventsource-stream v0.2.3 [INFO] [stderr] Compiling rand_distr v0.6.0 [INFO] [stderr] Compiling html5ever v0.39.0 [INFO] [stderr] Compiling derive_builder v0.20.2 [INFO] [stderr] Compiling fancy-regex v0.17.0 [INFO] [stderr] Compiling prost-types v0.13.5 [INFO] [stderr] Compiling serde_spanned v1.1.1 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling toml_datetime v1.1.1+spec-1.1.0 [INFO] [stderr] Compiling is-docker v0.2.0 [INFO] [stderr] Compiling semver v1.0.28 [INFO] [stderr] Compiling toml_writer v1.1.1+spec-1.1.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling fixedbitset v0.5.7 [INFO] [stderr] Compiling rmcp v1.4.0 [INFO] [stderr] Compiling petgraph v0.8.3 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling toml v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling tiktoken-rs v0.11.0 [INFO] [stderr] Compiling oauth2 v5.0.0 [INFO] [stderr] Compiling is-wsl v0.4.0 [INFO] [stderr] Compiling scrape-core v0.2.5 [INFO] [stderr] Compiling process-wrap v9.1.0 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling rmcp-macros v1.4.0 [INFO] [stderr] Compiling sha2 v0.11.0 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling sse-stream v0.2.2 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling pastey v0.2.1 [INFO] [stderr] Compiling pathdiff v0.2.3 [INFO] [stderr] Compiling open v5.3.3 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling rustls-platform-verifier v0.6.2 [INFO] [stderr] Compiling hyper-rustls v0.27.8 [INFO] [stderr] Compiling tonic v0.12.3 [INFO] [stderr] Compiling reqwest v0.13.2 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling ollama-rs v0.3.4 [INFO] [stderr] Compiling zeph-tools v0.19.1 [INFO] [stderr] Compiling zeph-llm v0.19.1 [INFO] [stderr] Compiling sqlx v0.8.6 [INFO] [stderr] Compiling zeph-memory v0.19.1 [INFO] [stderr] Compiling zeph-mcp v0.19.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6m 29s [INFO] running `Command { std: "docker" "inspect" "d8d67f0614a55f79317d7123448a8f68c58c42868e725af7f595aa94f3ea530e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d8d67f0614a55f79317d7123448a8f68c58c42868e725af7f595aa94f3ea530e", kill_on_drop: false }` [INFO] [stdout] d8d67f0614a55f79317d7123448a8f68c58c42868e725af7f595aa94f3ea530e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1e7dde59f48126e76f3a076e0d86618816c70be199b4e6defb2690e59d755d59 [INFO] running `Command { std: "docker" "start" "-a" "1e7dde59f48126e76f3a076e0d86618816c70be199b4e6defb2690e59d755d59", kill_on_drop: false }` [INFO] [stderr] Compiling zeph-mcp v0.19.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 15.83s [INFO] running `Command { std: "docker" "inspect" "1e7dde59f48126e76f3a076e0d86618816c70be199b4e6defb2690e59d755d59", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1e7dde59f48126e76f3a076e0d86618816c70be199b4e6defb2690e59d755d59", kill_on_drop: false }` [INFO] [stdout] 1e7dde59f48126e76f3a076e0d86618816c70be199b4e6defb2690e59d755d59 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 01eb7a3da6bca36c06879c6bc52cdd0481cb596d15e84ca0c7858923b7c9ae36 [INFO] running `Command { std: "docker" "start" "-a" "01eb7a3da6bca36c06879c6bc52cdd0481cb596d15e84ca0c7858923b7c9ae36", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.68s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/zeph_mcp-5c9f75743d32d6bf) [INFO] [stdout] [INFO] [stdout] running 419 tests [INFO] [stdout] test attestation::tests::empty_expected_tools_returns_unconfigured ... ok [INFO] [stdout] test attestation::tests::fingerprint_is_deterministic ... ok [INFO] [stdout] test attestation::tests::all_expected_tools_present_returns_verified ... ok [INFO] [stdout] test attestation::tests::fingerprints_recorded_in_verified ... ok [INFO] [stdout] test attestation::tests::fingerprint_differs_for_different_descriptions ... ok [INFO] [stdout] test attestation::tests::subset_of_expected_tools_returns_verified ... ok [INFO] [stdout] test attestation::tests::unexpected_tool_returns_unexpected ... ok [INFO] [stdout] test attestation::tests::schema_drift_detected_logs_warning ... ok [INFO] [stdout] test client::tests::get_info_advertises_roots_capability ... ok [INFO] [stdout] test client::tests::handler_closed_channel_send_is_err ... ok [INFO] [stdout] test client::tests::get_info_no_roots_when_empty ... ok [INFO] [stdout] test client::tests::handler_send_event_succeeds ... ok [INFO] [stdout] test client::tests::max_tools_per_server_constant_is_positive ... ok [INFO] [stdout] test client::tests::rate_limit_allows_refresh_after_interval ... ok [INFO] [stdout] test client::tests::list_roots_returns_configured_roots ... ok [INFO] [stdout] test client::tests::list_roots_returns_empty_when_no_roots_configured ... ok [INFO] [stdout] test client::tests::ssrf_blocks_ipv6_loopback ... ok [INFO] [stdout] test client::tests::rate_limit_suppresses_second_refresh_within_interval ... ok [INFO] [stdout] test client::tests::ssrf_blocks_link_local ... ok [INFO] [stdout] test client::tests::ssrf_blocks_localhost ... ok [INFO] [stdout] test client::tests::handler_stores_max_description_bytes ... ok [INFO] [stdout] test client::tests::ssrf_blocks_loopback_ip_port ... ok [INFO] [stdout] test client::tests::ssrf_blocks_zero ... ok [INFO] [stdout] test client::tests::ssrf_error_display ... ok [INFO] [stdout] test client::tests::ssrf_rejects_invalid_url ... ok [INFO] [stdout] test client::tests::ssrf_blocks_private_10 ... ok [INFO] [stdout] test client::tests::ssrf_blocks_private_172 ... ok [INFO] [stdout] test client::tests::ssrf_blocks_private_192_explicit ... ok [INFO] [stdout] test client::tests::ssrf_blocks_private_192 ... ok [INFO] [stdout] test client::tests::list_tools_timeout_guard_maps_elapsed_to_mcp_timeout_error ... ok [INFO] [stdout] test client::tests::ssrf_blocks_localhost_hostname ... ok [INFO] [stdout] test elicitation::tests::elicitation_event_debug_does_not_expose_request_content ... ok [INFO] [stdout] test client::tests::tool_count_cap_truncates_to_max ... ok [INFO] [stdout] test elicitation::tests::elicitation_event_response_tx_delivers_result ... ok [INFO] [stdout] test client::tests::timeout_guard_maps_elapsed_to_mcp_timeout_error ... ok [INFO] [stdout] test embedding_guard::tests::cosine_distance_empty_vectors ... ok [INFO] [stdout] test embedding_guard::tests::cosine_distance_identical_vectors ... ok [INFO] [stdout] test embedding_guard::tests::cosine_distance_mismatched_lengths ... ok [INFO] [stdout] test embedding_guard::tests::cosine_distance_orthogonal_vectors ... ok [INFO] [stdout] test embedding_guard::tests::cosine_distance_zero_vector ... ok [INFO] [stdout] test embedding_guard::tests::record_clean_cold_start_converges ... ok [INFO] [stdout] test embedding_guard::tests::record_clean_ema_floor_limits_drift ... ok [INFO] [stdout] test embedding_guard::tests::record_clean_updates_centroid ... ok [INFO] [stdout] test error::tests::connection_error_display ... ok [INFO] [stdout] test error::tests::error_code_is_retryable ... ok [INFO] [stdout] test error::tests::handshake_timeout_has_initialize_tool_name ... ok [INFO] [stdout] test error::tests::list_tools_timeout_has_tools_list_tool_name ... ok [INFO] [stdout] test error::tests::mcp_error_code_method ... ok [INFO] [stdout] test error::tests::server_already_connected_display ... ok [INFO] [stdout] test error::tests::server_not_found_display ... ok [INFO] [stdout] test error::tests::timeout_error_display ... ok [INFO] [stdout] test error::tests::tool_call_error_display ... ok [INFO] [stdout] test error::tests::tool_not_found_display ... ok [INFO] [stdout] test executor::tests::default_args_is_empty_object ... ok [INFO] [stdout] test executor::tests::execute_fenced_block_tool_name_contains_colon ... ok [INFO] [stdout] test executor::tests::execute_invalid_json_block_returns_error ... ok [INFO] [stdout] test executor::tests::execute_no_blocks_returns_none ... ok [INFO] [stdout] test executor::tests::execute_tool_call_by_sanitized_id_matched_but_server_missing_returns_err ... ok [INFO] [stdout] test executor::tests::execute_tool_call_by_sanitized_id_not_found_returns_none ... ok [INFO] [stdout] test executor::tests::execute_tool_call_unknown_format_returns_none ... ok [INFO] [stdout] test executor::tests::execute_tool_call_unknown_server_returns_none ... ok [INFO] [stdout] test executor::tests::execute_valid_block_tool_not_registered_returns_error ... ok [INFO] [stdout] test executor::tests::executor_construction ... ok [INFO] [stdout] test executor::tests::extract_mcp_blocks ... ok [INFO] [stdout] test executor::tests::extract_mcp_blocks_empty_input ... ok [INFO] [stdout] test executor::tests::extract_mcp_blocks_other_lang_ignored ... ok [INFO] [stdout] test executor::tests::multiple_mcp_blocks ... ok [INFO] [stdout] test executor::tests::no_mcp_blocks ... ok [INFO] [stdout] test executor::tests::parse_instruction_args_array ... ok [INFO] [stdout] test executor::tests::parse_instruction_args_nested ... ok [INFO] [stdout] test executor::tests::parse_instruction_empty_args ... ok [INFO] [stdout] test executor::tests::parse_instruction_extra_fields_ignored ... ok [INFO] [stdout] test executor::tests::parse_instruction_full ... ok [INFO] [stdout] test executor::tests::parse_instruction_invalid_json ... ok [INFO] [stdout] test executor::tests::parse_instruction_missing_server_fails ... ok [INFO] [stdout] test executor::tests::parse_instruction_missing_tool_fails ... ok [INFO] [stdout] test executor::tests::parse_instruction_no_args ... ok [INFO] [stdout] test executor::tests::set_tools_updates_definitions ... ok [INFO] [stdout] test executor::tests::tool_definitions_empty_when_no_tools ... ok [INFO] [stdout] test executor::tests::tool_definitions_returns_sanitized_names ... ok [INFO] [stdout] test executor::tests::tool_definitions_sanitized_id_has_no_colon ... ok [INFO] [stdout] test executor::tests::tool_definitions_sanitized_id_matches_expected_pattern ... ok [INFO] [stdout] test manager::tests::add_server_command_not_allowed_preserves_message ... ok [INFO] [stdout] test manager::tests::add_server_http_nonexistent_returns_connection_error ... ok [INFO] [stdout] test manager::tests::add_server_nonexistent_binary_returns_command_not_allowed ... ok [INFO] [stdout] test embedding_guard::tests::check_async_warm_path_anomalous_result ... ok [INFO] [stdout] test embedding_guard::tests::check_async_embedding_failure_is_fail_open ... ok [INFO] [stdout] test embedding_guard::tests::check_async_warm_path_normal_result ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_no_store_is_noop ... ok [INFO] [stdout] test embedding_guard::tests::check_regex_injection_detected ... ok [INFO] [stdout] test embedding_guard::tests::check_async_cold_start_sends_regex_fallback ... ok [INFO] [stdout] test embedding_guard::tests::check_regex_clean_text ... ok [INFO] [stdout] test manager::tests::call_tool_different_missing_servers ... ok [INFO] [stdout] test manager::tests::call_tool_server_not_found ... ok [INFO] [stdout] test manager::tests::connect_all_emits_status_messages ... ok [INFO] [stdout] test manager::tests::connect_all_skips_failing_servers ... ok [INFO] [stdout] test manager::tests::connect_all_with_http_entries_skips_failing ... ok [INFO] [stdout] test manager::tests::elicitation_channel_is_bounded_by_capacity ... ok [INFO] [stdout] test client::tests::handler_sanitizes_injection_in_description ... ok [INFO] [stdout] test manager::tests::ingest_tools_assigns_security_meta_from_config ... ok [INFO] [stdout] test manager::tests::ingest_tools_assigns_security_meta_from_heuristic ... ok [INFO] [stdout] test manager::tests::ingest_tools_data_flow_blocks_high_sensitivity_on_untrusted ... ok [INFO] [stdout] test manager::tests::ingest_tools_sandboxed_empty_allowlist_returns_no_tools ... ok [INFO] [stdout] test manager::tests::ingest_tools_sandboxed_nonempty_allowlist_filters_correctly ... ok [INFO] [stdout] test manager::tests::ingest_tools_sanitize_runs_before_filtering ... ok [INFO] [stdout] test manager::tests::ingest_tools_trusted_returns_all_tools_unsanitized_by_trust ... ok [INFO] [stdout] test manager::tests::ingest_tools_untrusted_explicit_empty_allowlist_denies_all ... ok [INFO] [stdout] test manager::tests::ingest_tools_untrusted_none_allowlist_returns_all_with_warning ... ok [INFO] [stdout] test manager::tests::ingest_tools_untrusted_nonempty_allowlist_filters_to_listed_only ... ok [INFO] [stdout] test manager::tests::is_server_connected_returns_true_for_connected_server ... ok [INFO] [stdout] test manager::tests::list_servers_empty ... ok [INFO] [stdout] test manager::tests::is_server_connected_returns_false_for_missing_server ... ok [INFO] [stdout] test manager::tests::list_servers_returns_sorted ... ok [INFO] [stdout] test manager::tests::manager_new_stores_configs ... ok [INFO] [stdout] test manager::tests::refresh_task_multiple_servers_combined ... ok [INFO] [stdout] test manager::tests::refresh_task_updates_watch_channel ... ok [INFO] [stdout] test manager::tests::remove_server_cleans_up_server_tools ... ok [INFO] [stdout] test manager::tests::remove_server_not_found_returns_error ... ok [INFO] [stdout] test manager::tests::remove_server_preserves_other_entries ... ok [INFO] [stdout] test manager::tests::restriction_level_ordering ... ok [INFO] [stdout] test manager::tests::restriction_level_trusted_is_zero ... ok [INFO] [stdout] test manager::tests::sandboxed_server_cannot_elicit_regardless_of_config ... ok [INFO] [stdout] test manager::tests::server_entry_clone ... ok [INFO] [stdout] test manager::tests::server_entry_debug ... ok [INFO] [stdout] test manager::tests::server_entry_default_trust_is_untrusted_and_allowlist_empty ... ok [INFO] [stdout] test manager::tests::server_with_elicitation_disabled_gets_no_sender ... ok [INFO] [stdout] test manager::tests::shutdown_all_shared_clears_connected_server_ids ... ok [INFO] [stdout] test manager::tests::refresh_task_replaces_tools_for_same_server ... ok [INFO] [stdout] test manager::tests::subscribe_returns_receiver_with_empty_initial_value ... ok [INFO] [stdout] test manager::tests::transport_http_clone ... ok [INFO] [stdout] test manager::tests::shutdown_all_terminates_refresh_task ... ok [INFO] [stdout] test manager::tests::transport_http_debug ... ok [INFO] [stdout] test manager::tests::transport_stdio_clone ... ok [INFO] [stdout] test manager::tests::transport_stdio_debug ... ok [INFO] [stdout] test manager::tests::trust_level_default_is_untrusted ... ok [INFO] [stdout] test manager::tests::trust_level_serde_roundtrip ... ok [INFO] [stdout] test manager::tests::untrusted_server_with_elicitation_enabled_receives_sender ... ok [INFO] [stdout] test manager::tests::validate_roots_empty_returns_empty ... ok [INFO] [stdout] test manager::tests::validate_roots_file_uri_is_kept ... ok [INFO] [stdout] test manager::tests::validate_roots_http_uri_is_filtered_out ... ok [INFO] [stdout] test manager::tests::validate_roots_file_uri_traversal_is_canonicalized ... ok [INFO] [stdout] test manager::tests::validate_roots_mixed_uris_keeps_only_file ... ok [INFO] [stdout] test manager::tests::validate_roots_missing_path_is_kept_with_warning ... ok [INFO] [stdout] test manager::tests::validate_roots_non_file_uri_is_filtered_out ... ok [INFO] [stdout] test manager::tests::validate_roots_path_traversal_in_uri_is_filtered_as_non_file ... ok [INFO] [stdout] test manager::tests::validate_roots_preserves_name ... ok [INFO] [stdout] test oauth::tests::parse_callback_params_missing_code ... ok [INFO] [stdout] test oauth::tests::oauth_error_variants_display ... ok [INFO] [stdout] test oauth::tests::parse_callback_params_missing_state ... ok [INFO] [stdout] test oauth::tests::parse_callback_params_ok ... ok [INFO] [stdout] test oauth::tests::urlencoding_decode_basic ... ok [INFO] [stdout] test oauth::tests::validate_oauth_metadata_urls_blocks_private_jwks_uri ... ok [INFO] [stdout] test oauth::tests::validate_oauth_metadata_urls_blocks_private_authorization_endpoint ... ok [INFO] [stdout] test oauth::tests::validate_oauth_metadata_urls_blocks_private_token_endpoint ... ok [INFO] [stdout] test policy::tests::allowlist_blocks_unlisted_tool ... ok [INFO] [stdout] test policy::tests::allowlist_permits_listed_tool ... ok [INFO] [stdout] test policy::tests::data_flow_high_sensitivity_sandboxed_blocked ... ok [INFO] [stdout] test policy::tests::data_flow_high_sensitivity_trusted_allowed ... ok [INFO] [stdout] test policy::tests::data_flow_high_sensitivity_untrusted_blocked ... ok [INFO] [stdout] test policy::tests::data_flow_low_sensitivity_any_trust_allowed ... ok [INFO] [stdout] test policy::tests::data_flow_medium_sensitivity_sandboxed_warns_but_allows ... ok [INFO] [stdout] test policy::tests::data_flow_medium_sensitivity_trusted_allowed ... ok [INFO] [stdout] test policy::tests::data_flow_medium_sensitivity_untrusted_allowed ... ok [INFO] [stdout] test policy::tests::data_flow_none_sensitivity_any_trust_allowed ... ok [INFO] [stdout] test policy::tests::data_flow_violation_message_descriptive ... ok [INFO] [stdout] test policy::tests::denied_tool_blocked ... ok [INFO] [stdout] test policy::tests::deny_takes_precedence_over_allowlist ... ok [INFO] [stdout] test policy::tests::no_policy_allows_any_tool ... ok [INFO] [stdout] test policy::tests::policy_violation_messages_are_descriptive ... ok [INFO] [stdout] test policy::tests::rate_limit_blocks_after_threshold ... ok [INFO] [stdout] test policy::tests::unknown_server_is_allowed ... ok [INFO] [stdout] test prober::tests::probe_descriptions_empty_returns_no_delta ... ok [INFO] [stdout] test prober::tests::probe_descriptions_injection_returns_block ... ok [INFO] [stdout] test prober::tests::probe_descriptions_clean_returns_positive_delta ... ok [INFO] [stdout] test prober::tests::probe_patterns_compiled ... ok [INFO] [stdout] test prober::tests::probe_descriptions_multiple_clean ... ok [INFO] [stdout] test prober::tests::scan_for_injection_detects_ignore_instructions ... ok [INFO] [stdout] test prober::tests::scan_for_injection_detects_role_override ... ok [INFO] [stdout] test prober::tests::scan_for_injection_empty_text ... ok [INFO] [stdout] test prompt::tests::empty_tools_returns_empty ... ok [INFO] [stdout] test prompt::tests::multiple_tools_prompt ... ok [INFO] [stdout] test prompt::tests::prompt_contains_parameters ... ok [INFO] [stdout] test prompt::tests::single_tool_prompt ... ok [INFO] [stdout] test pruning::tests::always_include_bypasses_max_tools_cap ... ok [INFO] [stdout] test prober::tests::scan_for_injection_clean_text ... ok [INFO] [stdout] test pruning::tests::always_include_matches_bare_name_across_servers ... ok [INFO] [stdout] test pruning::tests::always_include_pinned ... ok [INFO] [stdout] test pruning::tests::below_min_detected_early_return ... ok [INFO] [stdout] test pruning::tests::cache_miss_on_message_change ... ok [INFO] [stdout] test pruning::tests::cache_miss_on_tool_list_change ... ok [INFO] [stdout] test pruning::tests::cache_negative_hit_clears_on_reset ... ok [INFO] [stdout] test pruning::tests::cache_negative_hit_skips_llm ... ok [INFO] [stdout] test pruning::tests::description_sanitization_strips_control_chars_and_caps ... ok [INFO] [stdout] test pruning::tests::cache_positive_hit ... ok [INFO] [stdout] test pruning::tests::llm_failure_propagates ... ok [INFO] [stdout] test pruning::tests::max_tools_cap_respected ... ok [INFO] [stdout] test pruning::tests::max_tools_zero_means_no_cap ... ok [INFO] [stdout] test pruning::tests::parse_array_with_markdown_fences ... ok [INFO] [stdout] test pruning::tests::parse_empty_array ... ok [INFO] [stdout] test pruning::tests::parse_array_with_preamble ... ok [INFO] [stdout] test pruning::tests::parse_invalid_returns_error ... ok [INFO] [stdout] test pruning::tests::parse_error_propagates ... ok [INFO] [stdout] test pruning::tests::parse_plain_array ... ok [INFO] [stdout] test registry::tests::content_hash_changes_on_modification ... ok [INFO] [stdout] test registry::tests::content_hash_deterministic ... ok [INFO] [stdout] test registry::tests::content_hash_different_name_different_hash ... ok [INFO] [stdout] test registry::tests::content_hash_different_server_same_name ... ok [INFO] [stdout] test registry::tests::content_hash_different_schema ... ok [INFO] [stdout] test registry::tests::content_hash_length_is_blake3_hex ... ok [INFO] [stdout] test registry::tests::mcp_tool_owned_embed_text ... ok [INFO] [stdout] test registry::tests::mcp_tool_owned_key ... ok [INFO] [stdout] test registry::tests::mcp_tool_owned_payload_has_key ... ok [INFO] [stdout] test registry::tests::registry_construction_with_ops ... ok [INFO] [stdout] test registry::tests::search_empty_registry_returns_empty ... ok [INFO] [stdout] test registry::tests::search_with_embedding_failure_returns_empty ... ok [INFO] [stdout] test registry::tests::search_with_zero_limit ... ok [INFO] [stdout] test registry::tests::sync_stats_default ... ok [INFO] [stdout] test registry::tests::sync_with_unreachable_qdrant_fails ... ok [INFO] [stdout] test registry::tests::sync_with_empty_tools_and_unreachable_qdrant_fails ... ok [INFO] [stdout] test sanitize::tests::base64_payload_detected ... ok [INFO] [stdout] test sanitize::tests::act_as_if_detected ... ok [INFO] [stdout] test sanitize::tests::clean_name_passes_through_unchanged ... ok [INFO] [stdout] test sanitize::tests::clean_description_passes_through_unchanged ... ok [INFO] [stdout] test sanitize::tests::cross_ref_deduplicated ... ok [INFO] [stdout] test sanitize::tests::cross_ref_detected_info_severity ... ok [INFO] [stdout] test sanitize::tests::cross_ref_hyphenated_tool_name_matched ... ok [INFO] [stdout] test sanitize::tests::delimiter_escape_external_data_detected ... ok [INFO] [stdout] test sanitize::tests::cross_ref_high_severity_when_source_has_injection ... ok [INFO] [stdout] test sanitize::tests::delimiter_escape_tool_output_detected ... ok [INFO] [stdout] test sanitize::tests::description_at_exactly_max_bytes_not_truncated ... ok [INFO] [stdout] test sanitize::tests::developer_mode_detected ... ok [INFO] [stdout] test sanitize::tests::description_truncated_at_max_bytes ... ok [INFO] [stdout] test sanitize::tests::disregard_instructions_detected ... ok [INFO] [stdout] test sanitize::tests::empty_description_stays_empty ... ok [INFO] [stdout] test sanitize::tests::flagged_parameters_populated_on_schema_injection ... ok [INFO] [stdout] test sanitize::tests::forget_everything_detected ... ok [INFO] [stdout] test sanitize::tests::html_image_exfil_detected ... ok [INFO] [stdout] test sanitize::tests::intent_anchor_wrap_basic_structure ... ok [INFO] [stdout] test sanitize::tests::intent_anchor_wrap_empty_content ... ok [INFO] [stdout] test sanitize::tests::intent_anchor_wrap_escapes_tool_output_prefix_in_content ... ok [INFO] [stdout] test sanitize::tests::intent_anchor_wrap_nonce_is_unique_per_call ... ok [INFO] [stdout] test sanitize::tests::jailbreak_dan_detected ... ok [INFO] [stdout] test sanitize::tests::injection_in_description_replaces_entire_field ... ok [INFO] [stdout] test sanitize::tests::markdown_image_exfil_uppercase_protocol_detected ... ok [INFO] [stdout] test sanitize::tests::name_all_special_chars_returns_unnamed_fallback ... ok [INFO] [stdout] test sanitize::tests::name_at_exactly_max_len_not_truncated ... ok [INFO] [stdout] test sanitize::tests::name_empty_returns_unnamed_fallback ... ok [INFO] [stdout] test sanitize::tests::name_truncated_at_max_len ... ok [INFO] [stdout] test sanitize::tests::name_with_special_chars_cleaned ... ok [INFO] [stdout] test sanitize::tests::name_with_xml_injection_cleaned ... ok [INFO] [stdout] test sanitize::tests::markdown_image_exfil_detected ... ok [INFO] [stdout] test sanitize::tests::new_directive_detected ... ok [INFO] [stdout] test sanitize::tests::new_persona_in_tool_description_not_flagged ... ok [INFO] [stdout] test sanitize::tests::no_cross_ref_for_short_tool_names ... ok [INFO] [stdout] test sanitize::tests::no_cross_ref_when_single_tool ... ok [INFO] [stdout] test sanitize::tests::override_directives_detected ... ok [INFO] [stdout] test sanitize::tests::role_override_detected ... ok [INFO] [stdout] test sanitize::tests::sanitize_for_log_escapes_control_chars ... ok [INFO] [stdout] test sanitize::tests::reveal_instructions_detected ... ok [INFO] [stdout] test sanitize::tests::sanitize_for_log_truncates_long_input ... ok [INFO] [stdout] test sanitize::tests::sanitize_result_flagged_patterns_include_pattern_name ... ok [INFO] [stdout] test sanitize::tests::sanitize_result_multiple_injections_counted ... ok [INFO] [stdout] test sanitize::tests::sanitize_result_flagged_patterns_exact_pattern_name ... ok [INFO] [stdout] test sanitize::tests::sanitize_result_no_injections_zero_count ... ok [INFO] [stdout] test sanitize::tests::sanitize_result_single_injection_counted ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_clean_tool_unchanged ... ok [INFO] [stdout] test sanitize::tests::sanitize_result_schema_injection_counted ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_description_cap_2048_default ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_description_cap_configurable ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_empty_vec_no_panic ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_injection_in_description ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_sanitizes_name ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_sanitizes_schema_strings ... ok [INFO] [stdout] test sanitize::tests::schema_clean_strings_not_modified ... ok [INFO] [stdout] test sanitize::tests::schema_deep_recursion_capped ... ok [INFO] [stdout] test sanitize::tests::schema_deep_recursion_capped_injection_preserved ... ok [INFO] [stdout] test sanitize::tests::schema_description_sanitized ... ok [INFO] [stdout] test sanitize::tests::schema_enum_values_sanitized ... ok [INFO] [stdout] test sanitize::tests::schema_string_truncated_at_max_bytes ... ok [INFO] [stdout] test sanitize::tests::schema_title_sanitized ... ok [INFO] [stdout] test sanitize::tests::server_id_clean_value_preserved ... ok [INFO] [stdout] test sanitize::tests::server_id_empty_uses_fallback ... ok [INFO] [stdout] test sanitize::tests::server_id_xml_injection_cleaned ... ok [INFO] [stdout] test sanitize::tests::strip_format_chars_removes_directional_formatting ... ok [INFO] [stdout] test sanitize::tests::strip_format_chars_removes_soft_hyphen ... ok [INFO] [stdout] test sanitize::tests::strip_format_chars_removes_tags_block ... ok [INFO] [stdout] test sanitize::tests::system_prompt_leak_detected ... ok [INFO] [stdout] test sanitize::tests::tags_block_bypass_defeated ... ok [INFO] [stdout] test sanitize::tests::truncate_instructions_empty_unchanged ... ok [INFO] [stdout] test sanitize::tests::truncate_instructions_exact_limit_unchanged ... ok [INFO] [stdout] test sanitize::tests::truncate_instructions_over_limit_appends_ellipsis ... ok [INFO] [stdout] test sanitize::tests::truncate_instructions_sanitizes_injection ... ok [INFO] [stdout] test sanitize::tests::truncate_instructions_short_string_unchanged ... ok [INFO] [stdout] test sanitize::tests::truncate_instructions_utf8_safe ... ok [INFO] [stdout] test sanitize::tests::truncate_operates_on_normalized_not_original ... ok [INFO] [stdout] test sanitize::tests::unicode_bypass_via_zero_width_char_is_detected ... ok [INFO] [stdout] test sanitize::tests::unicode_truncation_safe_at_char_boundary ... ok [INFO] [stdout] test sanitize::tests::xml_system_tag_detected ... ok [INFO] [stdout] test sanitize::tests::xml_tag_injection_mixed_case_detected ... ok [INFO] [stdout] test sanitize::tests::xml_tag_injection_uppercase_detected ... ok [INFO] [stdout] test security::tests::allows_absolute_path_when_explicitly_listed ... ok [INFO] [stdout] test security::tests::allows_default_commands ... ok [INFO] [stdout] test security::tests::allows_empty_env ... ok [INFO] [stdout] test security::tests::allows_extra_command ... ok [INFO] [stdout] test security::tests::allows_glob_wildcard_matching_directory ... ok [INFO] [stdout] test security::tests::allows_safe_env_vars ... ok [INFO] [stdout] test security::tests::allows_tilde_glob_pattern ... ok [INFO] [stdout] test security::tests::blocks_all_listed_env_vars ... ok [INFO] [stdout] test security::tests::blocks_bash_func_prefix ... ok [INFO] [stdout] test security::tests::blocks_dyld_insert_libraries ... ok [INFO] [stdout] test security::tests::blocks_java_tool_options ... ok [INFO] [stdout] test security::tests::blocks_ld_preload ... ok [INFO] [stdout] test security::tests::blocks_node_options ... ok [INFO] [stdout] test security::tests::blocks_pythonpath ... ok [INFO] [stdout] test security::tests::build_isolated_env_base_vars_present_when_set ... ok [INFO] [stdout] test security::tests::build_isolated_env_non_base_vars_absent ... ok [INFO] [stdout] test security::tests::build_isolated_env_server_env_can_override_base_var ... ok [INFO] [stdout] test security::tests::build_isolated_env_server_env_merged ... ok [INFO] [stdout] test security::tests::build_isolated_env_xdg_vars_in_base ... ok [INFO] [stdout] test security::tests::error_display_command_not_allowed ... ok [INFO] [stdout] test security::tests::error_display_env_var_blocked ... ok [INFO] [stdout] test security::tests::expand_tilde_leaves_non_tilde_unchanged ... ok [INFO] [stdout] test security::tests::expand_tilde_replaces_home ... ok [INFO] [stdout] test security::tests::rejects_absolute_path_not_in_extra_allowed ... ok [INFO] [stdout] test security::tests::rejects_commands_with_backslash ... ok [INFO] [stdout] test security::tests::rejects_commands_with_forward_slash ... ok [INFO] [stdout] test security::tests::rejects_empty_command ... ok [INFO] [stdout] test security::tests::rejects_glob_outside_allowed_directory ... ok [INFO] [stdout] test security::tests::rejects_relative_path ... ok [INFO] [stdout] test security::tests::rejects_unknown_command ... ok [INFO] [stdout] test semantic_index::tests::build_all_fail_returns_error ... ok [INFO] [stdout] test semantic_index::tests::build_empty_tools_returns_empty_index ... ok [INFO] [stdout] test semantic_index::tests::build_partial_failure_returns_partial_index ... ok [INFO] [stdout] test semantic_index::tests::select_always_include_from_failed_tools ... ok [INFO] [stdout] test semantic_index::tests::select_always_include_no_duplicate ... ok [INFO] [stdout] test semantic_index::tests::select_dimension_mismatch_skips_entry ... ok [INFO] [stdout] test semantic_index::tests::select_empty_query_returns_only_pinned ... ok [INFO] [stdout] test semantic_index::tests::select_min_similarity_filters_low_scores ... ok [INFO] [stdout] test semantic_index::tests::select_returns_top_k ... ok [INFO] [stdout] test semantic_index::tests::select_top_k_exceeds_available_tools ... ok [INFO] [stdout] test semantic_index::tests::select_top_k_zero_returns_empty ... ok [INFO] [stdout] test semantic_index::tests::select_top_k_zero_returns_pinned ... ok [INFO] [stdout] test semantic_index::tests::strategy_default_is_none ... ok [INFO] [stdout] test semantic_index::tests::strategy_none_variant_exists ... ok [INFO] [stdout] test testing::tests::execute_tool_call_error_response_propagates ... ok [INFO] [stdout] test testing::tests::execute_tool_call_exhausted_queue_errors ... ok [INFO] [stdout] test testing::tests::execute_tool_call_records_calls ... ok [INFO] [stdout] test testing::tests::execute_tool_call_returns_canned_response ... ok [INFO] [stdout] test testing::tests::execute_tool_call_unknown_tool_returns_none ... ok [INFO] [stdout] test testing::tests::tool_definitions_returns_registered_tools ... ok [INFO] [stdout] test tool::tests::data_sensitivity_ordering ... ok [INFO] [stdout] test tool::tests::detect_collisions_different_trust_collision ... ok [INFO] [stdout] test tool::tests::detect_collisions_multiple_collisions_reported ... ok [INFO] [stdout] test tool::tests::detect_collisions_no_collision_happy_path ... ok [INFO] [stdout] test tool::tests::detect_collisions_same_trust_collision ... ok [INFO] [stdout] test tool::tests::detect_collisions_unknown_server_defaults_to_untrusted ... ok [INFO] [stdout] test tool::tests::infer_bash_tool_is_shell ... ok [INFO] [stdout] test tool::tests::infer_copy_gets_filesystem_write ... ok [INFO] [stdout] test sanitize::tests::sanitize_tools_multiple_tools_all_sanitized ... ok [INFO] [stdout] test tool::tests::infer_create_dir_gets_filesystem_write ... ok [INFO] [stdout] test tool::tests::infer_curl_gets_network ... ok [INFO] [stdout] test tool::tests::infer_delete_gets_filesystem_write ... ok [INFO] [stdout] test tool::tests::infer_generic_get_weather_no_filesystem_caps ... ok [INFO] [stdout] test tool::tests::infer_database_keyword_gets_database_read ... ok [INFO] [stdout] test tool::tests::infer_http_keyword_gets_network ... ok [INFO] [stdout] test tool::tests::infer_list_models_no_filesystem_caps ... ok [INFO] [stdout] test tool::tests::infer_memory_save_gets_memory_write ... ok [INFO] [stdout] test tool::tests::infer_move_gets_filesystem_write ... ok [INFO] [stdout] test tool::tests::infer_network_fetch_gets_network ... ok [INFO] [stdout] test tool::tests::infer_read_file_gets_filesystem_read_low ... ok [INFO] [stdout] test tool::tests::infer_scrape_gets_network ... ok [INFO] [stdout] test tool::tests::infer_search_docs_no_filesystem_caps ... ok [INFO] [stdout] test tool::tests::infer_shell_tools_get_high_sensitivity ... ok [INFO] [stdout] test tool::tests::infer_save_note_no_memory_write_without_memory_keyword ... ok [INFO] [stdout] test tool::tests::infer_unknown_tool_defaults_to_low_sensitivity_empty_caps ... ok [INFO] [stdout] test tool::tests::infer_write_file_gets_filesystem_write_medium ... ok [INFO] [stdout] test tool::tests::qualified_name_format ... ok [INFO] [stdout] test tool::tests::sanitized_id_all_ascii_special_chars_replaced ... ok [INFO] [stdout] test tool::tests::sanitized_id_at_exactly_128_chars_not_truncated ... ok [INFO] [stdout] test tool::tests::sanitized_id_collision_two_different_tools ... ok [INFO] [stdout] test tool::tests::sanitized_id_longer_than_128_chars_is_truncated ... ok [INFO] [stdout] test tool::tests::sanitized_id_preserves_hyphens_and_underscores ... ok [INFO] [stdout] test tool::tests::sanitized_id_preserves_numbers ... ok [INFO] [stdout] test tool::tests::sanitized_id_replaces_colon ... ok [INFO] [stdout] test tool::tests::sanitized_id_replaces_spaces_and_dots ... ok [INFO] [stdout] test tool::tests::sanitized_id_replaces_unicode_chars ... ok [INFO] [stdout] test tool::tests::tool_clone ... ok [INFO] [stdout] test tool::tests::infer_sql_query_gets_database ... ok [INFO] [stdout] test tool::tests::tool_default_security_meta_is_none_sensitivity ... ok [INFO] [stdout] test tool::tests::tool_roundtrip_json ... ok [INFO] [stdout] test tool::tests::tool_roundtrip_json_with_security_meta ... ok [INFO] [stdout] test trust_score::tests::asymmetric_decay_above_initial ... ok [INFO] [stdout] test trust_score::tests::initial_score_is_neutral ... ok [INFO] [stdout] test trust_score::tests::asymmetric_decay_below_initial_no_change ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_cap_enforced_at_three ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_never_promotes ... ok [INFO] [stdout] test trust_score::tests::recommended_trust_level_sandboxed ... ok [INFO] [stdout] test trust_score::tests::recommended_trust_level_trusted ... ok [INFO] [stdout] test trust_score::tests::record_failure_decreases_score ... ok [INFO] [stdout] test trust_score::tests::record_injection_decreases_score_more ... ok [INFO] [stdout] test trust_score::tests::record_success_increases_score ... ok [INFO] [stdout] test trust_score::tests::score_clamped_at_one_on_repeated_successes ... ok [INFO] [stdout] test trust_score::tests::score_clamped_at_zero_on_repeated_failures ... ok [INFO] [stdout] test trust_score::tests::recommended_trust_level_untrusted ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_three_injections_three_penalties ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_demotes_server_when_score_drops ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_one_injection_one_penalty ... ok [INFO] [stdout] test manager::tests::apply_injection_penalties_zero_injections_no_penalty ... ok [INFO] [stdout] test trust_score::tests::load_and_apply_delta_applies_decay_before_delta ... ok [INFO] [stdout] test trust_score::tests::load_and_apply_delta_new_entry ... ok [INFO] [stdout] test trust_score::tests::store_init_and_roundtrip ... ok [INFO] [stdout] test trust_score::tests::store_atomic_update_does_not_reset ... ok [INFO] [stdout] test trust_score::tests::store_load_all_returns_all_servers ... ok [INFO] [stdout] test trust_score::tests::store_apply_delta_failure ... ok [INFO] [stdout] test trust_score::tests::store_load_no_write_when_no_decay ... ok [INFO] [stdout] test trust_score::tests::store_load_before_any_write_returns_none ... ok [INFO] [stdout] test trust_score::tests::store_load_persists_decay ... ok [INFO] [stdout] test trust_score::tests::store_score_clamped_between_zero_and_one ... ok [INFO] [stdout] test trust_score::tests::store_load_then_delta_operates_on_decayed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 419 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.03s [INFO] [stdout] [INFO] [stderr] Doc-tests zeph_mcp [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test src/caller.rs - caller::McpCaller (line 25) ... ignored [INFO] [stdout] test src/registry.rs - registry::McpToolRegistry (line 99) - compile ... ok [INFO] [stdout] test src/manager.rs - manager::McpManager::new (line 294) ... ok [INFO] [stdout] test src/prompt.rs - prompt::format_mcp_tools_prompt (line 18) ... ok [INFO] [stdout] test src/error.rs - error::McpError (line 48) ... ok [INFO] [stdout] test src/tool.rs - tool::McpTool::qualified_name (line 262) ... ok [INFO] [stdout] test src/tool.rs - tool::McpTool (line 86) ... ok [INFO] [stdout] test src/lib.rs - (line 65) - compile ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] all doctests ran in 2.77s; merged doctests compilation took 2.64s [INFO] running `Command { std: "docker" "inspect" "01eb7a3da6bca36c06879c6bc52cdd0481cb596d15e84ca0c7858923b7c9ae36", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "01eb7a3da6bca36c06879c6bc52cdd0481cb596d15e84ca0c7858923b7c9ae36", kill_on_drop: false }` [INFO] [stdout] 01eb7a3da6bca36c06879c6bc52cdd0481cb596d15e84ca0c7858923b7c9ae36