[INFO] fetching crate mcp-oxidized 1.2.0... [INFO] testing mcp-oxidized-1.2.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-1 [INFO] extracting crate mcp-oxidized 1.2.0 into /workspace/builds/worker-4-tc2/source [INFO] started tweaking crates.io crate mcp-oxidized 1.2.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate mcp-oxidized 1.2.0 [INFO] tweaked toml for crates.io crate mcp-oxidized 1.2.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate mcp-oxidized 1.2.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate mcp-oxidized 1.2.0 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 162209e2eaf9d6e0696aed82848a65582141172ee013e3b1b116bc9fdab5a132 [INFO] running `Command { std: "docker" "start" "-a" "162209e2eaf9d6e0696aed82848a65582141172ee013e3b1b116bc9fdab5a132", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "162209e2eaf9d6e0696aed82848a65582141172ee013e3b1b116bc9fdab5a132", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "162209e2eaf9d6e0696aed82848a65582141172ee013e3b1b116bc9fdab5a132", kill_on_drop: false }` [INFO] [stdout] 162209e2eaf9d6e0696aed82848a65582141172ee013e3b1b116bc9fdab5a132 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f21eb06d98a3d11e3ad45ba2f88fac9cf96781d1ab0f39361c4d71edf5507907 [INFO] running `Command { std: "docker" "start" "-a" "f21eb06d98a3d11e3ad45ba2f88fac9cf96781d1ab0f39361c4d71edf5507907", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling itoa v1.0.16 [INFO] [stderr] Compiling bytes v1.11.0 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling cc v1.2.50 [INFO] [stderr] Compiling ryu v1.0.21 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling rustls-pki-types v1.13.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde_json v1.0.146 [INFO] [stderr] Compiling rustls v0.23.35 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling portable-atomic v1.12.0 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling ipnet v2.11.0 [INFO] [stderr] Compiling webpki-roots v1.0.4 [INFO] [stderr] Compiling iri-string v0.7.9 [INFO] [stderr] Compiling dyn-clone v1.0.20 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling event-listener-strategy v0.5.4 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling async-lock v3.4.2 [INFO] [stderr] Compiling pastey v0.2.1 [INFO] [stderr] Compiling tagptr v0.2.0 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling urlencoding v2.1.3 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling socket2 v0.6.1 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling uuid v1.19.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling schemars_derive v1.1.0 [INFO] [stderr] Compiling rustls-webpki v0.103.8 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling rmcp-macros v0.12.0 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling url v2.5.7 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling moka v0.12.12 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling tokio-util v0.7.17 [INFO] [stderr] Compiling schemars v1.1.0 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling hyper-util v0.1.19 [INFO] [stderr] Compiling rmcp v0.12.0 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling mcp-oxidized v1.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s [INFO] running `Command { std: "docker" "inspect" "f21eb06d98a3d11e3ad45ba2f88fac9cf96781d1ab0f39361c4d71edf5507907", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f21eb06d98a3d11e3ad45ba2f88fac9cf96781d1ab0f39361c4d71edf5507907", kill_on_drop: false }` [INFO] [stdout] f21eb06d98a3d11e3ad45ba2f88fac9cf96781d1ab0f39361c4d71edf5507907 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ddb05ca7a8b21a84d1dac577153546a2b3def7714f776743183a5c14f299d2e0 [INFO] running `Command { std: "docker" "start" "-a" "ddb05ca7a8b21a84d1dac577153546a2b3def7714f776743183a5c14f299d2e0", kill_on_drop: false }` [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling tokio-util v0.7.17 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling deadpool-runtime v0.1.4 [INFO] [stderr] Compiling sdd v3.0.10 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling serial_test_derive v3.2.0 [INFO] [stderr] Compiling tempfile v3.23.0 [INFO] [stderr] Compiling scc v2.4.0 [INFO] [stderr] Compiling deadpool v0.12.3 [INFO] [stderr] Compiling rmcp v0.12.0 [INFO] [stderr] Compiling h2 v0.4.12 [INFO] [stderr] Compiling serial_test v3.2.0 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.19 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling wiremock v0.6.5 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling mcp-oxidized v1.2.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 28.29s [INFO] running `Command { std: "docker" "inspect" "ddb05ca7a8b21a84d1dac577153546a2b3def7714f776743183a5c14f299d2e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ddb05ca7a8b21a84d1dac577153546a2b3def7714f776743183a5c14f299d2e0", kill_on_drop: false }` [INFO] [stdout] ddb05ca7a8b21a84d1dac577153546a2b3def7714f776743183a5c14f299d2e0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0c42784a46f346c8b506b34ddbd470c4e7d97eafd7e257bf41572a266b37bfa1 [INFO] running `Command { std: "docker" "start" "-a" "0c42784a46f346c8b506b34ddbd470c4e7d97eafd7e257bf41572a266b37bfa1", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.80s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mcp_oxidized-c9444c4f2d8dd1bf) [INFO] [stdout] [INFO] [stdout] running 270 tests [INFO] [stdout] test config::tests::test_config_load_with_invalid_headers_graceful ... ok [INFO] [stdout] test config::tests::test_config_load_with_headers ... ok [INFO] [stdout] test config::tests::test_parse_headers_empty_value_allowed ... ok [INFO] [stdout] test config::tests::test_parse_headers_valid ... ok [INFO] [stdout] test config::tests::test_parse_headers_whitespace_only ... ok [INFO] [stdout] test config::tests::test_default_values_when_no_env_vars ... ok [INFO] [stdout] test config::tests::test_parse_headers_with_colon_in_value ... ok [INFO] [stdout] test config::tests::test_env_var_precedence ... ok [INFO] [stdout] test config::tests::test_parse_headers_empty ... ok [INFO] [stdout] test config::tests::test_parse_headers_trailing_comma ... ok [INFO] [stdout] test config::tests::test_ssl_verify_default_true ... ok [INFO] [stdout] test config::tests::test_parse_headers_empty_key_skipped ... ok [INFO] [stdout] test config::tests::test_parse_headers_trims_whitespace ... ok [INFO] [stdout] test config::tests::test_ssl_verify_any_other_value_is_true ... ok [INFO] [stdout] test config::tests::test_ssl_verify_false_explicit ... ok [INFO] [stdout] test config::tests::test_parse_headers_malformed_graceful ... ok [INFO] [stdout] test config::tests::test_url_validation_invalid_format ... ok [INFO] [stdout] test config::tests::test_url_validation_valid_https ... ok [INFO] [stdout] test error::tests::test_auth_failed_message_format ... ok [INFO] [stdout] test config::tests::test_password_file_not_found ... ok [INFO] [stdout] test error::tests::test_auth_failed_no_credentials_in_message ... ok [INFO] [stdout] test error::tests::test_config_error_from_conversion ... ok [INFO] [stdout] test config::tests::test_password_file_reading ... ok [INFO] [stdout] test config::tests::test_password_file_precedence_over_env_var ... ok [INFO] [stdout] test config::tests::test_ssl_verify_false_case_insensitive ... ok [INFO] [stdout] test config::tests::test_ssl_verify_true_explicit ... ok [INFO] [stdout] test config::tests::test_url_validation_valid_http ... ok [INFO] [stdout] test error::tests::test_auth_failed_is_not_transient ... ok [INFO] [stdout] test error::tests::test_http_error_4xx_message_format ... ok [INFO] [stdout] test error::tests::test_config_error_message_format ... ok [INFO] [stdout] test error::tests::test_http_error_display ... ok [INFO] [stdout] test error::tests::test_auth_failed_display ... ok [INFO] [stdout] test error::tests::test_context_prefix_value ... ok [INFO] [stdout] test error::tests::test_invalid_regex_display ... ok [INFO] [stdout] test error::tests::test_config_error_is_not_transient ... ok [INFO] [stdout] test error::tests::test_error_prefix_value ... ok [INFO] [stdout] test error::tests::test_invalid_regex_is_not_transient ... ok [INFO] [stdout] test error::tests::test_http_error_5xx_message_format ... ok [INFO] [stdout] test error::tests::test_node_not_found_is_not_transient ... ok [INFO] [stdout] test error::tests::test_parse_error_display ... ok [INFO] [stdout] test error::tests::test_invalid_regex_message_format ... ok [INFO] [stdout] test error::tests::test_parse_error_is_not_transient ... ok [INFO] [stdout] test error::tests::test_next_step_prefix_value ... ok [INFO] [stdout] test error::tests::test_node_not_found_handles_empty_suggestions_gracefully ... ok [INFO] [stdout] test error::tests::test_node_not_found_message_format ... ok [INFO] [stdout] test error::tests::test_node_not_found_with_single_suggestion ... ok [INFO] [stdout] test error::tests::test_node_not_found_display ... ok [INFO] [stdout] test error::tests::test_suggestions_prefix_value ... ok [INFO] [stdout] test oxidized::tests::test_basic_auth_new ... ok [INFO] [stdout] test oxidized::tests::test_cache_metadata_hit ... ok [INFO] [stdout] test oxidized::tests::test_cache_metadata_miss ... ok [INFO] [stdout] test oxidized::tests::test_cached_config_serializes ... ok [INFO] [stdout] test oxidized::tests::test_cache_metadata_serializes_correctly ... ok [INFO] [stdout] test error::tests::test_all_variants_is_transient_classification ... ok [INFO] [stdout] test oxidized::tests::test_cached_stats_serializes ... ok [INFO] [stdout] test oxidized::tests::test_cached_nodes_serializes ... ok [INFO] [stdout] test error::tests::test_parse_error_message_format ... ok [INFO] [stdout] test error::tests::test_api_unreachable_without_last_success ... ok [INFO] [stdout] test oxidized::tests::test_check_node_not_found_body_html_format ... ok [INFO] [stdout] test oxidized::tests::test_check_node_not_found_body_no_match ... ok [INFO] [stdout] test oxidized::tests::test_check_status_bad_gateway ... ok [INFO] [stdout] test oxidized::tests::test_check_status_forbidden ... ok [INFO] [stdout] test oxidized::tests::test_check_node_not_found_body_oxidized_035 ... ok [INFO] [stdout] test error::tests::test_api_unreachable_message_format ... ok [INFO] [stdout] test oxidized::tests::test_check_status_bad_request ... ok [INFO] [stdout] test error::tests::test_api_unreachable_includes_attempt_count ... ok [INFO] [stdout] test error::tests::test_api_unreachable_is_transient ... ok [INFO] [stdout] test error::tests::test_no_credentials_in_any_error_message ... ok [INFO] [stdout] test error::tests::test_all_messages_use_error_constants ... ok [INFO] [stdout] test error::tests::test_api_unreachable_no_url_credentials ... ok [INFO] [stdout] test oxidized::tests::test_client_applies_ssl_verify_false ... ok [INFO] [stdout] test oxidized::tests::test_client_combined_ssl_and_headers ... ok [INFO] [stdout] test oxidized::tests::test_check_status_unauthorized ... ok [INFO] [stdout] test oxidized::tests::test_check_status_server_error ... ok [INFO] [stdout] test oxidized::tests::test_check_status_success ... ok [INFO] [stdout] test oxidized::tests::test_client_new_without_auth ... ok [INFO] [stdout] test oxidized::tests::test_client_uses_timeout_constants ... ok [INFO] [stdout] test oxidized::tests::test_client_new_with_partial_auth_no_password ... ok [INFO] [stdout] test oxidized::tests::test_check_status_not_found ... ok [INFO] [stdout] test oxidized::tests::test_client_new_with_partial_auth_no_user ... ok [INFO] [stdout] test oxidized::tests::test_client_new_with_auth ... ok [INFO] [stdout] test oxidized::tests::test_client_applies_ssl_verify_true ... ok [INFO] [stdout] test oxidized::tests::test_client_empty_custom_headers ... ok [INFO] [stdout] test oxidized::tests::test_client_stores_multiple_custom_headers ... ok [INFO] [stdout] test oxidized::tests::test_client_with_auth_and_custom_auth ... ok [INFO] [stdout] test oxidized::tests::test_config_cache_ttl_is_2_minutes ... ok [INFO] [stdout] test oxidized::tests::test_client_with_custom_auth_case_insensitive ... ok [INFO] [stdout] test oxidized::tests::test_endpoint_format_with_encoded_group_and_name ... ok [INFO] [stdout] test oxidized::tests::test_client_stores_custom_headers ... ok [INFO] [stdout] test oxidized::tests::test_endpoint_format_with_encoded_name ... ok [INFO] [stdout] test oxidized::tests::test_client_with_auth_and_no_custom_auth ... ok [INFO] [stdout] test oxidized::tests::test_conf_search_empty_pattern_returns_empty ... ok [INFO] [stdout] test oxidized::tests::test_max_retry_attempts_is_3 ... ok [INFO] [stdout] test oxidized::tests::test_node_deserialize ... ok [INFO] [stdout] test oxidized::tests::test_invalidate_node_does_not_affect_other_nodes ... ok [INFO] [stdout] test oxidized::tests::test_node_deserialize_from_fixture ... ok [INFO] [stdout] test oxidized::tests::test_node_deserialize_oxidized_035_format ... ok [INFO] [stdout] test oxidized::tests::test_node_list_deserialize ... ok [INFO] [stdout] test oxidized::tests::test_invalidate_all_nodes_clears_all_caches ... ok [INFO] [stdout] test oxidized::tests::test_node_version_deserialize ... ok [INFO] [stdout] test oxidized::tests::test_client_initializes_all_caches ... ok [INFO] [stdout] test oxidized::tests::test_node_deserialize_without_optional_fields ... ok [INFO] [stdout] test oxidized::tests::test_nodes_cache_ttl_is_5_minutes ... ok [INFO] [stdout] test oxidized::tests::test_nodes_list_deserialize_from_fixture ... ok [INFO] [stdout] test oxidized::tests::test_invalidate_node_clears_node_and_config_cache ... ok [INFO] [stdout] test oxidized::tests::test_stats_cache_ttl_is_30_seconds ... ok [INFO] [stdout] test oxidized::tests::test_stats_deserialize_from_fixture ... ok [INFO] [stdout] test oxidized::tests::test_stats_deserialize_partial ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_no_matches ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_malformed_html ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_real_oxidized_response ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_trims_whitespace ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_empty_table ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_deduplicates ... ok [INFO] [stdout] test oxidized::tests::test_stats_deserialize ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_filters_empty_strings ... ok [INFO] [stdout] test oxidized::tests::test_parse_conf_search_html_filters_group_entries ... ok [INFO] [stdout] test oxidized::tests::test_retry_delays_are_exponential ... ok [INFO] [stdout] test oxidized::tests::test_urlencoding_node_name_with_space ... ok [INFO] [stdout] test oxidized::tests::test_timeout_constants_are_reasonable ... ok [INFO] [stdout] test oxidized::tests::test_stats_from_nodes_empty ... ok [INFO] [stdout] test oxidized::tests::test_urlencoding_node_name_plain ... ok [INFO] [stdout] test oxidized::tests::test_urlencoding_node_name_utf8 ... ok [INFO] [stdout] test oxidized::tests::test_urlencoding_decode_roundtrip ... ok [INFO] [stdout] test oxidized::tests::test_urlencoding_node_name_with_slash ... ok [INFO] [stdout] test oxidized::tests::test_retry_succeeds_on_first_attempt ... ok [INFO] [stdout] test resources::tests::test_config_metadata_multiline ... ok [INFO] [stdout] test resources::tests::test_config_metadata_realistic_config ... ok [INFO] [stdout] test resources::tests::test_config_metadata_empty ... ok [INFO] [stdout] test oxidized::tests::test_urlencoding_node_name_with_special_chars ... ok [INFO] [stdout] test resources::tests::test_config_metadata_is_oversized_threshold ... ok [INFO] [stdout] test oxidized::tests::test_versions_deserialize_from_fixture ... ok [INFO] [stdout] test resources::tests::test_config_metadata_serializes_with_warning_when_oversized ... ok [INFO] [stdout] test resources::tests::test_config_metadata_serializes_without_warning_when_not_oversized ... ok [INFO] [stdout] test resources::tests::test_config_metadata_serializes ... ok [INFO] [stdout] test oxidized::tests::test_stats_from_nodes ... ok [INFO] [stdout] test resources::tests::test_config_metadata_single_line ... ok [INFO] [stdout] test resources::tests::test_config_metadata_size_warning_message ... ok [INFO] [stdout] test resources::tests::test_config_metadata_token_estimation ... ok [INFO] [stdout] test resources::tests::test_config_response_serializes ... ok [INFO] [stdout] test resources::tests::test_config_with_options_result_config_variant_serializes ... ok [INFO] [stdout] test resources::tests::test_default_truncate_head_is_500 ... ok [INFO] [stdout] test resources::tests::test_default_truncate_tail_is_100 ... ok [INFO] [stdout] test resources::tests::test_default_page_size_is_100 ... ok [INFO] [stdout] test resources::tests::test_extract_config_summary_empty_config ... ok [INFO] [stdout] test oxidized::tests::test_retry_non_transient_error_fails_immediately ... ok [INFO] [stdout] test resources::tests::test_filter_by_group_no_matches ... ok [INFO] [stdout] test resources::tests::test_filter_combined_with_pagination ... ok [INFO] [stdout] test resources::tests::test_filter_by_group_is_case_sensitive ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_empty_list ... ok [INFO] [stdout] test resources::tests::test_filter_by_group_matches ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_max_limit ... ok [INFO] [stdout] test resources::tests::test_config_summary_serializes ... ok [INFO] [stdout] test resources::tests::test_extract_config_summary_juniper_style ... ok [INFO] [stdout] test resources::tests::test_extract_config_summary_deduplicates_sections ... ok [INFO] [stdout] test resources::tests::test_config_summary_response_serializes ... ok [INFO] [stdout] test resources::tests::test_config_summary_to_llm_format ... ok [INFO] [stdout] test resources::tests::test_extract_config_summary_no_sections ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_case_insensitive ... ok [INFO] [stdout] test resources::tests::test_extract_config_summary_cisco_style ... ok [INFO] [stdout] test resources::tests::test_config_with_options_result_summary_variant_serializes ... ok [INFO] [stdout] test resources::tests::test_extract_config_summary_with_fixture ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_no_matches ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_partial_prefix_match ... ok [INFO] [stdout] test resources::tests::test_config_summary_includes_size_metadata ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_prefix_match ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_priority_ordering ... ok [INFO] [stdout] test resources::tests::test_generate_request_id_format ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_short_target ... ok [INFO] [stdout] test resources::tests::test_max_page_size_is_500 ... ok [INFO] [stdout] test resources::tests::test_node_response_serializes ... ok [INFO] [stdout] test resources::tests::test_paginate_last_page ... ok [INFO] [stdout] test resources::tests::test_paginate_exact_fit ... ok [INFO] [stdout] test resources::tests::test_paginate_beyond_end ... ok [INFO] [stdout] test resources::tests::test_paginate_limit_exceeds_max ... ok [INFO] [stdout] test resources::tests::test_paginate_preserves_cache_metadata ... ok [INFO] [stdout] test resources::tests::test_pagination_params_limit_capped_at_max ... ok [INFO] [stdout] test resources::tests::test_max_suggestions_is_5 ... ok [INFO] [stdout] test resources::tests::test_paginated_response_serializes ... ok [INFO] [stdout] test resources::tests::test_paginate_first_page ... ok [INFO] [stdout] test resources::tests::test_pagination_params_defaults ... ok [INFO] [stdout] test resources::tests::test_size_threshold_bytes_is_100kb ... ok [INFO] [stdout] test resources::tests::test_paginate_middle_page ... ok [INFO] [stdout] test resources::tests::test_paginate_empty_list ... ok [INFO] [stdout] test resources::tests::test_token_threshold_is_25k ... ok [INFO] [stdout] test resources::tests::test_pagination_params_with_values ... ok [INFO] [stdout] test resources::tests::test_find_similar_nodes_substring_match ... ok [INFO] [stdout] test resources::tests::test_truncate_config_single_line ... ok [INFO] [stdout] test resources::tests::test_truncate_config_one_over_threshold ... ok [INFO] [stdout] test resources::tests::test_truncate_config_preserves_head ... ok [INFO] [stdout] test resources::tests::test_truncation_params_custom_values ... ok [INFO] [stdout] test resources::tests::test_truncate_config_with_fixture ... ok [INFO] [stdout] test resources::tests::test_truncation_params_defaults ... ok [INFO] [stdout] test resources::tests::test_truncate_config_empty_config ... ok [INFO] [stdout] test resources::tests::test_truncate_config_exact_threshold ... ok [INFO] [stdout] test resources::tests::test_truncate_config_preserves_tail ... ok [INFO] [stdout] test resources::tests::test_truncate_config_no_truncation_needed ... ok [INFO] [stdout] test resources::tests::test_truncate_config_marker_correct_count ... ok [INFO] [stdout] test resources::tests::test_truncate_config_large_config ... ok [INFO] [stdout] test resources::tests::test_versions_same_timestamp_stable_sort ... ok [INFO] [stdout] test resources::tests::test_version_config_response_no_cache_metadata ... ok [INFO] [stdout] test resources::tests::test_versions_single_version ... ok [INFO] [stdout] test resources::tests::test_versions_response_serializes ... ok [INFO] [stdout] test resources::tests::test_versions_empty_list ... ok [INFO] [stdout] test resources::tests::test_versions_sorted_newest_first ... ok [INFO] [stdout] test resources::tests::test_truncation_params_disabled ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_additions_only ... ok [INFO] [stdout] test resources::tests::test_generate_request_id_unique ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_content_to_empty ... ok [INFO] [stdout] test resources::tests::test_version_config_response_serializes ... ok [INFO] [stdout] test tools::diff_configs::tests::test_diff_result_llm_format_identical ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_whitespace_only_changes ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_real_network_config ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_deletions_only ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_modifications ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_empty_configs ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_empty_to_content ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_identical_configs ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_mixed_changes ... ok [INFO] [stdout] test tools::diff_configs::tests::test_diff_result_llm_format_unified_only ... ok [INFO] [stdout] test tools::diff_configs::tests::test_diff_result_llm_format_with_changes ... ok [INFO] [stdout] test tools::diff_configs::tests::test_diff_result_serializes ... ok [INFO] [stdout] test tools::diff_configs::tests::test_diff_summary_default ... ok [INFO] [stdout] test tools::diff_configs::tests::test_diff_summary_equality ... ok [INFO] [stdout] test tools::diff_configs::tests::test_compute_diff_large_config ... ok [INFO] [stdout] test tools::diff_configs::tests::test_line_change_serializes ... ok [INFO] [stdout] test tools::diff_configs::tests::test_modification_serializes ... ok [INFO] [stdout] test tools::fetch_node_config::tests::test_success_message_exact_format ... ok [INFO] [stdout] test tools::fetch_node_config::tests::test_success_message_with_special_characters ... ok [INFO] [stdout] test tools::fetch_node_config::tests::test_success_message_with_unicode ... ok [INFO] [stdout] test tools::fetch_node_config::tests::test_tool_result_json_serialization ... ok [INFO] [stdout] test tools::fetch_node_config::tests::test_tool_result_json_escapes_special_chars ... ok [INFO] [stdout] test tools::prioritize_node::tests::test_success_message_with_special_characters ... ok [INFO] [stdout] test tools::prioritize_node::tests::test_success_message_exact_format ... ok [INFO] [stdout] test tools::prioritize_node::tests::test_success_message_with_unicode ... ok [INFO] [stdout] test tools::prioritize_node::tests::test_tool_result_json_escapes_special_chars ... ok [INFO] [stdout] test tools::prioritize_node::tests::test_tool_result_json_serialization ... ok [INFO] [stdout] test tools::reload_sources::tests::test_success_message_exact_format ... ok [INFO] [stdout] test tools::reload_sources::tests::test_success_node_is_empty ... ok [INFO] [stdout] test tools::reload_sources::tests::test_tool_result_json_contains_all_fields ... ok [INFO] [stdout] test tools::reload_sources::tests::test_tool_result_json_serialization ... ok [INFO] [stdout] test tools::search_configs::tests::test_empty_pattern_rejected ... ok [INFO] [stdout] test tools::search_configs::tests::test_llm_format_no_matches ... ok [INFO] [stdout] test tools::search_configs::tests::test_llm_format_with_matches ... ok [INFO] [stdout] test tools::search_configs::tests::test_llm_format_with_warnings ... ok [INFO] [stdout] test tools::search_configs::tests::test_llm_format_with_truncation ... ok [INFO] [stdout] test tools::search_configs::tests::test_node_matches_grouping ... ok [INFO] [stdout] test tools::search_configs::tests::test_prefilter_intersection_logic ... ok [INFO] [stdout] test tools::search_configs::tests::test_prefilter_no_user_nodes_returns_all_prefiltered ... ok [INFO] [stdout] test tools::search_configs::tests::test_node_matches_serializes ... ok [INFO] [stdout] test tools::search_configs::tests::test_prefilter_empty_returns_fallback ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_empty_config ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_no_context_at_start ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_simple_match ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_regex_special_chars ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_no_context_at_end ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_multiple_matches ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_match_serializes ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_case_sensitive_no_match ... ok [INFO] [stdout] test tools::tests::test_tool_result_serializes ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_result_limit_applied ... ok [INFO] [stdout] test tools::tests::test_tool_result_success ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_result_serializes ... ok [INFO] [stdout] test tools::tests::test_reload_sources_result_message ... ok [INFO] [stdout] test tools::tests::test_tool_result_success_with_into_string ... ok [INFO] [stdout] test tools::tests::test_tool_result_failure ... ok [INFO] [stdout] test tools::tests::test_tool_result_failure_with_into_string ... ok [INFO] [stdout] test tools::search_configs::tests::test_search_in_config_case_insensitive ... ok [INFO] [stdout] test oxidized::tests::test_retry_succeeds_after_transient_failure ... ok [INFO] [stdout] test oxidized::tests::test_retry_transient_error_retries_up_to_max ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 270 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.06s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/mcp_oxidized-a95420e4c0670693) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test tests::test_decode_node_name_invalid_utf8_returns_original ... ok [INFO] [stdout] test tests::test_decode_node_name_utf8 ... ok [INFO] [stdout] test tests::test_decode_node_name_with_space ... ok [INFO] [stdout] test tests::test_decode_node_name_with_slash ... ok [INFO] [stdout] test tests::test_decode_node_name_empty ... ok [INFO] [stdout] test tests::test_decode_node_name_plain ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/e2e_tests.rs (/opt/rustwide/target/debug/deps/e2e_tests-dec195832de27e25) [INFO] [stdout] [INFO] [stdout] running 33 tests [INFO] [stdout] test mock_server::fixtures::tests::test_default_configs_has_router_and_switch ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_nodes_have_all_real_api_fields ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_configs_router_is_large ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_nodes_match_real_api_format ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_versions_returns_three_versions ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_versions_have_nested_author ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_nodes_returns_three_nodes ... ok [INFO] [stdout] test mock_server::fixtures::tests::test_default_nodes_have_varied_statuses ... ok [INFO] [stdout] test mock_server::server::tests::test_mock_server_starts ... ok [INFO] [stdout] test test_e2e_config_options_truncate_works ... ok [INFO] [stdout] test test_e2e_config_options_summary_works ... ok [INFO] [stdout] test test_e2e_get_node_config_returns_text_with_metadata ... ok [INFO] [stdout] test mock_server::server::tests::test_mock_node_has_nested_last_object ... ok [INFO] [stdout] test test_e2e_get_node_returns_details ... ok [INFO] [stdout] test test_e2e_fetch_node_config_triggers_backup ... ok [INFO] [stdout] test mock_server::server::tests::test_mock_returns_500_for_unknown_node ... ok [INFO] [stdout] test test_e2e_reload_sources_invalidates_cache ... ok [INFO] [stdout] test mock_server::server::tests::test_mock_conf_search_returns_html ... ok [INFO] [stdout] test mock_server::server::tests::test_mock_stats_endpoint_returns_garbage ... ok [INFO] [stdout] test test_e2e_list_nodes_with_pagination ... ok [INFO] [stdout] test test_e2e_get_stats_returns_computed_data ... ok [INFO] [stdout] test test_e2e_node_not_found_includes_suggestions ... ok [INFO] [stdout] test test_e2e_prioritize_node_updates_queue ... ok [INFO] [stdout] test test_e2e_list_nodes_returns_paginated_data ... ok [INFO] [stdout] test test_e2e_get_node_versions_returns_sorted_list ... ok [INFO] [stdout] test test_e2e_invalid_regex_returns_clear_error ... ok [INFO] [stdout] test test_e2e_diff_configs_compares_versions ... ok [INFO] [stdout] test test_e2e_node_not_found_returns_actionable_error ... ok [INFO] [stdout] test test_e2e_list_nodes_with_group_filter ... ok [INFO] [stdout] test mock_server::server::tests::test_mock_versions_have_nested_author ... ok [INFO] [stdout] test test_e2e_search_configs_uses_prefilter ... ok [INFO] [stdout] test test_e2e_search_configs_finds_patterns ... ok [INFO] [stdout] test test_e2e_tools_node_not_found_returns_suggestions ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s [INFO] [stdout] [INFO] [stderr] Running tests/integration_real_api.rs (/opt/rustwide/target/debug/deps/integration_real_api-dd2c52e465909311) [INFO] [stdout] [INFO] [stdout] running 54 tests [INFO] [stdout] test test_cache_provides_performance_improvement ... ignored [INFO] [stdout] test test_cached_request_performance_under_100ms ... ignored [INFO] [stdout] test test_conf_search_api_works ... ignored [INFO] [stdout] test test_config_cache_hit ... ignored [INFO] [stdout] test test_config_metadata_includes_is_oversized ... ignored [INFO] [stdout] test test_config_summary_detects_vendor ... ignored [INFO] [stdout] test test_config_summary_extracts_sections ... ignored [INFO] [stdout] test test_config_with_options_full_mode ... ignored [INFO] [stdout] test test_config_with_options_not_found_has_suggestions ... ignored [INFO] [stdout] test test_config_with_options_summary_mode ... ignored [INFO] [stdout] test test_config_with_options_truncate_mode ... ignored [INFO] [stdout] test test_diff_configs_compares_two_versions ... ignored [INFO] [stdout] test test_diff_configs_identical_versions ... ignored [INFO] [stdout] test test_diff_configs_llm_format_structure ... ignored [INFO] [stdout] test test_diff_configs_node_not_found_has_suggestions ... ignored [INFO] [stdout] test test_fetch_node_config_invalid_node_returns_suggestions ... ignored [INFO] [stdout] test test_fetch_node_config_triggers_backup ... ignored [INFO] [stdout] test test_get_node_config_cache_hit ... ignored [INFO] [stdout] test test_get_node_config_not_found_has_suggestions ... ignored [INFO] [stdout] test test_get_node_config_returns_data_with_size ... ignored [INFO] [stdout] test test_get_node_config_returns_text ... ignored [INFO] [stdout] test test_get_node_not_found ... ignored [INFO] [stdout] test test_get_node_not_found_has_suggestions ... ignored [INFO] [stdout] test test_get_node_returns_data ... ignored [INFO] [stdout] test test_get_node_returns_details ... ignored [INFO] [stdout] test test_get_node_version_invalid_oid_returns_message ... ignored [INFO] [stdout] test test_get_node_version_not_found_has_suggestions ... ignored [INFO] [stdout] test test_get_node_version_returns_historical_config ... ignored [INFO] [stdout] test test_get_node_versions_not_found_has_suggestions ... ignored [INFO] [stdout] test test_get_node_versions_returns_history ... ignored [INFO] [stdout] test test_get_node_versions_sorted_descending ... ignored [INFO] [stdout] test test_get_nodes_returns_list ... ignored [INFO] [stdout] test test_get_stats_returns_data ... ignored [INFO] [stdout] test test_list_nodes_cache_metadata ... ignored [INFO] [stdout] test test_list_nodes_group_filter ... ignored [INFO] [stdout] test test_list_nodes_pagination_params ... ignored [INFO] [stdout] test test_list_nodes_returns_paginated_data ... ignored [INFO] [stderr] Doc-tests mcp_oxidized [INFO] [stdout] test test_prioritize_node_invalid_node_returns_suggestions ... ignored [INFO] [stdout] test test_prioritize_node_updates_queue ... ignored [INFO] [stdout] test test_reload_sources_reloads_inventory ... ignored [INFO] [stdout] test test_resource_get_stats_returns_data ... ignored [INFO] [stdout] test test_search_configs_case_insensitive ... ignored [INFO] [stdout] test test_search_configs_filters_by_nodes ... ignored [INFO] [stdout] test test_search_configs_finds_patterns ... ignored [INFO] [stdout] test test_search_configs_invalid_regex_returns_error ... ignored [INFO] [stdout] test test_search_configs_llm_format_structure ... ignored [INFO] [stdout] test test_search_configs_regex_pattern ... ignored [INFO] [stdout] test test_search_configs_respects_limit ... ignored [INFO] [stdout] test test_search_configs_warns_about_nonexistent_nodes ... ignored [INFO] [stdout] test test_search_prefilter_fallback ... ignored [INFO] [stdout] test test_search_prefilter_intersection ... ignored [INFO] [stdout] test test_search_with_prefilter_optimization ... ignored [INFO] [stdout] test test_stats_cache_hit ... ignored [INFO] [stdout] test test_uncached_request_performance_under_500ms ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 54 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test src/config.rs - config::Config::parse_headers (line 140) ... ignored [INFO] [stdout] test src/error.rs - error::Actionable (line 100) ... ignored [INFO] [stdout] test src/oxidized.rs - oxidized (line 15) ... ignored [INFO] [stdout] test src/oxidized.rs - oxidized::OxidizedBackend (line 386) ... ignored [INFO] [stdout] test src/oxidized.rs - oxidized::OxidizedClient (line 572) ... ignored [INFO] [stdout] test src/oxidized.rs - oxidized::Stats (line 239) ... ignored [INFO] [stdout] test src/resources.rs - resources (line 35) ... ignored [INFO] [stdout] test src/resources.rs - resources::generate_request_id (line 526) ... ignored [INFO] [stdout] test src/resources.rs - resources::get_node_config_with_options (line 829) ... ignored [INFO] [stdout] test src/resources.rs - resources::ConfigMetadata (line 194) ... ok [INFO] [stdout] test src/tools/diff_configs.rs - tools::diff_configs (line 8) ... ignored [INFO] [stdout] test src/tools/diff_configs.rs - tools::diff_configs::diff_configs (line 355) ... ignored [INFO] [stdout] test src/tools/fetch_node_config.rs - tools::fetch_node_config::fetch_node_config (line 37) ... ignored [INFO] [stdout] test src/tools/mod.rs - tools (line 29) ... ignored [INFO] [stdout] test src/resources.rs - resources::TruncationParams::new (line 282) ... ok [INFO] [stdout] test src/tools/prioritize_node.rs - tools::prioritize_node::prioritize_node (line 36) ... ignored [INFO] [stdout] test src/tools/reload_sources.rs - tools::reload_sources::reload_sources (line 35) ... ignored [INFO] [stdout] test src/tools/search_configs.rs - tools::search_configs (line 8) ... ignored [INFO] [stdout] test src/tools/search_configs.rs - tools::search_configs::search_configs (line 231) ... ignored [INFO] [stdout] test src/resources.rs - resources::PaginationParams::new (line 135) ... ok [INFO] [stdout] test src/tools/mod.rs - tools::ToolResult::failure (line 123) ... ok [INFO] [stdout] test src/tools/mod.rs - tools::ToolResult::success (line 100) ... ok [INFO] [stdout] test src/tools/mod.rs - tools::ToolResult (line 72) ... ok [INFO] [stdout] test src/resources.rs - resources::truncate_config (line 317) ... ok [INFO] [stdout] test src/resources.rs - resources::extract_config_summary (line 415) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 17 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] all doctests ran in 1.61s; merged doctests compilation took 1.42s [INFO] running `Command { std: "docker" "inspect" "0c42784a46f346c8b506b34ddbd470c4e7d97eafd7e257bf41572a266b37bfa1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0c42784a46f346c8b506b34ddbd470c4e7d97eafd7e257bf41572a266b37bfa1", kill_on_drop: false }` [INFO] [stdout] 0c42784a46f346c8b506b34ddbd470c4e7d97eafd7e257bf41572a266b37bfa1