[INFO] fetching crate vllm-doctor 0.10.0...
[INFO] testing vllm-doctor-0.10.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate vllm-doctor 0.10.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate vllm-doctor 0.10.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate vllm-doctor 0.10.0
[INFO] tweaked toml for crates.io crate vllm-doctor 0.10.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate vllm-doctor 0.10.0 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 crates.io crate vllm-doctor 0.10.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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3
[INFO] running `Command { std: "docker" "start" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", 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" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3" "/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" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", 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" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling cc v1.2.64
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling uuid v1.23.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling uncased v0.9.10
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling pear_codegen v0.2.9
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling webpki-roots v1.0.8
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling figment v0.10.19
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling inlinable_string v0.1.15
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling pear v0.2.9
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling matchit v0.8.4
[INFO] [stderr]    Compiling comfy-table v7.2.2
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling sqlx v0.8.6
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling vllm-doctor v0.10.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 37s
[INFO] running `Command { std: "docker" "inspect" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", 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" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]    Compiling comfy-table v7.2.2
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]    Compiling sqlx v0.8.6
[INFO] [stderr]    Compiling vllm-doctor v0.10.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 31s
[INFO] running `Command { std: "docker" "inspect" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", 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" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.51s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/vllm-doctor/47cc57e56d59a11c/out/vllm_doctor-47cc57e56d59a11c)
[INFO] [stdout] 
[INFO] [stdout] running 297 tests
[INFO] [stdout] test cli::args::tests::diagnose_rejects_malformed_header ... ok
[INFO] [stdout] test cli::args::tests::diagnose_rejects_listen_without_watch_or_with_invalid_address ... ok
[INFO] [stdout] test cli::args::tests::diagnose_parses_listen_for_watch_mode ... ok
[INFO] [stdout] test cli::args::tests::parse_diagnose_defaults ... ok
[INFO] [stdout] test cli::args::tests::parse_diagnose_command ... ok
[INFO] [stdout] test cli::args::tests::diagnose_requires_url ... ok
[INFO] [stdout] test cli::args::tests::parse_diagnose_with_upload_flag ... ok
[INFO] [stdout] test cli::args::tests::diagnose_rejects_non_positive_seconds ... ok
[INFO] [stdout] test cli::args::tests::parse_history_list ... ok
[INFO] [stdout] test cli::args::tests::parse_history_show ... ok
[INFO] [stdout] test cli::args::tests::parse_diagnose_upload_defaults_false ... ok
[INFO] [stdout] test cli::args::tests::parse_migrate_command ... ok
[INFO] [stdout] test cli::clients::connection::tests::connection_options_builder ... ok
[INFO] [stdout] test cli::clients::connection::tests::build_client_errors_on_missing_ca_file ... ok
[INFO] [stdout] test cli::clients::connection::tests::default_options_have_no_headers_or_ca_cert ... ok
[INFO] [stdout] test cli::clients::connection::tests::build_client_rejects_invalid_header_name ... ok
[INFO] [stdout] test cli::clients::connection::tests::build_client_rejects_invalid_header_value ... ok
[INFO] [stdout] test cli::clients::connection::tests::build_client_errors_on_ca_file_without_certs ... ok
[INFO] [stdout] test cli::clients::error::tests::query_and_parse_errors_display ... ok
[INFO] [stdout] test cli::clients::connection::tests::build_client_with_valid_header ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_colon_metric_name ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_empty_and_comments_returns_empty ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_ignores_help_and_type_lines ... ok
[INFO] [stdout] test cli::clients::connection::tests::build_client_with_valid_pem_succeeds ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_metric_with_timestamp ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_unescapes_label_values ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_metric_without_labels ... ok
[INFO] [stdout] test cli::clients::error::tests::is_timeout_false_for_query_error ... ok
[INFO] [stdout] test cli::clients::scrape::tests::parse_labels_empty ... ok
[INFO] [stdout] test cli::clients::scrape::tests::parse_labels_multiple ... ok
[INFO] [stdout] test cli::clients::scrape::tests::parse_labels_single ... ok
[INFO] [stdout] test cli::clients::tests::label_selector_empty_when_no_model ... ok
[INFO] [stdout] test cli::clients::tests::label_selector_includes_extra_labels ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::parse_nan_inf_values ... ok
[INFO] [stdout] test cli::clients::tests::label_selector_escapes_special_characters ... ok
[INFO] [stdout] test cli::clients::tests::label_selector_includes_model_name ... ok
[INFO] [stdout] test cli::clients::scrape::parser::tests::metric_names_returns_unique_sorted_names ... ok
[INFO] [stdout] test cli::clients::tests::resolve_client_returns_error_on_connection_refused ... ok
[INFO] [stdout] test cli::clients::connection::tests::header_sent_on_probe_and_fetch ... ok
[INFO] [stdout] test cli::clients::tests::prometheus_client_query_increase_wraps_expression ... ok
[INFO] [stdout] test cli::clients::error::tests::from_reqwest_maps_connection ... ok
[INFO] [stdout] test cli::clients::tests::resolve_client_returns_prometheus_for_non_text_response ... ok
[INFO] [stdout] test cli::collector::tests::missing_metrics_are_none ... ok
[INFO] [stdout] test cli::collector::tests::now_defaults_to_5m ... ok
[INFO] [stdout] test cli::collector::tests::returns_metrics ... ok
[INFO] [stdout] test cli::clients::tests::scrape_client_parses_text_format ... ok
[INFO] [stdout] test cli::commands::diagnose::tests::cli_listen_overrides_config ... ok
[INFO] [stdout] test cli::commands::diagnose::tests::exit_code_unhealthy_only_on_critical ... ok
[INFO] [stdout] test cli::commands::observability::tests::endpoints_expose_health_readiness_and_metrics ... ok
[INFO] [stdout] test cli::commands::observability::tests::server_stops_cleanly_on_shutdown ... ok
[INFO] [stdout] test cli::commands::watch::tests::backoff_starts_at_one_second_and_caps_at_sixty ... ok
[INFO] [stdout] test cli::commands::watch::tests::backoff_does_not_overflow_for_large_failure_counts ... ok
[INFO] [stdout] test cli::commands::watch::tests::clears_only_interactive_text_output ... ok
[INFO] [stdout] test cli::clients::tests::resolve_client_returns_scrape_for_openmetrics ... ok
[INFO] [stdout] test cli::commands::watch::tests::redirected_output_has_no_terminal_clear_sequence ... ok
[INFO] [stdout] test cli::commands::watch::tests::sub_millisecond_delay_does_not_underflow ... ok
[INFO] [stdout] test cli::clients::tests::resolve_client_returns_scrape_for_text_plain ... ok
[INFO] [stdout] test cli::commands::watch::tests::success_resets_failure_sequence ... ok
[INFO] [stdout] test cli::clients::tests::prometheus_client_parses_instant_query ... ok
[INFO] [stdout] test cli::clients::tests::scrape_client_filters_by_label_selector ... ok
[INFO] [stdout] test cli::config::tests::agent_listen_address_parses ... ok
[INFO] [stdout] test cli::config::tests::auto_discovers_local_toml ... ok
[INFO] [stdout] test cli::config::tests::config_dir_from_returns_none_for_none ... ok
[INFO] [stdout] test cli::config::tests::default_thresholds_are_stable ... ok
[INFO] [stdout] test cli::clients::tests::prometheus_client_query_percentile_builds_expression ... ok
[INFO] [stdout] test cli::clients::tests::prometheus_client_returns_error_on_failed_query ... ok
[INFO] [stdout] test cli::config::tests::default_db_url_uses_home ... ok
[INFO] [stdout] test cli::config::tests::empty_target_id_is_rejected ... ok
[INFO] [stdout] test cli::config::tests::global_config_dir_is_merged ... ok
[INFO] [stdout] test cli::config::tests::empty_database_url_gets_default ... ok
[INFO] [stdout] test cli::config::tests::full_config_fixture_loads ... ok
[INFO] [stdout] test cli::config::tests::missing_explicit_path_is_error ... ok
[INFO] [stdout] test cli::config::tests::explicit_path_overrides_defaults ... ok
[INFO] [stdout] test cli::config::tests::invalid_agent_listen_address_is_rejected ... ok
[INFO] [stdout] test cli::commands::watch::tests::jitter_stays_within_twenty_percent ... ok
[INFO] [stdout] test cli::commands::watch::tests::output_returns_broken_pipe_instead_of_panicking ... ok
[INFO] [stdout] test cli::config::tests::malformed_explicit_path_is_error ... ok
[INFO] [stdout] test cli::config::tests::target_section_defaults_when_absent ... ok
[INFO] [stdout] test cli::config::tests::target_section_parses ... ok
[INFO] [stdout] test cli::observability::tests::label_values_are_escaped ... ok
[INFO] [stdout] test cli::observability::tests::initial_state_is_unknown_and_unready ... ok
[INFO] [stdout] test cli::observability::tests::prometheus_contract_is_exact ... ok
[INFO] [stdout] test cli::observability::tests::upload_errors_are_tracked ... ok
[INFO] [stdout] test cli::config::tests::unsupported_target_engine_is_rejected ... ok
[INFO] [stdout] test cli::config::tests::whitespace_agent_id_is_rejected ... ok
[INFO] [stdout] test cli::probes::tests::counter_probe_uses_increase_fallback ... ok
[INFO] [stdout] test cli::probes::tests::gauge_probe_uses_query ... ok
[INFO] [stdout] test cli::providers::prometheus::tests::metadata_has_endpoint ... ok
[INFO] [stdout] test cli::providers::scrape::tests::metadata_has_endpoint ... ok
[INFO] [stdout] test cli::probes::tests::model_label_included_in_query ... ok
[INFO] [stdout] test cli::reports::format::tests::percent_scales_by_100 ... ok
[INFO] [stdout] test cli::config::tests::zero_upload_timeout_is_rejected ... ok
[INFO] [stdout] test cli::observability::tests::success_error_and_recovery_preserve_last_diagnosis ... ok
[INFO] [stdout] test cli::reports::format::tests::fixed_precision ... ok
[INFO] [stdout] test cli::config::tests::whitespace_target_id_is_rejected ... ok
[INFO] [stdout] test cli::reports::format::tests::unknown_format_falls_back_to_default ... ok
[INFO] [stdout] test cli::reports::json::tests::assessment_is_top_level_object ... ok
[INFO] [stdout] test cli::reports::json::tests::finding_embedded_in_check_and_omits_signals ... ok
[INFO] [stdout] test cli::reports::json::tests::schema_and_metadata_present ... ok
[INFO] [stdout] test cli::reports::json::tests::health_ok_serializes_as_healthy ... ok
[INFO] [stdout] test cli::reports::notices::tests::multi_model_emits_notice_when_unscoped ... ok
[INFO] [stdout] test cli::reports::notices::tests::multi_model_suppressed_when_scoped ... ok
[INFO] [stdout] test cli::reports::json::tests::metrics_only_when_verbose ... ok
[INFO] [stdout] test cli::reports::notices::tests::no_notices_for_clean_prometheus_single_model ... ok
[INFO] [stdout] test cli::reports::json::tests::metrics_include_replica_breakdown ... ok
[INFO] [stdout] test cli::reports::text::tests::color_is_emitted_only_when_enabled ... ok
[INFO] [stdout] test cli::reports::text::tests::compact_mode_hides_recommendations ... ok
[INFO] [stdout] test cli::reports::notices::tests::scrape_mode_emits_latency_notice ... ok
[INFO] [stdout] test cli::reports::tests::registry_to_report_to_renderers ... ok
[INFO] [stdout] test cli::reports::text::tests::compact_passing_checks_collapsed_to_count ... ok
[INFO] [stdout] test cli::reports::text::tests::scrape_mode_renders_notice_in_verbose ... ok
[INFO] [stdout] test cli::reports::text::tests::text_report_shows_assessment_before_findings ... ok
[INFO] [stdout] test cli::reports::text::tests::text_report_shows_healthy_when_no_findings ... ok
[INFO] [stdout] test cli::reports::text::tests::verbose_mode_shows_recommendations_in_panels ... ok
[INFO] [stdout] test cli::reports::text::tests::verbose_renders_per_replica_table ... ok
[INFO] [stdout] test cli::reports::text::tests::width_controls_panel_size ... ok
[INFO] [stdout] test cli::runner::tests::firing_ids_extracts_only_firing_checks ... ok
[INFO] [stdout] test cli::reports::text::tests::text_report_omits_assessment_when_no_clear_bottleneck ... ok
[INFO] [stdout] test cli::runner::tests::runner_error_is_send_sync ... ok
[INFO] [stdout] test cli::runner::tests::transition_label_initial ... ok
[INFO] [stdout] test cli::runner::tests::transition_label_no_change ... ok
[INFO] [stdout] test cli::runner::tests::transition_label_rules_changed ... ok
[INFO] [stdout] test cli::runner::tests::transition_label_health_change ... ok
[INFO] [stdout] test cli::reports::text::tests::text_report_includes_health_and_finding ... ok
[INFO] [stdout] test cli::reports::text::tests::text_report_verbose_shows_metrics ... ok
[INFO] [stdout] test cli::reports::text::tests::long_recommendation_wraps_instead_of_truncating ... ok
[INFO] [stdout] test cli::stores::sqlite::tests::get_returns_none_for_unknown_or_malformed_id ... ok
[INFO] [stdout] test cli::stores::sqlite::tests::diagnose_result_persists_end_to_end ... ok
[INFO] [stdout] test cli::upload::client::tests::only_server_errors_are_retryable_unexpected_statuses ... ok
[INFO] [stdout] test cli::stores::sqlite::tests::incompatible_version_errors_on_get_but_list_survives ... ok
[INFO] [stdout] test cli::upload::client::tests::production_endpoint_uses_major_version_path ... ok
[INFO] [stdout] test cli::observability::tests::poisoned_snapshot_lock_is_recovered ... ok
[INFO] [stdout] test cli::providers::prometheus::tests::each_fetch_collects_fresh ... ok
[INFO] [stdout] test cli::stores::sqlite::tests::non_finite_sample_run_is_readable ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_200_deduplicated ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_201_created ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_400_rejected_is_not_retryable ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_401_unauthorized ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_429_is_retryable ... ok
[INFO] [stdout] test cli::upload::config::tests::resolve_token_from_env ... ok
[INFO] [stdout] test cli::upload::config::tests::resolve_token_empty_env_is_error ... ok
[INFO] [stdout] test cli::upload::config::tests::resolve_token_missing_when_not_set ... ok
[INFO] [stdout] test cli::upload::config::tests::resolve_token_trims_whitespace ... ok
[INFO] [stdout] test cli::providers::scrape::tests::each_fetch_collects_fresh ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_network_error ... ok
[INFO] [stdout] test cli::upload::tests::generates_and_reuses_persisted_id ... ok
[INFO] [stdout] test cli::upload::tests::missing_home_directory_is_rejected ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_409_conflict ... ok
[INFO] [stdout] test cli::upload::client::tests::upload_413_payload_too_large ... ok
[INFO] [stdout] test cli::upload::tests::returns_configured_id ... ok
[INFO] [stdout] test core::assessment::tests::absent_traffic_metrics_are_not_idle ... ok
[INFO] [stdout] test cli::upload::tests::rejects_empty_identity_file ... ok
[INFO] [stdout] test core::assessment::tests::healthy_under_load_is_not_idle ... ok
[INFO] [stdout] test core::assessment::tests::idle_server ... ok
[INFO] [stdout] test core::assessment::tests::kv_cache_saturation ... ok
[INFO] [stdout] test core::assessment::tests::long_prefill_when_ttft_high_and_no_queue ... ok
[INFO] [stdout] test core::assessment::tests::no_clear_bottleneck_on_weak_lone_signal ... ok
[INFO] [stdout] test core::assessment::tests::decode_bottleneck ... ok
[INFO] [stdout] test core::assessment::tests::error_issue ... ok
[INFO] [stdout] test core::assessment::tests::errors_take_priority_over_saturation ... ok
[INFO] [stdout] test core::assessment::tests::queue_saturation ... ok
[INFO] [stdout] test core::assessment::tests::ttft_with_queue_is_queueing_not_prefill ... ok
[INFO] [stdout] test core::config::tests::default_thresholds_are_stable ... ok
[INFO] [stdout] test core::diagnosis::tests::checks_are_ordered_worst_first ... ok
[INFO] [stdout] test core::diagnosis::tests::assembles_context_snapshot_and_checks ... ok
[INFO] [stdout] test core::metrics::series::tests::aggregate_display_and_parse ... ok
[INFO] [stdout] test core::metrics::series::tests::aggregate_parse_rejects_unknown ... ok
[INFO] [stdout] test core::assessment::tests::replica_imbalance ... ok
[INFO] [stdout] test core::diagnosis::tests::metrics_source_follows_provider_metadata ... ok
[INFO] [stdout] test core::diagnosis::tests::propagates_provider_errors ... ok
[INFO] [stdout] test core::metrics::observations::tests::promql_requirement_covers_all_window_derived_observations ... ok
[INFO] [stdout] test core::metrics::series::tests::by_returns_none_for_missing_dimension ... ok
[INFO] [stdout] test core::metrics::series::tests::empty_metric_series_has_no_value ... ok
[INFO] [stdout] test core::metrics::series::tests::filter_preserves_aggregate_by ... ok
[INFO] [stdout] test core::metrics::series::tests::finite_sample_serializes_as_number ... ok
[INFO] [stdout] test core::metrics::series::tests::metric_series_groups_by_label ... ok
[INFO] [stdout] test core::metrics::series::tests::metric_series_aggregates_samples ... ok
[INFO] [stdout] test core::metrics::series::tests::sample_builder_methods ... ok
[INFO] [stdout] test core::metrics::series::tests::scalar_is_alias_for_new ... ok
[INFO] [stdout] test core::metrics::specs::tests::direct_probe_names_contain_output_probe ... ok
[INFO] [stdout] test core::metrics::specs::tests::metric_specs_by_output_lookup_works ... ok
[INFO] [stdout] test core::metrics::specs::tests::ratio_computes_from_raw ... ok
[INFO] [stdout] test core::metrics::series::tests::metric_series_filters_by_labels ... ok
[INFO] [stdout] test core::metrics::series::tests::non_finite_samples_round_trip ... ok
[INFO] [stdout] test core::metrics::specs::tests::ratio_returns_empty_when_denominator_is_zero ... ok
[INFO] [stdout] test core::metrics::specs::tests::registry_invariants_match_expected_table ... ok
[INFO] [stdout] test core::metrics::tests::detect_replica_label_finds_pod ... ok
[INFO] [stdout] test core::metrics::tests::detect_replica_label_returns_none_for_single_replica ... ok
[INFO] [stdout] test core::metrics::tests::label_values_collects_across_series ... ok
[INFO] [stdout] test core::metrics::tests::snapshot_from_raw_applies_aggregation_specs ... ok
[INFO] [stdout] test core::models::tests::diagnosis_health_ignores_none_findings ... ok
[INFO] [stdout] test core::models::tests::confidence_roundtrip ... ok
[INFO] [stdout] test core::models::tests::diagnosis_health_is_ok_when_no_findings ... ok
[INFO] [stdout] test core::models::tests::diagnosis_context_builders ... ok
[INFO] [stdout] test core::metrics::series::tests::metric_series_from_scalar ... ok
[INFO] [stdout] test core::models::tests::health_from_severity ... ok
[INFO] [stdout] test core::models::tests::metrics_source_roundtrip ... ok
[INFO] [stdout] test core::models::tests::diagnosis_state_unknown_signal_message ... ok
[INFO] [stdout] test core::models::tests::finding_struct_is_independent ... ok
[INFO] [stdout] test core::models::tests::health_display_roundtrips_through_from_str ... ok
[INFO] [stdout] test core::models::tests::inference_engine_roundtrip ... ok
[INFO] [stdout] test core::models::tests::parse_errors_for_unknown_values ... ok
[INFO] [stdout] test core::models::tests::severity_ordering_worst_first ... ok
[INFO] [stdout] test core::models::tests::severity_roundtrip ... ok
[INFO] [stdout] test core::observations::window::tests::parses_supported_windows ... ok
[INFO] [stdout] test core::observations::window::tests::rejects_invalid_windows ... ok
[INFO] [stdout] test core::providers::tests::provider_metadata_is_static ... ok
[INFO] [stdout] test core::rules::error_rate::tests::critical_when_errors_high ... ok
[INFO] [stdout] test core::rules::error_rate::tests::healthy_when_rates_low ... ok
[INFO] [stdout] test core::rules::error_rate::tests::high_confidence_when_both_high ... ok
[INFO] [stdout] test core::rules::error_rate::tests::template_includes_abort_line_when_high ... ok
[INFO] [stdout] test core::rules::error_rate::tests::template_output ... ok
[INFO] [stdout] test core::rules::error_rate::tests::warning_when_aborts_high ... ok
[INFO] [stdout] test core::rules::kv_cache_pressure::tests::critical_high_when_cache_high_and_waiting ... ok
[INFO] [stdout] test core::providers::tests::not_configured_display ... ok
[INFO] [stdout] test core::providers::tests::parse_error_display ... ok
[INFO] [stdout] test core::rules::kv_cache_pressure::tests::critical_medium_when_cache_high_no_waiting ... ok
[INFO] [stdout] test core::rules::kv_cache_pressure::tests::healthy_when_cache_usage_low ... ok
[INFO] [stdout] test core::rules::kv_cache_pressure::tests::template_output ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::healthy_when_idle ... ok
[INFO] [stdout] test core::models::tests::diagnosis_health_rolls_up_worst_finding ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::healthy_when_throughput_high ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::healthy_when_waiting_exists ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::warns_when_both_low ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::warns_when_prompt_low ... ok
[INFO] [stdout] test core::rules::preemption_pressure::tests::fires_warning_when_preemptions_present ... ok
[INFO] [stdout] test core::rules::preemption_pressure::tests::healthy_when_no_preemptions ... ok
[INFO] [stdout] test core::rules::preemption_pressure::tests::high_confidence_when_cache_high ... ok
[INFO] [stdout] test core::rules::preemption_pressure::tests::template_no_cache_line_when_below_threshold ... ok
[INFO] [stdout] test core::rules::preemption_pressure::tests::template_output_order ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::template_output ... ok
[INFO] [stdout] test core::rules::prefix_cache_efficiency::tests::fires_warning_when_hit_rate_low ... ok
[INFO] [stdout] test core::rules::prefix_cache_efficiency::tests::healthy_when_hit_rate_high ... ok
[INFO] [stdout] test core::rules::prefix_cache_efficiency::tests::template_output ... ok
[INFO] [stdout] test core::rules::prefix_cache_efficiency::tests::high_confidence_when_hit_rate_very_low ... ok
[INFO] [stdout] test core::rules::queue_latency::tests::fires_warning_when_queue_time_high ... ok
[INFO] [stdout] test core::rules::queue_latency::tests::healthy_when_queue_time_low ... ok
[INFO] [stdout] test core::rules::queue_latency::tests::low_confidence_when_no_waiting ... ok
[INFO] [stdout] test core::rules::queue_pressure::tests::fires_warning_when_waiting_high ... ok
[INFO] [stdout] test core::rules::queue_pressure::tests::healthy_when_waiting_low ... ok
[INFO] [stdout] test core::rules::queue_pressure::tests::high_confidence_when_running_high ... ok
[INFO] [stdout] test core::rules::queue_pressure::tests::template_no_running_line_when_below_threshold ... ok
[INFO] [stdout] test core::rules::queue_pressure::tests::template_output ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::fires_on_cache_gap_without_running_imbalance ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::healthy_when_single_replica ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::high_confidence_when_three_signals ... ok
[INFO] [stdout] test cli::stores::sqlite::tests::list_summarizes_newest_first ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::medium_confidence_when_two_signals ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::saturated_when_critical_imbalance ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::template_finds_extremes ... ok
[INFO] [stdout] test core::rules::templates::tests::generic_template_formats_signal ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::medium_confidence_when_running_low ... ok
[INFO] [stdout] test core::rules::low_throughput::tests::warns_when_gen_low ... ok
[INFO] [stdout] test core::rules::queue_latency::tests::template_output ... ok
[INFO] [stdout] test core::rules::tests::build_registry_includes_all_ten ... ok
[INFO] [stdout] test core::rules::tests::registry_filters_by_severity ... ok
[INFO] [stdout] test core::rules::tests::registry_run_all_returns_result_for_every_rule ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::stressed_when_running_imbalance ... ok
[INFO] [stdout] test core::rules::tpot_bottleneck::tests::fires_warning_when_tpot_high ... ok
[INFO] [stdout] test core::rules::tpot_bottleneck::tests::healthy_when_tpot_low ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::template_counts_affected_replicas_and_keeps_model_separate ... ok
[INFO] [stdout] test core::rules::tpot_bottleneck::tests::template_output ... ok
[INFO] [stdout] test core::rules::replica_imbalance::tests::healthy_when_balanced ... ok
[INFO] [stdout] test core::rules::ttft_bottleneck::tests::fires_warning_when_ttft_high ... ok
[INFO] [stdout] test core::rules::ttft_bottleneck::tests::healthy_when_ttft_low ... ok
[INFO] [stdout] test core::rules::ttft_bottleneck::tests::high_confidence_when_both_secondary_signals ... ok
[INFO] [stdout] test core::rules::ttft_bottleneck::tests::template_output ... ok
[INFO] [stdout] test core::signals::tests::abort_rate_computes_ratio ... ok
[INFO] [stdout] test core::signals::tests::display_all_signals ... ok
[INFO] [stdout] test core::signals::tests::error_rate_computes_ratio ... ok
[INFO] [stdout] test core::signals::tests::error_rate_zero_when_no_total ... ok
[INFO] [stdout] test core::signals::tests::evaluate_finite_skips_non_finite ... ok
[INFO] [stdout] test core::signals::tests::evaluate_or_uses_default ... ok
[INFO] [stdout] test core::signals::tests::evaluate_returns_none_for_missing_metric ... ok
[INFO] [stdout] test core::signals::tests::evaluate_returns_value_for_gauges ... ok
[INFO] [stdout] test core::signals::tests::models_collects_model_names ... ok
[INFO] [stdout] test core::signals::tests::models_returns_none_when_no_labels ... ok
[INFO] [stdout] test core::signals::tests::per_replica_empty_for_unsupported_signal ... ok
[INFO] [stdout] test core::signals::tests::per_replica_empty_without_replica_label ... ok
[INFO] [stdout] test core::signals::tests::per_replica_filters_by_model ... ok
[INFO] [stdout] test core::rules::ttft_bottleneck::tests::medium_confidence_when_one_secondary_signal ... ok
[INFO] [stdout] test core::signals::tests::per_replica_groups_by_label ... ok
[INFO] [stdout] test core::signals::tests::per_replica_skips_non_finite_values ... ok
[INFO] [stdout] test core::signals::tests::per_replica_supports_waiting_and_cache ... ok
[INFO] [stdout] test core::signals::tests::replica_label_none_for_single_replica ... ok
[INFO] [stdout] test core::signals::tests::replica_running_imbalance_detects_imbalance ... ok
[INFO] [stdout] test core::signals::tests::replica_running_imbalance_none_for_balanced ... ok
[INFO] [stdout] test core::signals::tests::replica_running_imbalance_none_for_single_replica ... ok
[INFO] [stdout] test core::signals::tests::replica_running_imbalance_zero_low_path ... ok
[INFO] [stdout] test core::rules::tpot_bottleneck::tests::high_confidence_when_both_secondary_signals ... ok
[INFO] [stdout] test core::signals::tests::snapshot_returns_inner_snapshot ... ok
[INFO] [stdout] test core::rules::tpot_bottleneck::tests::medium_confidence_when_one_secondary_signal ... ok
[INFO] [stdout] test core::signals::tests::total_requests_none_when_component_missing ... ok
[INFO] [stdout] test core::signals::tests::total_requests_sums_components ... ok
[INFO] [stdout] test tests::version_matches_cargo ... ok
[INFO] [stdout] test core::signals::tests::replica_label_detected_from_pod ... ok
[INFO] [stdout] test cli::stores::sqlite::tests::save_then_get_round_trips ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 297 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.25s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/cli/main.rs (/opt/rustwide/target/debug/build/vllm-doctor/62728c6bc95780ca/out/vllm_doctor-62728c6bc95780ca)
[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/cli_test.rs (/opt/rustwide/target/debug/build/vllm-doctor/ebe10527285dbe40/out/cli_test-ebe10527285dbe40)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test cli_json_output_ends_with_newline ... ok
[INFO] [stdout] test cli_upload_requires_token ... ok
[INFO] [stdout] test cli_text_output_contains_health ... ok
[INFO] [stdout] test cli_history_list_json_returns_saved_run ... ok
[INFO] [stdout] test cli_history_show_unknown_run_exits_2 ... ok
[INFO] [stdout] test cli_migrate_creates_database ... ok
[INFO] [stdout] test cli_save_failure_prints_output_and_exits_2 ... ok
[INFO] [stdout] test history_list_returns_empty_for_new_db ... ok
[INFO] [stdout] test history_show_returns_none_for_unknown_id ... ok
[INFO] [stdout] test cli_history_show_json_returns_saved_diagnosis ... ok
[INFO] [stdout] test cli_watch_serves_observability_endpoints_and_stops_cleanly ... ok
[INFO] [stdout] test history_list_json_serializes_runs ... ok
[INFO] [stdout] test history_show_returns_saved_run ... ok
[INFO] [stdout] test migrate_creates_database ... ok
[INFO] [stdout] test diagnose_save_persists_run ... ok
[INFO] [stderr]      Running tests/observation_contract_test.rs (/opt/rustwide/target/debug/build/vllm-doctor/77283f98668197c2/out/observation_contract_test-77283f98668197c2)
[INFO] [stdout] test cli_watch_recovers_when_target_starts_late_and_stops_on_sigint ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.53s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test every_registered_spec_round_trips ... ok
[INFO] [stdout] test counter_increases_labeled_window_delta ... ok
[INFO] [stdout] test compact_payload_cannot_exceed_256_kib ... ok
[INFO] [stdout] test direct_scrape_does_not_export_promql_derived_values ... ok
[INFO] [stdout] test disallowed_metrics_do_not_affect_replica_selection_or_limits ... ok
[INFO] [stdout] test blank_agent_and_target_ids_fail_at_builder_boundary ... ok
[INFO] [stdout] test forbidden_labels_never_appear_in_json ... ok
[INFO] [stdout] test golden_batch_matches_fixture ... ok
[INFO] [stdout] test inbound_validation_rejects_duplicates_conflicts_and_dimensions ... ok
[INFO] [stdout] test missing_values_produce_availability_not_zeros ... ok
[INFO] [stdout] test inbound_wire_types_reject_unknown_fields ... ok
[INFO] [stdout] test healthy_and_pressured_diagnoses_survive_round_trip ... ok
[INFO] [stdout] test local_diagnosis_is_not_trusted_during_reconstruction ... ok
[INFO] [stdout] test missing_measurements_remain_unknown ... ok
[INFO] [stdout] test non_finite_values_never_serialize ... ok
[INFO] [stdout] test published_contract_defaults_legacy_source_to_prometheus ... ok
[INFO] [stdout] test published_contract_deserializes_and_validates ... ok
[INFO] [stdout] test no_diagnosis_prose_in_json ... ok
[INFO] [stdout] test overlong_ids_fail ... ok
[INFO] [stdout] test only_stable_registry_ids_occur ... ok
[INFO] [stdout] test more_than_64_replicas_fails ... ok
[INFO] [stdout] test published_contract_rejects_unknown_enum_values ... ok
[INFO] [stdout] test registry_exposes_count_unit ... ok
[INFO] [stdout] test inbound_validation_rejects_unknown_ids_and_metadata_mismatches ... ok
[INFO] [stdout] test published_contract_rejects_unsupported_schema_versions ... ok
[INFO] [stdout] test quantiles_include_quantile_095 ... ok
[INFO] [stdout] test reordering_input_samples_does_not_change_output ... ok
[INFO] [stdout] test replica_imbalance_and_authoritative_aggregate_survive_round_trip ... ok
[INFO] [stdout] test replica_aliases_are_deterministic ... ok
[INFO] [stdout] test firing_rule_ids_are_sorted ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests vllm_doctor
[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" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3", kill_on_drop: false }`
[INFO] [stdout] 07b262e0d1c0005467c47a1c1ab3174b8b6c6810590822ef4bc93314f12513a3
