[INFO] cloning repository https://github.com/lee-to/mcpunit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lee-to/mcpunit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flee-to%2Fmcpunit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flee-to%2Fmcpunit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f7c1c502bdc54d2bb3752830b09d9c78084ad77a
[INFO] testing lee-to/mcpunit against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flee-to%2Fmcpunit" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lee-to/mcpunit
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/lee-to/mcpunit
[INFO] tweaked toml for git repo https://github.com/lee-to/mcpunit written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lee-to/mcpunit on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lee-to/mcpunit already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wiremock v0.6.5
[INFO] [stderr]   Downloaded insta v1.47.2
[INFO] [stderr]   Downloaded rustls-webpki v0.103.13
[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" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a2b9b7b607fea1e98f2615bc8c7fd2f8923ce7c4bebdc04a9530cf0146054026
[INFO] running `Command { std: "docker" "start" "-a" "a2b9b7b607fea1e98f2615bc8c7fd2f8923ce7c4bebdc04a9530cf0146054026", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a2b9b7b607fea1e98f2615bc8c7fd2f8923ce7c4bebdc04a9530cf0146054026", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a2b9b7b607fea1e98f2615bc8c7fd2f8923ce7c4bebdc04a9530cf0146054026", kill_on_drop: false }`
[INFO] [stdout] a2b9b7b607fea1e98f2615bc8c7fd2f8923ce7c4bebdc04a9530cf0146054026
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 12bb9f8dee613d489637b73bd0172c9f9c5895eb3db50e536ed482341a5999b7
[INFO] running `Command { std: "docker" "start" "-a" "12bb9f8dee613d489637b73bd0172c9f9c5895eb3db50e536ed482341a5999b7", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling mcpunit v1.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.12s
[INFO] running `Command { std: "docker" "inspect" "12bb9f8dee613d489637b73bd0172c9f9c5895eb3db50e536ed482341a5999b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12bb9f8dee613d489637b73bd0172c9f9c5895eb3db50e536ed482341a5999b7", kill_on_drop: false }`
[INFO] [stdout] 12bb9f8dee613d489637b73bd0172c9f9c5895eb3db50e536ed482341a5999b7
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f3a7cb1f941a92cde1145293491d53850da7eb737a63024ff1ee7919c07b27f2
[INFO] running `Command { std: "docker" "start" "-a" "f3a7cb1f941a92cde1145293491d53850da7eb737a63024ff1ee7919c07b27f2", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling tokio v1.51.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling insta v1.47.2
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling mcpunit v1.4.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 24s
[INFO] running `Command { std: "docker" "inspect" "f3a7cb1f941a92cde1145293491d53850da7eb737a63024ff1ee7919c07b27f2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3a7cb1f941a92cde1145293491d53850da7eb737a63024ff1ee7919c07b27f2", kill_on_drop: false }`
[INFO] [stdout] f3a7cb1f941a92cde1145293491d53850da7eb737a63024ff1ee7919c07b27f2
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5138d56a256a30829474b551e73e8da1fd35a77728bd28d121d5e9aa4b045a00
[INFO] running `Command { std: "docker" "start" "-a" "5138d56a256a30829474b551e73e8da1fd35a77728bd28d121d5e9aa4b045a00", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.35s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mcpunit-2da5b0a4e6ed1244)
[INFO] [stdout] 
[INFO] [stdout] running 135 tests
[INFO] [stdout] test error::tests::protocol_helper_leaves_stderr_tail_empty ... ok
[INFO] [stdout] test error::tests::response_too_large_message_mentions_limit_and_size ... ok
[INFO] [stdout] test error::tests::stderr_tail_display_handles_empty ... ok
[INFO] [stdout] test error::tests::stderr_tail_joins_lines_with_newlines ... ok
[INFO] [stdout] test models::tests::finding_category_serialises_as_kebab ... ok
[INFO] [stdout] test models::tests::normalized_server_round_trips_through_json ... ok
[INFO] [stdout] test models::tests::risk_category_serialises_as_snake ... ok
[INFO] [stdout] test models::tests::score_bucket_all_is_in_declaration_order ... ok
[INFO] [stdout] test models::tests::score_bucket_serialises_lowercase ... ok
[INFO] [stdout] test models::tests::severity_score_impact_matches_contract ... ok
[INFO] [stdout] test models::tests::severity_serialises_as_lowercase ... ok
[INFO] [stdout] test error::tests::io_error_auto_converts_via_from ... ok
[INFO] [stdout] test reporters::json::tests::category_scores_are_in_declaration_order ... ok
[INFO] [stdout] test reporters::json::tests::finding_severity_is_lowercase_string ... ok
[INFO] [stdout] test reporters::json::tests::top_level_keys_are_in_expected_order ... ok
[INFO] [stdout] test reporters::json::tests::audit_section_uses_methodology_and_caveats ... ok
[INFO] [stdout] test reporters::sarif::tests::fingerprint_is_sha256_hex ... ok
[INFO] [stdout] test reporters::markdown::tests::render_contains_category_score_table ... ok
[INFO] [stdout] test reporters::markdown::tests::render_includes_total_score ... ok
[INFO] [stdout] test reporters::json::tests::finding_uses_rule_id_key ... ok
[INFO] [stdout] test reporters::json::tests::render_has_trailing_newline_and_valid_json ... ok
[INFO] [stdout] test reporters::json::tests::rules_section_has_all_registered_rules ... ok
[INFO] [stdout] test reporters::summary::tests::empty_report_has_default_summary ... ok
[INFO] [stdout] test reporters::summary::tests::bucket_summary_prioritises_security_ties ... ok
[INFO] [stdout] test reporters::terminal::tests::render_contains_expected_sections ... ok
[INFO] [stdout] test reporters::summary::tests::review_first_tools_sort_by_penalty ... ok
[INFO] [stdout] test reporters::terminal::tests::severity_is_uppercase_in_finding_lines ... ok
[INFO] [stdout] test rules::capability::tests::destructive_description_fires_on_broad_scope ... ok
[INFO] [stdout] test rules::capability::tests::exec_tool_fires_on_shell_command_pattern ... ok
[INFO] [stdout] test reporters::summary::tests::findings_are_sorted_by_impact ... ok
[INFO] [stdout] test rules::capability::tests::fs_delete_fires_on_remove_file_pattern ... ok
[INFO] [stdout] test rules::capability::tests::fs_write_fires_on_write_file_pattern ... ok
[INFO] [stdout] test rules::capability::tests::network_fires_on_socket_pattern ... ok
[INFO] [stdout] test rules::capability::tests::response_too_large_errors_at_1_mib ... ok
[INFO] [stdout] test rules::capability::tests::response_too_large_silent_below_threshold ... ok
[INFO] [stdout] test rules::capability::tests::response_too_large_warns_at_256_kib ... ok
[INFO] [stdout] test rules::capability::tests::shell_download_exec_fires_on_curl_pipe_sh ... ok
[INFO] [stdout] test rules::capability::tests::unscoped_write_fires_without_scope_hint ... ok
[INFO] [stdout] test rules::capability::tests::unscoped_write_skips_when_workspace_mentioned ... ok
[INFO] [stdout] test reporters::sarif::tests::every_result_has_at_least_one_location ... ok
[INFO] [stdout] test rules::description::tests::missing_description_fires_when_absent ... ok
[INFO] [stdout] test rules::description::tests::vague_description_flags_short_generic ... ok
[INFO] [stdout] test rules::description::tests::vague_description_ignores_specific_text ... ok
[INFO] [stdout] test reporters::sarif::tests::render_produces_valid_sarif ... ok
[INFO] [stdout] test rules::helpers::tests::alnum_tokens_extracts_lowercase_tokens ... ok
[INFO] [stdout] test rules::helpers::tests::has_scope_hint_matches_description_or_schema ... ok
[INFO] [stdout] test rules::helpers::tests::looks_like_inputful_tool_matches_on_name_only ... ok
[INFO] [stdout] test rules::helpers::tests::looks_like_inputful_tool_requires_whole_token_match ... ok
[INFO] [stdout] test rules::helpers::tests::matching_keys_preserves_key_order ... ok
[INFO] [stdout] test rules::helpers::tests::matching_markers_preserves_marker_order ... ok
[INFO] [stdout] test rules::helpers::tests::normalize_text_strips_and_lowercases ... ok
[INFO] [stdout] test reporters::sarif::tests::rules_section_has_all_registered_rules ... ok
[INFO] [stdout] test rules::helpers::tests::schema_property_names_returns_lowercased_keys ... ok
[INFO] [stdout] test rules::helpers::tests::single_quoted_list_repr_matches_markers ... ok
[INFO] [stdout] test rules::helpers::tests::single_quoted_repr_matches_common_cases ... ok
[INFO] [stdout] test rules::helpers::tests::tool_text_lower_joins_name_and_description ... ok
[INFO] [stdout] test reporters::sarif::tests::synthetic_uri_uses_tool_name_then_server_target ... ok
[INFO] [stdout] test rules::identity::tests::duplicate_names_is_silent_when_all_unique ... ok
[INFO] [stdout] test rules::identity::tests::generic_name_flags_known_noise ... ok
[INFO] [stdout] test rules::prompts::tests::argument_missing_description_fires_per_prompt ... ok
[INFO] [stdout] test rules::prompts::tests::argument_rule_silent_when_all_described ... ok
[INFO] [stdout] test rules::prompts::tests::description_matches_name_detects_stub ... ok
[INFO] [stdout] test rules::prompts::tests::description_too_short_threshold ... ok
[INFO] [stdout] test rules::identity::tests::duplicate_names_fires_once_per_collision ... ok
[INFO] [stdout] test rules::prompts::tests::duplicate_prompt_names_fires_once_per_duplicate ... ok
[INFO] [stdout] test rules::description::tests::vague_description_flags_known_phrase ... ok
[INFO] [stdout] test rules::helpers::tests::additional_properties_returns_value ... ok
[INFO] [stdout] test rules::schema::tests::arbitrary_properties_skips_false ... ok
[INFO] [stdout] test rules::schema::tests::missing_required_fires_on_optional_path ... ok
[INFO] [stdout] test rules::schema::tests::missing_required_skips_all_optional_filter_schema ... ok
[INFO] [stdout] test rules::schema::tests::missing_required_skips_when_all_critical_required ... ok
[INFO] [stdout] test rules::prompts::tests::missing_description_fires_on_none_and_empty ... ok
[INFO] [stdout] test rules::capability::tests::exec_tool_skips_without_name_marker ... ok
[INFO] [stdout] test rules::schema::tests::arbitrary_properties_fires_when_true ... ok
[INFO] [stdout] test rules::schema::tests::missing_type_fires_on_inputful_tool_with_empty_schema ... ok
[INFO] [stdout] test reporters::json::tests::schema_section_contains_merged_generator ... ok
[INFO] [stdout] test rules::schema::tests::weak_input_skips_constrained_schema ... ok
[INFO] [stdout] test rules::schema::tests::missing_type_skips_no_arg_tool ... ok
[INFO] [stdout] test rules::schema::tests::missing_type_skips_schema_with_type ... ok
[INFO] [stdout] test rules::schema::tests::weak_input_fires_on_empty_object_for_inputful_tool ... ok
[INFO] [stdout] test rules::schema::tests::weak_input_fires_on_generic_field_without_type ... ok
[INFO] [stdout] test rules::tests::all_iterates_registry_length ... ok
[INFO] [stdout] test rules::tests::make_finding_stamps_rule_metadata ... ok
[INFO] [stdout] test rules::tests::registry_has_expected_rules_in_declared_order ... ok
[INFO] [stdout] test rules::schema::tests::weak_input_skips_no_arg_tool_with_domain_request_in_description ... ok
[INFO] [stdout] test scoring::tests::findings_accumulate_by_bucket_and_rule ... ok
[INFO] [stdout] test scoring::tests::empty_findings_give_max_score ... ok
[INFO] [stdout] test rules::tests::registry_ids_are_unique ... ok
[INFO] [stdout] test scoring::tests::scan_runs_registry_against_server ... ok
[INFO] [stdout] test scoring::tests::total_score_saturates_at_zero ... ok
[INFO] [stdout] test transport::http::tests::config_rejects_bad_scheme ... ok
[INFO] [stdout] test transport::http::tests::config_rejects_empty_url ... ok
[INFO] [stdout] test transport::http::tests::content_type_classification ... ok
[INFO] [stdout] test transport::http::tests::config_target_is_http_url_form ... ok
[INFO] [stdout] test transport::http::tests::config_rejects_zero_timeout ... ok
[INFO] [stdout] test transport::http::tests::normalize_tool_payload_roundtrip ... ok
[INFO] [stdout] test transport::http::tests::sse_parser_concatenates_multiline_data ... ok
[INFO] [stdout] test transport::http::tests::sse_parser_handles_single_event ... ok
[INFO] [stdout] test transport::http::tests::scan_rejects_oversized_json_body ... ok
[INFO] [stdout] test rules::capability::tests::http_request_fires_on_url_and_fetch ... ok
[INFO] [stdout] test transport::http::tests::sse_parser_rejects_oversized_event ... ok
[INFO] [stdout] test rules::helpers::tests::schema_required_fields_filters_and_lowercases ... ok
[INFO] [stdout] test transport::http::tests::sse_parser_ignores_comments_and_metadata ... ok
[INFO] [stdout] test transport::http::tests::truncate_handles_ascii_and_utf8 ... ok
[INFO] [stdout] test rules::prompts::tests::duplicate_argument_name_fires_once_per_prompt ... ok
[INFO] [stdout] test transport::jsonrpc::tests::empty_result_uses_empty_object ... ok
[INFO] [stdout] test transport::http::tests::scan_round_trips_against_json_mock ... ok
[INFO] [stdout] test transport::jsonrpc::tests::encode_line_appends_newline ... ok
[INFO] [stdout] test transport::jsonrpc::tests::error_response_carries_error_field ... ok
[INFO] [stdout] test transport::jsonrpc::tests::notification_has_no_id_field ... ok
[INFO] [stdout] test transport::jsonrpc::tests::parses_notification ... ok
[INFO] [stdout] test transport::jsonrpc::tests::parses_response_with_error ... ok
[INFO] [stdout] test transport::http::tests::scan_parses_sse_response ... ok
[INFO] [stdout] test transport::jsonrpc::tests::parses_response_with_result ... ok
[INFO] [stdout] test transport::stdio::tests::normalize_tool_payload_copies_title_and_annotations ... ok
[INFO] [stdout] test transport::jsonrpc::tests::rejects_wrong_jsonrpc_version ... ok
[INFO] [stdout] test transport::stdio::tests::config_defaults_pin_timeout_and_size ... ok
[INFO] [stdout] test transport::stdio::tests::config_target_is_stdio_json_array ... ok
[INFO] [stdout] test transport::stdio::tests::normalize_tool_payload_accepts_minimal_tool ... ok
[INFO] [stdout] test transport::stdio::tests::normalize_tool_payload_rejects_missing_input_schema ... ok
[INFO] [stdout] test transport::stdio::tests::spawn_rejects_empty_argument ... ok
[INFO] [stdout] test transport::stdio::tests::normalize_tool_payload_rejects_non_string_description ... ok
[INFO] [stdout] test transport::stdio::tests::spawn_rejects_empty_command ... ok
[INFO] [stdout] test transport::stdio::tests::spawn_rejects_zero_timeout ... ok
[INFO] [stdout] test transport::jsonrpc::tests::parses_server_initiated_request ... ok
[INFO] [stdout] test transport::stdio::tests::spawn_rejects_zero_max_response_bytes ... ok
[INFO] [stdout] test transport::stdio::tests::trim_ascii_whitespace_strips_both_ends ... ok
[INFO] [stdout] test transport::tests::validate_protocol_version_accepts_supported ... ok
[INFO] [stdout] test transport::tests::client_info_default_uses_crate_constants ... ok
[INFO] [stdout] test transport::tests::request_id_generator_starts_at_one_and_increments ... ok
[INFO] [stdout] test transport::tests::validate_protocol_version_rejects_unknown ... ok
[INFO] [stdout] test transport::stdio::tests::scan_auto_acks_server_ping ... ok
[INFO] [stdout] test transport::http::tests::session_id_header_round_trips ... ok
[INFO] [stdout] test transport::stdio::tests::scan_round_trips_against_shell_mock ... ok
[INFO] [stdout] test transport::stdio::tests::oversized_line_surfaces_response_too_large ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 135 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/mcpunit.rs (/opt/rustwide/target/debug/deps/mcpunit-c641a217b5bd7273)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test tests::enforce_min_score_returns_zero_on_pass ... ok
[INFO] [stdout] test tests::parse_header_rejects_missing_separator ... ok
[INFO] [stdout] test tests::validate_min_score_accepts_range ... ok
[INFO] [stdout] test tests::parse_header_splits_name_and_value ... ok
[INFO] [stdout] test tests::cli_parses_test_with_url_and_headers ... ok
[INFO] [stdout] test tests::enforce_min_score_returns_three_on_fail ... ok
[INFO] [stdout] test tests::parse_header_rejects_empty_name ... ok
[INFO] [stdout] test tests::cli_parses_test_with_cmd ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test clean_server_has_minimal_findings ... ok
[INFO] [stdout] test dangerous_server_fires_expected_rules ... ok
[INFO] [stdout] test fixture_loader_handles_missing_optional_fields ... 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] [stderr]      Running tests/audit_regression.rs (/opt/rustwide/target/debug/deps/audit_regression-cfaee84f2b4b24e3)
[INFO] [stderr]      Running tests/reporter_snapshots.rs (/opt/rustwide/target/debug/deps/reporter_snapshots-b18b5db9e8f0699d)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test markdown_clean_server ... ok
[INFO] [stdout] test terminal_noisy_server ... ok
[INFO] [stdout] test terminal_clean_server ... ok
[INFO] [stderr]      Running tests/transport_http.rs (/opt/rustwide/target/debug/deps/transport_http-bc2e854884049c71)
[INFO] [stdout] test markdown_dangerous_server ... ok
[INFO] [stdout] test terminal_dangerous_server ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stderr]      Running tests/transport_stdio.rs (/opt/rustwide/target/debug/deps/transport_stdio-99f4b004dba1476b)
[INFO] [stdout] test non_2xx_response_surfaces_protocol_error ... ok
[INFO] [stdout] test scan_round_trips_json_responses ... ok
[INFO] [stdout] test scan_round_trips_sse_responses ... ok
[INFO] [stdout] test prompts_only_server_scans_and_discovers_prompts ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test scan_happy_path_with_paginated_tools_list ... ok
[INFO] [stdout] test server_exit_before_response_raises_startup_error ... ok
[INFO] [stdout] test unknown_protocol_version_fails_initialize ... ok
[INFO] [stdout] test server_error_reply_propagates_as_protocol_error ... ok
[INFO] [stdout] test prompts_only_server_scans_and_discovers_prompts ... ok
[INFO] [stdout] test resources_only_server_scans_without_protocol_error ... ok
[INFO] [stdout] test repeated_cursor_is_rejected ... ok
[INFO] [stderr]    Doc-tests mcpunit
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[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] running `Command { std: "docker" "inspect" "5138d56a256a30829474b551e73e8da1fd35a77728bd28d121d5e9aa4b045a00", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5138d56a256a30829474b551e73e8da1fd35a77728bd28d121d5e9aa4b045a00", kill_on_drop: false }`
[INFO] [stdout] 5138d56a256a30829474b551e73e8da1fd35a77728bd28d121d5e9aa4b045a00
