[INFO] cloning repository https://github.com/ynishi/agentsec [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ynishi/agentsec" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fynishi%2Fagentsec", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fynishi%2Fagentsec'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ddd97bb7f719ab382ff5acf0260965abfd75effc [INFO] testing ynishi/agentsec against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fynishi%2Fagentsec" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/ynishi/agentsec [INFO] finished tweaking git repo https://github.com/ynishi/agentsec [INFO] tweaked toml for git repo https://github.com/ynishi/agentsec written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ynishi/agentsec on toolchain 1.100.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ynishi/agentsec 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> crates/agentsec/Cargo.toml:8:16 [INFO] [stderr] | [INFO] [stderr] 7 | repository = { workspace = true } [INFO] [stderr] | -------------------- [INFO] [stderr] 8 | homepage = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `agentsec` (manifest) generated 1 warning [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f [INFO] running `Command { std: "docker" "start" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> crates/agentsec/Cargo.toml:8:16 [INFO] [stderr] | [INFO] [stderr] 7 | repository = { workspace = true } [INFO] [stderr] | -------------------- [INFO] [stderr] 8 | homepage = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `agentsec` (manifest) generated 1 warning [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling cc v1.2.64 [INFO] [stderr] Compiling http v1.4.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling log v0.4.32 [INFO] [stderr] Compiling serde_json v1.0.150 [INFO] [stderr] Compiling rustls v0.23.40 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling webpki-roots v1.0.7 [INFO] [stderr] Compiling dyn-clone v1.0.20 [INFO] [stderr] Compiling either v1.16.0 [INFO] [stderr] Compiling unicode-general-category v1.1.0 [INFO] [stderr] Compiling tinyvec v1.11.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling data-encoding v2.11.0 [INFO] [stderr] Compiling memchr v2.8.2 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling uuid v1.23.3 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling rmcp v1.7.0 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling unicode-normalization v0.1.25 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling pastey v0.2.3 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling openssl-sys v0.9.117 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling openssl v0.10.81 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling sysinfo v0.32.1 [INFO] [stderr] Compiling zerofrom-derive v0.1.7 [INFO] [stderr] Compiling yoke-derive v0.8.2 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling zerovec-derive v0.11.3 [INFO] [stderr] Compiling displaydoc v0.2.6 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling schemars_derive v1.2.1 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling clap_derive v4.6.1 [INFO] [stderr] Compiling tokio v1.52.3 [INFO] [stderr] Compiling regex v1.12.4 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling zerofrom v0.1.8 [INFO] [stderr] Compiling yoke v0.8.3 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling zerovec v0.11.6 [INFO] [stderr] Compiling zerotrie v0.2.4 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling tinystr v0.8.3 [INFO] [stderr] Compiling potential_utf v0.1.5 [INFO] [stderr] Compiling clap v4.6.1 [INFO] [stderr] Compiling icu_collections v2.2.0 [INFO] [stderr] Compiling icu_locale_core v2.2.0 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling rmcp-macros v1.7.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling chrono v0.4.45 [INFO] [stderr] Compiling idna_adapter v1.2.2 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling schemars v1.2.1 [INFO] [stderr] Compiling tower-http v0.6.11 [INFO] [stderr] Compiling h2 v0.4.15 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling hyper v1.10.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling hyper-rustls v0.27.9 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling agentsec-core v0.5.0 (/opt/rustwide/workdir/crates/agentsec-core) [INFO] [stderr] Compiling agentsec-platform-claude-desktop v0.5.0 (/opt/rustwide/workdir/crates/agentsec-platform-claude-desktop) [INFO] [stderr] Compiling agentsec-platform-cursor v0.5.0 (/opt/rustwide/workdir/crates/agentsec-platform-cursor) [INFO] [stderr] Compiling agentsec-platform-claude v0.5.0 (/opt/rustwide/workdir/crates/agentsec-platform-claude) [INFO] [stderr] Compiling agentsec v0.5.0 (/opt/rustwide/workdir/crates/agentsec) [INFO] [stderr] warning: unused dependency `schemars` [INFO] [stderr] --> crates/agentsec-core/Cargo.toml:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | schemars = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `schemars` [INFO] [stderr] warning: `agentsec-core` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 3m 02s [INFO] running `Command { std: "docker" "inspect" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> crates/agentsec/Cargo.toml:8:16 [INFO] [stderr] | [INFO] [stderr] 7 | repository = { workspace = true } [INFO] [stderr] | -------------------- [INFO] [stderr] 8 | homepage = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `agentsec` (manifest) generated 1 warning [INFO] [stderr] Compiling bitflags v2.13.0 [INFO] [stderr] Compiling mio v1.2.1 [INFO] [stderr] Compiling socket2 v0.6.4 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling openssl-sys v0.9.117 [INFO] [stderr] Compiling uuid v1.23.3 [INFO] [stderr] Compiling sysinfo v0.32.1 [INFO] [stderr] Compiling nix v0.31.3 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling rmcp v1.7.0 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling tokio v1.52.3 [INFO] [stderr] Compiling openssl v0.10.81 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rustls v0.23.40 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling process-wrap v9.1.0 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling tower-http v0.6.11 [INFO] [stderr] Compiling h2 v0.4.15 [INFO] [stderr] Compiling hyper v1.10.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling hyper-rustls v0.27.9 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling agentsec-core v0.5.0 (/opt/rustwide/workdir/crates/agentsec-core) [INFO] [stderr] Compiling agentsec-platform-claude v0.5.0 (/opt/rustwide/workdir/crates/agentsec-platform-claude) [INFO] [stderr] Compiling agentsec-platform-claude-desktop v0.5.0 (/opt/rustwide/workdir/crates/agentsec-platform-claude-desktop) [INFO] [stderr] Compiling agentsec-platform-cursor v0.5.0 (/opt/rustwide/workdir/crates/agentsec-platform-cursor) [INFO] [stderr] Compiling agentsec v0.5.0 (/opt/rustwide/workdir/crates/agentsec) [INFO] [stderr] warning: unused dependency `schemars` [INFO] [stderr] --> crates/agentsec-core/Cargo.toml:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | schemars = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `schemars` [INFO] [stderr] warning: `agentsec-core` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1m 59s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3` [INFO] running `Command { std: "docker" "inspect" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> crates/agentsec/Cargo.toml:8:16 [INFO] [stderr] | [INFO] [stderr] 7 | repository = { workspace = true } [INFO] [stderr] | -------------------- [INFO] [stderr] 8 | homepage = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `agentsec` (manifest) generated 1 warning [INFO] [stderr] warning: unused dependency `schemars` [INFO] [stderr] --> crates/agentsec-core/Cargo.toml:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | schemars = { workspace = true } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `schemars` [INFO] [stderr] warning: `agentsec-core` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.44s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/agentsec/49b975942d4d5792/out/agentsec-49b975942d4d5792) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test mcp::resources::tests::find_by_uri_rejects_unknown_slug ... ok [INFO] [stdout] test mcp::resources::tests::guides_have_non_empty_slug_and_body ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/release/build/agentsec/34d84788aebf7f8c/out/agentsec-34d84788aebf7f8c) [INFO] [stdout] test mcp::resources::tests::find_by_uri_round_trip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/e2e_cli_blacklist.rs (/opt/rustwide/target/release/build/agentsec/f980e5e5460cdb52/out/e2e_cli_blacklist-f980e5e5460cdb52) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test blacklist_with_no_servers_emits_notice ... ok [INFO] [stdout] test blacklist_classifies_known_good_typosquat_and_unknown ... ok [INFO] [stdout] test blacklist_refresh_failure_falls_back_to_cache_or_builtin ... ok [INFO] [stdout] test blacklist_refresh_pulls_from_source_and_caches ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s [INFO] [stdout] [INFO] [stderr] Running tests/e2e_cli_diff.rs (/opt/rustwide/target/release/build/agentsec/df570c2aa76f7a74/out/e2e_cli_diff-df570c2aa76f7a74) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test diff_without_baseline_prints_baseline_notice ... ok [INFO] [stdout] test diff_after_scan_reports_no_changes_and_does_not_persist ... ok [INFO] [stdout] test session_start_summary_includes_diff_line ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/e2e_cli_plain.rs (/opt/rustwide/target/release/build/agentsec/d77032b3ede237db/out/e2e_cli_plain-d77032b3ede237db) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test enable_when_target_missing_reports_skipped ... ok [INFO] [stdout] test enable_dry_run_does_not_touch_filesystem ... ok [INFO] [stdout] test restore_with_no_ledger_is_a_noop ... ok [INFO] [stdout] test enable_with_no_stub_renames_only ... ok [INFO] [stderr] Running tests/e2e_cli_stop.rs (/opt/rustwide/target/release/build/agentsec/8fa45c0cd7d0bad2/out/e2e_cli_stop-8fa45c0cd7d0bad2) [INFO] [stdout] test enable_then_status_then_restore_round_trip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test stop_dry_run_against_empty_pattern_set_reports_no_matches ... ok [INFO] [stdout] test stop_self_protection_excludes_own_binary_name ... ok [INFO] [stdout] test stop_dry_run_lists_patterns_in_header ... ok [INFO] [stdout] test stop_apply_with_empty_pattern_set_is_safe_no_op ... ok [INFO] [stderr] Running tests/e2e_hook.rs (/opt/rustwide/target/release/build/agentsec/2c9cdf14a91f3e5f/out/e2e_hook-2c9cdf14a91f3e5f) [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test user_prompt_submit_falls_back_to_raw_stdin ... ok [INFO] [stdout] test user_prompt_submit_clean_exits_zero ... ok [INFO] [stdout] test user_prompt_submit_uses_text_field_too ... ok [INFO] [stdout] test unknown_hook_name_exits_two ... ok [INFO] [stdout] test user_prompt_submit_blocked_exits_one ... ok [INFO] [stdout] test session_start_writes_summary_and_never_blocks ... ok [INFO] [stdout] test session_start_bell_notification_on_changes ... ok [INFO] [stdout] test session_start_bell_silent_when_no_changes ... ok [INFO] [stdout] test user_prompt_submit_suspicious_exits_zero ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/e2e_mcp.rs (/opt/rustwide/target/release/build/agentsec/79cad01dd0339bdf/out/e2e_mcp-79cad01dd0339bdf) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stderr] 2026-10-18T05:15:57.624423Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.625009Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.625055Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.628474Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.628982Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.629536Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.629743Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.629852Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stdout] test paste_inspect_three_plus_matches_is_blocked ... ok [INFO] [stderr] 2026-10-18T05:15:57.630260Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.631017Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.631508Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.631666Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.632019Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.632327Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.632482Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.632790Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.632962Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.633267Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.633287Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stdout] test paste_inspect_one_match_is_suspicious ... ok [INFO] [stderr] 2026-10-18T05:15:57.635144Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.636038Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.636091Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.636147Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.636559Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.636787Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.637363Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.637514Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.637640Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.637934Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.638033Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.638058Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.638091Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.638099Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.638126Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stdout] test registry_check_with_empty_config_reports_no_servers ... ok [INFO] [stderr] 2026-10-18T05:15:57.638259Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stdout] test paste_inspect_unicode_rtl_override_is_flagged ... ok [INFO] [stderr] 2026-10-18T05:15:57.638795Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.639030Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.639123Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.639148Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.640272Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.640415Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.640771Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stderr] 2026-10-18T05:15:57.640914Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.640939Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.641249Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stdout] test list_tools_advertises_full_surface ... ok [INFO] [stderr] 2026-10-18T05:15:57.641374Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stdout] test scan_second_run_diffs_against_first ... ok [INFO] [stderr] 2026-10-18T05:15:57.645509Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.645607Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stderr] 2026-10-18T05:15:57.645619Z  INFO serve_inner: rmcp::service: Service initialized as server peer_info=Some(InitializeRequestParams { meta: None, protocol_version: ProtocolVersion("2025-11-25"), capabilities: ClientCapabilities { experimental: None, extensions: None, roots: None, sampling: None, elicitation: None, tasks: None }, client_info: Implementation { name: "rmcp", title: None, version: "1.7.0", description: None, icons: None, website_url: None } }) [INFO] [stderr] 2026-10-18T05:15:57.646175Z  INFO serve_inner: rmcp::service: received notification notification=InitializedNotification(NotificationNoParam { method: InitializedNotificationMethod, extensions: Extensions }) [INFO] [stderr] 2026-10-18T05:15:57.646263Z  INFO serve_inner: rmcp::handler::server: client initialized [INFO] [stdout] test scan_diff_without_baseline_returns_notice ... ok [INFO] [stderr] 2026-10-18T05:15:57.647586Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.647643Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stdout] test scan_returns_markdown_report ... ok [INFO] [stdout] test paste_inspect_clean_returns_clean_verdict ... ok [INFO] [stdout] test scan_diff_after_scan_reports_no_changes ... ok [INFO] [stderr] 2026-10-18T05:15:57.682336Z  WARN serve_inner: rmcp::service: response error id=1 error=ErrorData { code: ErrorCode(-32603), message: "http error: error sending request for url (http://127.0.0.1:1/does-not-exist)", data: None } [INFO] [stderr] 2026-10-18T05:15:57.683440Z  INFO serve_inner: rmcp::service: input stream terminated [INFO] [stderr] 2026-10-18T05:15:57.683576Z  INFO serve_inner: rmcp::service: serve finished quit_reason=Closed [INFO] [stdout] test web_fetch_invalid_url_returns_error ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/agentsec-core/0bb03cf7929230e4/out/agentsec_core-0bb03cf7929230e4) [INFO] [stdout] [INFO] [stdout] running 134 tests [INFO] [stdout] test config::tests::paste_threshold_invalid_env_uses_default ... ok [INFO] [stdout] test config::tests::paste_threshold_override_via_env ... ok [INFO] [stdout] test config::tests::empty_env_uses_all_defaults ... ok [INFO] [stdout] test config::tests::hook_invalid_env_falls_back_to_default ... ok [INFO] [stdout] test config::tests::hook_auto_diff_accepts_aliases ... ok [INFO] [stdout] test config::tests::hook_project_check_disabled_via_env ... ok [INFO] [stdout] test config::tests::hook_flags_default_to_enabled ... ok [INFO] [stdout] test config::tests::empty_api_key_treated_as_absent ... ok [INFO] [stdout] test config::tests::agentsec_home_overrides_default ... ok [INFO] [stdout] test config::tests::home_only_derives_agentsec_home ... ok [INFO] [stdout] test config::tests::api_key_and_model_are_picked_up ... ok [INFO] [stdout] test config::tests::web_timeout_override_via_env ... ok [INFO] [stdout] test diagnostics::tests::format_size_reports_units ... ok [INFO] [stdout] test diagnostics::tests::extract_hook_name_handles_full_path ... ok [INFO] [stdout] test diagnostics::tests::parse_dotenv_picks_up_keys_with_line_numbers ... ok [INFO] [stdout] test diagnostics::tests::info_reports_env_with_default_for_unset_model ... ok [INFO] [stdout] test diagnostics::tests::redact_long_secret_shows_last_four_and_length ... ok [INFO] [stdout] test diagnostics::tests::doctor_flags_missing_claude_json_with_warn_not_fail ... ok [INFO] [stdout] test diagnostics::tests::redact_short_secret_is_three_stars ... ok [INFO] [stdout] test diagnostics::tests::status_reports_zero_for_empty_tempdir ... ok [INFO] [stdout] test emergency_stop::tests::default_patterns_contains_common_agents ... ok [INFO] [stdout] test diagnostics::tests::status_storage_picks_up_paste_log_files ... ok [INFO] [stdout] test emergency_stop::tests::cmdline_excerpt_truncates ... ok [INFO] [stdout] test config::tests::web_timeout_invalid_env_uses_default ... ok [INFO] [stdout] test emergency_stop::tests::stop_dry_run_marks_all_would_signal ... ok [INFO] [stdout] test emergency_stop::tests::ancestor_max_depth_constant_is_reasonable ... ok [INFO] [stdout] test installer::backup::tests::backup_nonexistent_returns_empty_path ... ok [INFO] [stdout] test installer::backup::tests::backup_creates_bak_file_with_same_content ... ok [INFO] [stdout] test diagnostics::tests::doctor_runs_without_panicking_on_empty_tempdir ... ok [INFO] [stdout] test installer::hooks::tests::add_hooks_adds_both_events ... ok [INFO] [stdout] test installer::hooks::tests::remove_hooks_preserves_non_agentsec_entries ... ok [INFO] [stdout] test config::tests::paths_methods_join_under_home ... ok [INFO] [stdout] test installer::hooks::tests::add_hooks_defensive_init_no_hooks_key ... ok [INFO] [stdout] test diagnostics::tests::status_storage_section_has_all_kinds ... ok [INFO] [stdout] test installer::mcp::tests::add_mcp_entry_force_overwrites ... ok [INFO] [stdout] test installer::tests::install_apply_creates_files ... ok [INFO] [stdout] test installer::mcp::tests::add_mcp_entry_idempotent_without_force ... ok [INFO] [stdout] test installer::mcp::tests::remove_mcp_entry_noop_when_absent ... ok [INFO] [stdout] test installer::mcp::tests::remove_mcp_entry_removes_agentsec_only ... ok [INFO] [stdout] test installer::hooks::tests::remove_hooks_removes_agentsec_entries ... ok [INFO] [stdout] test installer::tests::install_apply_skips_backup_when_all_changes_are_noop ... ok [INFO] [stdout] test installer::hooks::tests::remove_hooks_noop_when_absent ... ok [INFO] [stdout] test installer::tests::install_dry_run_no_file_mutation ... ok [INFO] [stdout] test installer::hooks::tests::add_hooks_dedup_skips_existing ... ok [INFO] [stdout] test paste::detector::tests::clean_text_no_matches ... ok [INFO] [stdout] test paste::detector::tests::inst_token_detected ... ok [INFO] [stdout] test paste::detector::tests::rtl_override_detected ... ok [INFO] [stdout] test installer::mcp::tests::add_mcp_entry_dotenv_adds_env_field ... ok [INFO] [stdout] test paste::detector::tests::zero_width_detected ... ok [INFO] [stdout] test paste::detector::tests::injection_phrase_detected ... ok [INFO] [stdout] test installer::mcp::tests::add_mcp_entry_user_scope_adds_entry ... ok [INFO] [stdout] test paste::tests::clean_paste_is_clean ... ok [INFO] [stdout] test paste::tests::single_marker_is_suspicious ... ok [INFO] [stdout] test installer::tests::uninstall_apply_skips_backup_when_nothing_to_remove ... ok [INFO] [stdout] test installer::tests::install_apply_creates_backup_when_file_existed ... ok [INFO] [stdout] test plain_mode::tests::enable_dry_run_does_not_touch_filesystem ... ok [INFO] [stdout] test plain_mode::tests::enable_renames_and_writes_stub ... ok [INFO] [stdout] test installer::tests::install_twice_is_idempotent ... ok [INFO] [stdout] test paste::tests::below_threshold_non_blocked_has_no_log ... ok [INFO] [stdout] test paste::tests::log_path_matches_persisted_file ... ok [INFO] [stdout] test paste::tests::many_markers_block ... ok [INFO] [stdout] test paste::tests::blocked_below_threshold_still_logs ... ok [INFO] [stdout] test plain_mode::tests::enable_skips_when_suspect_already_present ... ok [INFO] [stdout] test projects::tests::add_identical_root_rejected ... ok [INFO] [stdout] test plain_mode::tests::status_reflects_ledger_state ... ok [INFO] [stdout] test projects::tests::add_nonexistent_root_errors ... ok [INFO] [stdout] test projects::tests::add_then_load_roundtrip ... ok [INFO] [stdout] test projects::tests::add_overlapping_root_rejected_descendant ... ok [INFO] [stdout] test projects::tests::find_by_root_locates_canonical_match ... ok [INFO] [stdout] test projects::tests::add_overlapping_root_rejected_ancestor ... ok [INFO] [stdout] test projects::tests::empty_store_loads_when_file_absent ... ok [INFO] [stdout] test projects::tests::status_parse_accepts_three_values_case_insensitive ... ok [INFO] [stdout] test projects::tests::rebase_updates_baseline_and_last_scan ... ok [INFO] [stdout] test plain_mode::tests::missing_target_yields_skipped_missing ... ok [INFO] [stdout] test projects::tests::save_uses_atomic_rename_no_tmp_left_behind ... ok [INFO] [stdout] test projects::tests::sorted_entries_returns_deterministic_order ... ok [INFO] [stdout] test projects::tests::schema_version_defaults_to_one_on_load ... ok [INFO] [stdout] test projects::tests::update_unknown_name_errors ... ok [INFO] [stdout] test projects::tests::update_partial_leaves_other_field_intact ... ok [INFO] [stdout] test registry::tests::builtin_is_non_empty_and_contains_filesystem ... ok [INFO] [stdout] test projects::tests::validate_add_rejects_without_mutation ... ok [INFO] [stdout] test projects::tests::update_status_and_notes ... ok [INFO] [stdout] test registry::tests::cache_round_trip ... ok [INFO] [stdout] test plain_mode::tests::restore_round_trip_returns_original_content ... ok [INFO] [stdout] test projects::tests::add_duplicate_name_rejected ... ok [INFO] [stdout] test plain_mode::tests::restore_with_no_ledger_is_a_noop ... ok [INFO] [stdout] test registry::tests::levenshtein_known_pairs ... ok [INFO] [stdout] test registry::tests::closest_returns_none_when_outside_distance ... ok [INFO] [stdout] test registry::tests::load_or_builtin_falls_back_when_no_cache ... ok [INFO] [stdout] test registry::tests::closest_skips_exact_matches ... ok [INFO] [stdout] test projects::tests::touch_last_scan_does_not_change_baseline ... ok [INFO] [stdout] test registry::tests::exact_lookup_is_case_sensitive ... ok [INFO] [stdout] test registry::tests::load_or_builtin_uses_cache_when_present ... ok [INFO] [stdout] test projects::tests::validate_add_returns_canonical_root ... ok [INFO] [stdout] test registry::tests::load_resolved_local_overrides_builtin ... ok [INFO] [stdout] test registry::tests::closest_finds_typosquats_within_distance ... ok [INFO] [stdout] test registry::tests::add_local_persists_across_reload ... ok [INFO] [stdout] test registry::tests::load_resolved_local_overrides_fetched ... ok [INFO] [stdout] test registry::tests::remove_local_removes_entry ... ok [INFO] [stdout] test projects::tests::remove_returns_true_when_present_false_when_absent ... ok [INFO] [stdout] test scan::diff::tests::detects_added_modified_removed ... ok [INFO] [stdout] test scan::diff::tests::empty_diff ... ok [INFO] [stdout] test scan::diff::tests::modified_change_carries_category_through ... ok [INFO] [stdout] test registry::tests::load_resolved_empty_local_falls_back_to_builtin_only ... ok [INFO] [stdout] test scan::tests::diff_against_latest_returns_none_for_baseline ... ok [INFO] [stdout] test scan::unknown::tests::classify_one_short_name_distance_2_suppressed ... ok [INFO] [stdout] test scan::unknown::tests::classify_severity_split ... ok [INFO] [stdout] test scan::inventory::tests::path_entries_uses_probe_decompose_when_supplied ... ok [INFO] [stdout] test scan::snapshot::tests::save_then_load_roundtrip ... ok [INFO] [stdout] test scan::inventory::tests::walk_collects_files_recursively ... ok [INFO] [stdout] test scan::snapshot::tests::load_latest_returns_none_when_dir_absent ... ok [INFO] [stdout] test scan::snapshot::tests::load_by_name_returns_none_for_missing_stem ... ok [INFO] [stdout] test scan::inventory::tests::path_entries_computes_sha256_for_regular_file ... ok [INFO] [stdout] test scan::inventory::tests::path_entries_falls_back_to_whole_file_when_decompose_returns_none ... ok [INFO] [stdout] test scan::unknown::tests::known_good_is_recognised ... ok [INFO] [stdout] test scan::snapshot::tests::load_by_name_roundtrips_via_stem ... ok [INFO] [stdout] test scan::unknown::tests::classify_aggregates_dedup_count ... ok [INFO] [stdout] test scan::unknown::tests::missing_claude_json_yields_empty_result ... ok [INFO] [stdout] test scan::tests::diff_against_latest_does_not_create_new_snapshot ... ok [INFO] [stdout] test scan::unknown::tests::malformed_json_silently_skipped ... ok [INFO] [stdout] test scan::unknown::tests::per_project_servers_are_classified ... ok [INFO] [stdout] test scan::unknown::tests::typosquat_is_flagged ... ok [INFO] [stdout] test web::sanitize::regex_layer::tests::injection_marker_is_stripped ... ok [INFO] [stdout] test scan::unknown::tests::unknown_name_is_unknown ... ok [INFO] [stdout] test web::sanitize::regex_layer::tests::clean_text_passes_through ... ok [INFO] [stdout] test web::sanitize::regex_layer::tests::multiple_markers_are_all_listed ... ok [INFO] [stdout] test web::sanitize::semantic_layer::tests::extract_json_handles_prose_wrapping ... ok [INFO] [stdout] test web::sanitize::semantic_layer::tests::parse_verdict_replaces_spans ... ok [INFO] [stdout] test web::sanitize::semantic_layer::tests::parse_verdict_handles_clean ... ok [INFO] [stdout] test emergency_stop::tests::stop_apply_against_nonexistent_pid_yields_signal_failed ... ok [INFO] [stdout] test emergency_stop::tests::protected_pids_includes_own_and_at_least_one_ancestor ... ok [INFO] [stdout] test emergency_stop::tests::find_targets_with_no_patterns_returns_empty ... ok [INFO] [stdout] test emergency_stop::tests::find_targets_never_returns_own_pid ... ok [INFO] [stdout] test emergency_stop::tests::protected_pids_cycle_guard_terminates ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 134 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/agentsec-platform-claude/1affecd19137f88e/out/agentsec_platform_claude-1affecd19137f88e) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test tests::extract_mcp_servers_ignores_projects_block_in_mcp_json ... ok [INFO] [stdout] test tests::decompose_file_emits_sentinel_when_no_watched_block_present ... ok [INFO] [stdout] test tests::extract_mcp_servers_emits_per_project_only_for_claude_json ... ok [INFO] [stdout] test tests::extract_mcp_servers_returns_err_on_bad_json ... ok [INFO] [stdout] test tests::decompose_file_returns_none_for_non_local_config_category ... ok [INFO] [stdout] test tests::critical_categories_includes_local_config_and_settings ... ok [INFO] [stdout] test tests::extract_mcp_servers_empty_when_no_block ... ok [INFO] [stdout] test tests::id_is_stable ... ok [INFO] [stdout] test tests::decompose_file_emits_watched_blocks_for_local_config ... ok [INFO] [stdout] test tests::extract_mcp_servers_finds_top_level_block ... ok [INFO] [stdout] test tests::decompose_file_returns_none_for_unparseable_json ... ok [INFO] [stdout] test tests::project_rooted_paths_are_relative ... ok [INFO] [stdout] test tests::target_roots_yield_expected_categories_and_order ... ok [INFO] [stdout] test tests::mcp_config_paths_cover_global_and_project ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/agentsec-platform-claude-desktop/d886698ebfea4d8e/out/agentsec_platform_claude_desktop-d886698ebfea4d8e) [INFO] [stdout] test tests::home_rooted_paths_use_user_home ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stdout] test tests::extract_mcp_servers_empty_when_no_block ... ok [INFO] [stdout] test tests::decompose_file_default_returns_none ... ok [INFO] [stdout] test tests::home_rooted_paths_use_user_home ... ok [INFO] [stdout] test tests::target_roots_yield_expected_categories_and_order ... ok [INFO] [stdout] test tests::extract_mcp_servers_finds_top_level_block ... ok [INFO] [stdout] test tests::id_is_stable ... ok [INFO] [stdout] test tests::extract_mcp_servers_ignores_projects_block ... ok [INFO] [stdout] test tests::mcp_config_paths_returns_single_global ... ok [INFO] [stdout] test tests::critical_categories_include_mcp_only ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/agentsec-platform-cursor/451fd4d16f33a56a/out/agentsec_platform_cursor-451fd4d16f33a56a) [INFO] [stdout] test tests::extract_mcp_servers_returns_err_on_bad_json ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test tests::project_rooted_paths_are_relative ... ok [INFO] [stdout] test tests::extract_mcp_servers_finds_top_level_block ... ok [INFO] [stdout] test tests::extract_mcp_servers_empty_when_no_block ... ok [INFO] [stdout] test tests::home_rooted_paths_use_user_home ... ok [INFO] [stdout] test tests::extract_mcp_servers_returns_err_on_bad_json ... ok [INFO] [stdout] test tests::extract_mcp_servers_ignores_projects_block ... ok [INFO] [stdout] test tests::critical_categories_include_mcp_paths ... ok [INFO] [stdout] test tests::mcp_config_paths_cover_global_and_project ... ok [INFO] [stdout] test tests::target_roots_yield_expected_categories_and_order ... ok [INFO] [stdout] test tests::id_is_stable ... ok [INFO] [stdout] test tests::decompose_file_default_returns_none ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests agentsec [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 agentsec_core [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test crates/agentsec-core/src/config.rs - config::Config::from_env_lookup (line 229) ... ok [INFO] [stdout] test crates/agentsec-core/src/web/sanitize/regex_layer.rs - web::sanitize::regex_layer::strip (line 56) ... ok [INFO] [stdout] test crates/agentsec-core/src/paste/mod.rs - paste::detect (line 115) ... ok [INFO] [stdout] test crates/agentsec-core/src/paste/obfuscation.rs - paste::obfuscation::decode_chain (line 22) ... ok [INFO] [stdout] test crates/agentsec-core/src/output/markdown.rs - output::markdown::diff_summary_line (line 488) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.69s; merged doctests compilation took 0.68s [INFO] [stderr] Doc-tests agentsec_platform_claude [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 agentsec_platform_claude_desktop [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 agentsec_platform_cursor [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f", kill_on_drop: false }` [INFO] [stdout] 5257a30ed69360807748d1313d9d0d6bc5500c0aa88730371914e15f9356822f