[INFO] fetching crate ferrox-cli 0.25.0...
[INFO] testing ferrox-cli-0.25.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate ferrox-cli 0.25.0 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate ferrox-cli 0.25.0
[INFO] finished tweaking crates.io crate ferrox-cli 0.25.0
[INFO] tweaked toml for crates.io crate ferrox-cli 0.25.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ferrox-cli 0.25.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 ferrox-cli 0.25.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] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:76:12
[INFO] [stderr]    |
[INFO] [stderr] 76 | homepage = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 | repository = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ferrox-cli` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830
[INFO] running `Command { std: "docker" "start" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", 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" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830" "/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" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", 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" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:76:12
[INFO] [stderr]    |
[INFO] [stderr] 76 | homepage = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 | repository = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ferrox-cli` (manifest) generated 1 warning
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling futures-core v0.3.33
[INFO] [stderr]    Compiling cc v1.4.0
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling zerovec-derive v0.11.4
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling crossbeam-deque v0.8.7
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling rustls v0.23.43
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling futures-sink v0.3.33
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling either v1.17.0
[INFO] [stderr]    Compiling futures-channel v0.3.33
[INFO] [stderr]    Compiling futures-task v0.3.33
[INFO] [stderr]    Compiling fs-err v3.3.1
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling async-trait v0.1.91
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling clap_lex v0.6.0
[INFO] [stderr]    Compiling memo-map v0.3.3
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling thread_local v1.1.10
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling clap_builder v4.4.18
[INFO] [stderr]    Compiling base64 v0.23.0
[INFO] [stderr]    Compiling http-body v1.1.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling http-body-util v0.1.4
[INFO] [stderr]    Compiling tower-http v0.7.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling minijinja v2.21.0
[INFO] [stderr]    Compiling ferrox-api v0.25.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling tokio-macros v2.7.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling clap_derive v4.4.7
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling fancy-regex v0.18.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.7
[INFO] [stderr]    Compiling zerotrie v0.2.5
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling ferrox-quant v0.25.0
[INFO] [stderr]    Compiling ferrox-cuda v0.25.0
[INFO] [stderr]    Compiling tinystr v0.8.4
[INFO] [stderr]    Compiling potential_utf v0.1.6
[INFO] [stderr]    Compiling icu_locale_core v2.3.0
[INFO] [stderr]    Compiling icu_collections v2.3.0
[INFO] [stderr]    Compiling ferrox-gguf v0.25.0
[INFO] [stderr]    Compiling ferrox-safetensors v0.25.0
[INFO] [stderr]    Compiling clap v4.4.18
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling ferrox-core v0.25.0
[INFO] [stderr]    Compiling icu_provider v2.3.0
[INFO] [stderr]    Compiling icu_properties v2.3.0
[INFO] [stderr]    Compiling icu_normalizer v2.3.0
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling ferrox-metal v0.25.0
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling h2 v0.4.15
[INFO] [stderr]    Compiling ferrox-moe v0.25.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling hyper v1.11.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling axum-server v0.8.0
[INFO] [stderr]    Compiling ferrox-models v0.25.0
[INFO] [stderr]    Compiling ferrox-server v0.25.0
[INFO] [stderr]    Compiling ferrox-cli v0.25.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 4m 07s
[INFO] running `Command { std: "docker" "inspect" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", 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" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:76:12
[INFO] [stderr]    |
[INFO] [stderr] 76 | homepage = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 | repository = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ferrox-cli` (manifest) generated 1 warning
[INFO] [stderr]    Compiling ferrox-cli v0.25.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 24.74s
[INFO] running `Command { std: "docker" "inspect" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", 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" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:76:12
[INFO] [stderr]    |
[INFO] [stderr] 76 | homepage = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 | repository = "https://github.com/antonellof/ferrox"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ferrox-cli` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.20s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/build/ferrox-cli/fe8c7bb90bad837a/out/ferrox-fe8c7bb90bad837a)
[INFO] [stdout] 
[INFO] [stdout] running 287 tests
[INFO] [stdout] test batched_bench::tests::a_zero_sweep_value_is_refused_before_the_model_loads ... ok
[INFO] [stdout] test batched_bench::report::tests::jsonl_rows_carry_upstreams_per_row_keys ... ok
[INFO] [stdout] test batched_bench::workload::tests::n_kv_is_sequences_times_prompt_plus_generation_in_both_modes ... ok
[INFO] [stdout] test batched_bench::workload::tests::rates_credit_a_shared_prompt_once_and_decode_across_every_sequence ... ok
[INFO] [stdout] test batched_bench::workload::tests::the_row_label_names_all_three_dimensions ... ok
[INFO] [stdout] test batched_bench::report::tests::the_table_header_is_upstreams_format_string_expanded ... ok
[INFO] [stdout] test batched_bench::tests::kv_bytes_count_k_and_v_in_f32_for_every_layer ... ok
[INFO] [stdout] test bench_client::tests::failed_requests_are_counted_and_an_empty_run_has_no_throughput ... ok
[INFO] [stdout] test bench_client::tests::a_benchmark_request_is_pinned_so_it_does_exactly_the_requested_work ... ok
[INFO] [stdout] test bench_client::tests::inter_token_samples_are_pooled_across_requests_not_averaged_twice ... ok
[INFO] [stdout] test batched_bench::tests::every_unhonoured_flag_is_refused_by_name ... ok
[INFO] [stdout] test bench_bw::tests::an_unmeasured_side_prints_as_a_dash ... ok
[INFO] [stdout] test batched_bench::report::tests::a_row_prints_in_upstream_widths ... ok
[INFO] [stdout] test bench_bw::tests::an_unoptimized_build_refuses_to_write_a_profile ... ok
[INFO] [stdout] test batched_bench::tests::the_sweep_lists_are_comma_separated_and_required ... ok
[INFO] [stdout] test bench_client::tests::a_buffered_server_is_credited_with_the_tokens_it_says_it_produced ... ok
[INFO] [stdout] test bench_client::tests::a_request_that_produced_nothing_has_no_latency_rather_than_zero ... ok
[INFO] [stdout] test bench_client::tests::only_a_chunk_that_carries_something_is_timed_as_a_token ... ok
[INFO] [stdout] test bench_client::tests::the_first_tic_is_the_time_to_first_token_whatever_it_carried ... ok
[INFO] [stdout] test bench_client::tests::throughput_is_the_whole_runs_tokens_over_the_whole_runs_span ... ok
[INFO] [stdout] test bench_contract::tests::a_cpu_label_does_not_describe_a_metal_run ... ok
[INFO] [stdout] test bench_guard::tests::a_cache_reset_to_zero_length_but_still_holding_data_is_not_cold ... ok
[INFO] [stdout] test bench_contract::tests::a_cpu_receipt_carries_the_shared_fields_and_no_accelerator ... ok
[INFO] [stdout] test bench_contract::tests::a_gpu_receipt_without_an_accelerator_name_is_not_written ... ok
[INFO] [stdout] test bench_guard::decode_guard_tests::a_correct_host_cache_reports_that_it_actually_checked ... ok
[INFO] [stdout] test bench_contract::tests::a_receipt_labelled_for_another_backend_is_not_written ... ok
[INFO] [stdout] test bench_contract::tests::the_ram_check_is_waived_with_the_load_check ... ok
[INFO] [stdout] test bench_contract::tests::the_cpu_backend_names_no_accelerator ... ok
[INFO] [stdout] test bench_guard::decode_guard_tests::a_device_resident_cache_is_not_counted_and_says_so ... ok
[INFO] [stdout] test batched_bench::report::tests::a_receipt_keeps_the_envelope_and_adds_the_rows ... ok
[INFO] [stdout] test batched_bench::tests::combos_come_in_upstream_order_and_oversized_rows_are_dropped ... ok
[INFO] [stdout] test batched_bench::report::tests::the_header_line_prints_flags_as_ints_like_upstream ... ok
[INFO] [stdout] test batched_bench::report::tests::the_header_separator_and_rows_are_the_same_width ... ok
[INFO] [stdout] test bench_guard::tests::a_model_with_no_caches_is_not_silently_accepted ... ok
[INFO] [stdout] test bench_guard::tests::a_prefill_that_ran_long_is_caught_too ... ok
[INFO] [stdout] test bench_guard::tests::a_prompt_primed_cache_is_expected_to_hold_prompt_plus_decode_positions ... ok
[INFO] [stdout] test bench_guard::tests::a_clean_environment_records_nothing_rather_than_a_placeholder ... ok
[INFO] [stdout] test bench_guard::tests::a_row_must_carry_exactly_one_discarded_warmup ... ok
[INFO] [stdout] test bench_guard::tests::a_run_with_no_timed_repetitions_is_refused ... ok
[INFO] [stdout] test bench_guard::tests::a_short_token_stream_cannot_be_reported_as_a_full_prompt ... ok
[INFO] [stdout] test bench_guard::tests::a_warm_cache_at_any_layer_stops_the_repetition ... ok
[INFO] [stdout] test bench_guard::tests::a_token_outside_the_vocabulary_is_caught_before_the_run ... ok
[INFO] [stdout] test bench_guard::tests::a_truncated_prefill_cannot_report_the_full_prompt_length ... ok
[INFO] [stdout] test bench_guard::tests::a_zero_length_prompt_is_never_timed ... ok
[INFO] [stdout] test bench_guard::decode_guard_tests::a_short_host_cache_still_fails ... ok
[INFO] [stdout] test bench_guard::tests::an_empty_sample_set_is_left_to_the_warmup_accounting ... ok
[INFO] [stdout] test bench_guard::tests::an_engine_that_answered_differently_from_the_same_tokens_is_refused ... ok
[INFO] [stdout] test bench_guard::tests::an_infinite_rate_is_refused_because_it_would_sort_into_the_median ... ok
[INFO] [stdout] test bench_contract::tests::the_early_label_check_refuses_the_published_mismatch ... ok
[INFO] [stdout] test bench_guard::tests::identical_token_streams_digest_identically_and_different_ones_do_not ... ok
[INFO] [stdout] test bench_model::tests::a_repetition_that_returned_no_logits_is_refused_rather_than_timed ... ok
[INFO] [stdout] test bench_model::tests::both_token_streams_satisfy_the_before_check_they_are_handed_to ... ok
[INFO] [stdout] test bench_model::tests::stddev_is_the_population_form_that_llama_bench_prints ... ok
[INFO] [stdout] test bench_model::tests::stddev_is_zero_for_identical_samples_and_undefined_counts_report_zero ... ok
[INFO] [stdout] test bench_guard::tests::engine_env_recording_keeps_the_knobs_and_drops_the_bench_own_settings ... ok
[INFO] [stdout] test bench_guard::tests::greedy_pick_is_the_first_maximum_and_refuses_nan ... ok
[INFO] [stdout] test bench_guard::tests::last_bit_logit_noise_is_not_treated_as_nondeterminism ... ok
[INFO] [stdout] test bench_guard::tests::skipped_decode_steps_are_caught_by_the_final_cache_length ... ok
[INFO] [stdout] test bench_model::tests::median_of_an_odd_sample_count_is_the_middle_value_regardless_of_order ... ok
[INFO] [stdout] test bench_guard::tests::the_digest_is_order_sensitive_and_length_sensitive ... ok
[INFO] [stdout] test bench_model::tests::truncate_leaves_short_strings_alone_and_clips_long_ones ... ok
[INFO] [stdout] test bench_render::tests::gap_cell_colours_match_the_ledger_convention ... ok
[INFO] [stdout] test bench_render::tests::splice_appends_when_the_markers_are_missing ... ok
[INFO] [stdout] test bench_render::tests::splice_does_not_duplicate_the_block_on_a_second_render ... ok
[INFO] [stdout] test bench_render::tests::splice_replaces_an_existing_block_and_keeps_the_surrounding_text ... ok
[INFO] [stdout] test bench_render::tests::rendering_nothing_refuses_instead_of_emptying_the_ledger ... ok
[INFO] [stdout] test bench_model::tests::human_readable_sizes_switch_units_at_a_gibibyte ... ok
[INFO] [stdout] test bench_model::tests::the_decode_stream_is_the_one_the_loop_used_to_generate_inline ... ok
[INFO] [stdout] test bench_model::tests::human_readable_params_switch_units_at_a_billion ... ok
[INFO] [stdout] test bench_guard::tests::the_digest_is_stable_across_runs_so_two_receipts_can_be_compared ... ok
[INFO] [stdout] test bench_model::tests::median_of_an_even_sample_count_averages_the_two_middle_values ... ok
[INFO] [stdout] test bench_model::tests::the_first_repetitions_answer_becomes_the_one_the_rest_must_match ... ok
[INFO] [stdout] test bench_guard::tests::the_warmup_count_is_one_and_the_message_says_so ... ok
[INFO] [stdout] test bench_render::tests::a_models_prefill_and_decode_share_one_row ... ok
[INFO] [stdout] test bench_model::tests::sequence_zero_is_the_historical_stream_and_other_sequences_differ ... ok
[INFO] [stdout] test bench_bw::tests::a_build_that_cannot_reach_a_device_produces_no_profile_entry ... ok
[INFO] [stdout] test bench_bw::tests::the_cpu_side_measures_a_positive_bandwidth ... ok
[INFO] [stdout] test bench_suite::committed_receipt_tests::every_committed_receipt_ran_on_the_backend_it_claims ... ok
[INFO] [stdout] test bench_render::tests::two_hosts_render_as_two_sections_rather_than_an_error ... ok
[INFO] [stdout] test bench_render::tests::the_summary_is_derived_from_the_same_rows_as_the_detail_tables ... ok
[INFO] [stdout] test bench_render::tests::the_column_headers_name_the_workload_that_ran ... ok
[INFO] [stdout] test bench_suite::host_identity_tests::a_cpu_row_is_identified_by_its_host_alone ... ok
[INFO] [stdout] test bench_suite::host_identity_tests::a_receipt_with_no_spec_is_one_named_unknown_host ... ok
[INFO] [stdout] test bench_suite::host_identity_tests::the_same_host_and_card_is_one_host ... ok
[INFO] [stdout] test bench_render::tests::a_model_measured_on_one_workload_is_not_dropped ... ok
[INFO] [stdout] test chat::tests::a_reasoning_models_thoughts_are_shown_rather_than_dropped ... ok
[INFO] [stdout] test chat::tests::a_statistic_the_server_could_not_state_renders_as_a_dash ... ok
[INFO] [stdout] test bench_suite::host_identity_tests::two_cards_in_one_host_are_two_hosts ... ok
[INFO] [stdout] test chat::tests::a_stream_that_ends_mid_thought_still_resets_the_terminal ... ok
[INFO] [stdout] test chat::tests::a_gear_this_server_does_not_have_is_refused_with_the_ones_it_does ... ok
[INFO] [stdout] test chat::tests::stats_renders_the_pool_and_memory_when_the_server_has_them ... ok
[INFO] [stdout] test bench_suite::tests::a_receipt_name_carries_its_host ... ok
[INFO] [stdout] test chat::tests::the_dim_run_is_opened_once_and_closed_before_the_answer ... ok
[INFO] [stdout] test chat::tests::a_plain_answer_is_printed_without_any_escapes ... ok
[INFO] [stdout] test chat::tests::a_finished_turn_stops_being_interruptible_however_it_ended ... ok
[INFO] [stdout] test chat::tests::the_gears_are_whatever_this_server_advertises ... ok
[INFO] [stdout] test cli_tests::rewrites_llama_multi_character_short_options ... ok
[INFO] [stdout] test cli_tests::serve_is_not_rewritten_into_an_implicit_run ... ok
[INFO] [stdout] test chat::tests::the_thought_is_never_part_of_the_answer_that_is_replayed ... ok
[INFO] [stdout] test cli_tests::a_global_flag_before_a_subcommand_does_not_trigger_the_run_rewrite ... ok
[INFO] [stdout] test cli_tests::serve_keeps_the_llama_style_short_options ... ok
[INFO] [stdout] test cli_tests::every_clap_subcommand_survives_the_argv_rewriter ... ok
[INFO] [stdout] test cli_tests::serve_parses_the_same_command_line_as_ferrox_server ... ok
[INFO] [stdout] test cli_tests::serve_does_not_claim_the_instance_registry_from_the_cli_side ... ok
[INFO] [stdout] test cli_tests::serve_exposes_every_flag_ferrox_server_has ... ok
[INFO] [stdout] test chat::tests::a_server_that_advertises_no_gears_has_no_think_command ... ok
[INFO] [stdout] test cli_tests::the_quantize_help_names_every_target_the_policy_accepts ... ok
[INFO] [stdout] test gguf_split::tests::conflicting_flags_are_refused_at_parse_time ... ok
[INFO] [stdout] test gguf_split::tests::every_split_only_flag_is_refused_by_merge_and_named_in_the_refusal ... ok
[INFO] [stdout] test cli_tests::serve_accepts_list_devices_on_its_own ... ok
[INFO] [stdout] test gguf_split::tests::split_size_units_are_decimal_like_llama_cpp ... ok
[INFO] [stdout] test host_state::host_spec_tests::nothing_is_guessed_when_the_platform_will_not_say ... ok
[INFO] [stdout] test gguf_split::tests::the_default_mode_is_128_tensors_and_a_size_flag_switches_it ... ok
[INFO] [stdout] test chat::tests::the_request_id_is_read_from_the_chunk_that_states_it ... ok
[INFO] [stdout] test host_state::host_spec_tests::the_label_describes_the_kind_of_machine_not_the_instance ... ok
[INFO] [stdout] test host_state::tests::free_ram_counts_reclaimable_pages_not_just_free_ones ... ok
[INFO] [stdout] test host_state::tests::sysctl_loadavg_braces_are_not_mistaken_for_a_number ... ok
[INFO] [stdout] test host_state::tests::pmset_reports_a_speed_limit_only_when_it_has_one ... ok
[INFO] [stdout] test host_state::tests::the_gate_refuses_above_the_bar_and_says_the_number ... ok
[INFO] [stdout] test cli_tests::allow_multiple_instances_reaches_serve_from_either_side_of_the_subcommand ... ok
[INFO] [stdout] test host_state::tests::waiting_is_disabled_by_the_same_switch_that_disables_refusing ... ok
[INFO] [stdout] test http::tests::a_failed_response_reports_what_the_server_said ... ok
[INFO] [stdout] test http::tests::a_url_splits_into_host_port_and_path ... ok
[INFO] [stdout] test http::tests::an_unparseable_port_is_an_error ... ok
[INFO] [stdout] test host_state::tests::the_thermal_gate_refuses_when_hot_and_never_when_unknown ... ok
[INFO] [stdout] test http::tests::a_non_http_url_is_refused_by_name ... ok
[INFO] [stdout] test host_state::tests::thermal_pressure_refuses_only_from_serious_upward ... ok
[INFO] [stdout] test host_state::host_spec_tests::a_supported_platform_reports_its_cpu_and_memory ... ok
[INFO] [stdout] test imatrix::collector::tests::a_non_finite_sum_is_reported_with_its_entry ... ok
[INFO] [stdout] test imatrix::collector::tests::experts_accumulate_into_their_own_matrix_and_count ... ok
[INFO] [stdout] test imatrix::collector::tests::an_unregistered_matrix_is_ignored ... ok
[INFO] [stdout] test host_state::tests::a_model_larger_than_free_ram_is_refused_with_both_figures ... ok
[INFO] [stdout] test imatrix::file::tests::a_legacy_value_count_larger_than_the_file_is_refused_before_allocating ... ok
[INFO] [stdout] test imatrix::file::tests::a_gguf_without_the_imatrix_type_is_refused ... ok
[INFO] [stdout] test imatrix::collector::tests::dense_sums_squares_per_column_and_counts_rows ... ok
[INFO] [stdout] test host_state::tests::a_capped_cpu_is_degraded_even_without_a_pressure_level ... ok
[INFO] [stdout] test host_state::tests::a_disabled_gate_still_reports_the_load_it_read ... ok
[INFO] [stdout] test host_state::tests::an_unmeasured_thermal_reading_is_not_a_nominal_one ... ok
[INFO] [stdout] test layer_divergence::tests::a_dense_layer_has_no_routing_number ... ok
[INFO] [stdout] test host_state::tests::an_unparseable_loadavg_is_none_rather_than_zero ... ok
[INFO] [stdout] test layer_divergence::tests::a_head_that_collapsed_to_zero_is_flagged ... ok
[INFO] [stdout] test host_state::tests::an_unknown_footprint_never_refuses ... ok
[INFO] [stdout] test host_state::tests::an_unknown_ns_thermal_level_is_not_decoded_as_nominal ... ok
[INFO] [stdout] test imatrix::file::tests::gguf_round_trip_divides_sums_by_counts_and_substitutes_one_for_empty ... ok
[INFO] [stdout] test layer_divergence::tests::one_wrong_head_moves_the_spread_and_not_the_mean ... ok
[INFO] [stdout] test layer_divergence::tests::routing_delta_is_zero_for_identical_histograms_and_scale_free ... ok
[INFO] [stdout] test layer_divergence::tests::a_side_that_recorded_nothing_is_not_agreement ... ok
[INFO] [stdout] test layer_divergence::tests::routing_delta_sees_a_swapped_expert ... ok
[INFO] [stdout] test parity::calibration::tests::a_calibrated_line_never_drops_below_the_absolute_one ... ok
[INFO] [stdout] test parity::calibration::tests::no_measured_checkpoint_is_wrong_when_the_references_are_calibrated ... ok
[INFO] [stdout] test parity::calibration::tests::the_checkpoint_that_broke_the_constant_is_inside_its_own_measured_band ... ok
[INFO] [stdout] test host_state::host_spec_tests::the_spec_carries_no_identifying_field ... ok
[INFO] [stdout] test layer_divergence::tests::a_head_that_is_zero_on_both_sides_is_not_a_divergence ... ok
[INFO] [stdout] test layer_divergence::tests::head_norms_reads_the_seq_heads_dim_layout ... ok
[INFO] [stdout] test parity::calibration::tests::a_pair_of_references_that_cannot_disagree_does_not_calibrate_anything ... ok
[INFO] [stdout] test layer_divergence::tests::a_layer_that_holds_no_positions_at_all_is_not_flagged ... ok
[INFO] [stdout] test layer_divergence::tests::identical_heads_are_exactly_one ... ok
[INFO] [stdout] test parity::calibration::tests::one_reference_declines_to_convict_a_kquant_rather_than_guessing_a_line ... ok
[INFO] [stdout] test parity::calibration::tests::one_reference_still_gates_a_q8_0_dotted_checkpoint_at_the_unchanged_line ... ok
[INFO] [stdout] test parity::dump::tests::a_dumped_vector_reads_back_bit_for_bit ... ok
[INFO] [stdout] test parity::dump::tests::no_two_dumped_vectors_share_a_file_name ... ok
[INFO] [stdout] test imatrix::file::tests::legacy_round_trip_reproduces_quantize_cpps_division ... ok
[INFO] [stdout] test parity::calibration::tests::the_verdict_does_not_depend_on_which_reference_was_passed_first ... ok
[INFO] [stdout] test parity::tests::a_different_graph_is_reported_wrong ... ok
[INFO] [stdout] test parity::metrics::tests::kl_is_zero_for_identical_distributions_and_asymmetric_otherwise ... ok
[INFO] [stdout] test parity::quant::tests::a_q8_0_head_over_a_kquant_body_is_judged_as_the_kquant_it_is ... ok
[INFO] [stdout] test parity::quant::tests::iq4_xs_is_q8k_dotted_and_iq4_nl_is_not ... ok
[INFO] [stdout] test parity::quant::tests::the_q8k_predicate_uses_the_dtype_debug_spelling ... ok
[INFO] [stdout] test parity::calibration::tests::the_spread_is_the_larger_of_the_two_kl_directions ... ok
[INFO] [stdout] test layer_divergence::tests::a_side_with_positions_but_no_magnitude_is_an_error_not_a_pass ... ok
[INFO] [stdout] test parity::metrics::tests::ulps_between_counts_representable_values_not_absolute_distance ... ok
[INFO] [stdout] test parity::metrics::tests::softmax_is_shift_invariant_even_where_exp_would_overflow ... ok
[INFO] [stdout] test parity::quant::tests::a_kquant_head_over_a_q8_0_body_still_relaxes_rather_than_inventing_a_wrong ... ok
[INFO] [stdout] test parity::quant::tests::the_body_is_read_off_the_layers_and_the_output_head_does_not_vote_in_it ... ok
[INFO] [stdout] test parity::tests::same_top1_with_a_shifted_tail_is_drift_not_a_match ... ok
[INFO] [stdout] test parity::tokenize::tests::a_version_one_result_is_refused_and_names_the_rebuild ... ok
[INFO] [stdout] test parity::tokenize::tests::an_empty_pair_agrees_and_a_half_empty_pair_does_not ... ok
[INFO] [stdout] test parity::tokenize::tests::ferrox_and_llama_cpp_tokenize_the_corpus_identically ... ignored, needs ./tools/build_llama_logits.sh and checkpoints under models/
[INFO] [stdout] test parity::tests::the_reference_identity_is_parsed_and_its_absence_is_not_invented ... ok
[INFO] [stdout] test parity::tokenize::tests::a_result_file_round_trips_flags_vocab_and_both_runs_of_every_case ... ok
[INFO] [stdout] test parity::tokenize::tests::an_equal_prefix_with_a_longer_tail_still_diverges ... ok
[INFO] [stdout] test parity::tokenize::tests::identical_sequences_do_not_diverge ... ok
[INFO] [stdout] test parity::tokenize::corpus::tests::the_corpus_covers_the_inputs_that_pre_tokenizers_disagree_on ... ok
[INFO] [stdout] test parity::tokenize::tests::the_byte_offset_counts_the_agreed_prefix ... ok
[INFO] [stdout] test parity::tokenize::tests::the_case_file_is_length_prefixed_so_newlines_survive ... ok
[INFO] [stdout] test parity::tokenize::tests::the_window_is_clamped_at_both_ends ... ok
[INFO] [stdout] test perplexity::tests::a_context_that_scores_nothing_is_refused_rather_than_reported_as_nan ... ok
[INFO] [stdout] test parity::tests::a_near_tie_that_swaps_is_a_tie_flip_not_a_failure ... ok
[INFO] [stdout] test parity::tests::the_verdict_is_the_same_whichever_reference_the_report_names ... ok
[INFO] [stdout] test parity::tests::the_wrong_rung_is_decided_by_the_nearest_reference_not_the_one_being_reported ... ok
[INFO] [stdout] test parity::tokenize::tests::the_context_slice_never_splits_a_character ... ok
[INFO] [stdout] test perplexity::tests::consecutive_windows_abut_exactly_and_stay_inside_the_corpus ... ok
[INFO] [stdout] test perplexity::tests::every_scored_position_has_its_successor_inside_the_window ... ok
[INFO] [stdout] test perplexity::tests::adding_a_constant_to_every_logit_does_not_move_the_score ... ok
[INFO] [stdout] test parity::tests::a_ferrox_further_from_every_reference_than_they_are_from_each_other_is_wrong ... ok
[INFO] [stdout] test parity::tests::identical_logits_are_a_match ... ok
[INFO] [stdout] test perplexity::tests::confidence_in_the_right_token_costs_less_than_confidence_in_the_wrong_one ... ok
[INFO] [stdout] test parity::tests::a_uniform_logit_shift_is_invisible_because_softmax_is_shift_invariant ... ok
[INFO] [stdout] test parity::tokenize::tests::a_mismatched_pair_is_reported_as_a_divergence ... ok
[INFO] [stdout] test parity::tests::the_reported_gap_is_the_same_pair_on_both_sides_and_flips_sign ... ok
[INFO] [stdout] test perplexity::tests::a_uniform_distribution_costs_the_natural_log_of_the_vocabulary ... ok
[INFO] [stdout] test parity::tokenize::tests::the_unsupported_exit_code_matches_the_c_side ... FAILED
[INFO] [stdout] test parity::tokenize::tests::a_malformed_result_is_refused_rather_than_half_read ... ok
[INFO] [stdout] test parity::tests::every_dumper_is_resolved_and_a_missing_one_is_never_substituted ... ok
[INFO] [stdout] test perplexity::tests::a_corpus_shorter_than_two_contexts_is_refused ... ok
[INFO] [stdout] test perplexity::tests::chunks_clamps_down_but_never_up_and_zero_is_refused ... ok
[INFO] [stdout] test perplexity::tests::a_target_outside_the_logit_row_is_refused_by_name ... ok
[INFO] [stdout] test perplexity::tests::the_default_window_scores_the_second_half_minus_one ... ok
[INFO] [stdout] test perplexity::tests::odd_context_sizes_round_the_scored_half_down ... ok
[INFO] [stdout] test perplexity::tests::the_committed_corpus_is_long_enough_for_the_default_context ... ok
[INFO] [stdout] test perplexity::tests::the_standard_error_is_the_error_of_the_mean_pushed_through_exp ... ok
[INFO] [stdout] test quant_sensitivity::tests::an_all_zero_block_round_trips_without_a_nan ... ok
[INFO] [stdout] test perplexity::tests::too_few_or_identical_observations_report_no_standard_error ... ok
[INFO] [stdout] test quant_sensitivity::tests::family_shares_sum_to_one_and_name_the_worst_tensor ... ok
[INFO] [stdout] test quant_sensitivity::tests::candidate_names_round_trip ... ok
[INFO] [stdout] test perplexity::tests::the_estimate_exponentiates_the_mean_rather_than_averaging_exponentials ... ok
[INFO] [stdout] test quant_sensitivity::tests::layer_ranges_are_end_exclusive_and_bounded ... ok
[INFO] [stdout] test quant_sensitivity::tests::percentile_picks_the_upper_tail ... ok
[INFO] [stdout] test quant_sensitivity::tests::q4_0_keeps_the_extreme_value_representable ... ok
[INFO] [stdout] test quant_sensitivity::tests::kl_of_a_distribution_against_itself_is_zero ... ok
[INFO] [stdout] test quant_sensitivity::tests::the_int_dot_path_is_refused_rather_than_silently_wrong ... ok
[INFO] [stdout] test quant_sensitivity::tests::q4_0_round_trips_a_block_the_way_ferrox_quant_reads_it ... ok
[INFO] [stdout] test quant_sensitivity::tests::family_rollup_strips_the_layer_and_the_expert_index ... ok
[INFO] [stdout] test quant_sensitivity::tests::kl_grows_with_the_damage ... ok
[INFO] [stdout] test quantize::imatrix_input::tests::a_missing_entry_is_unweighted_and_a_wrong_width_is_refused_except_for_the_embedding ... ok
[INFO] [stdout] test quantize::imatrix_input::tests::a_tensor_gets_its_slice_when_the_width_matches ... ok
[INFO] [stdout] test quantize::imatrix_input::tests::the_truncation_respects_char_boundaries ... ok
[INFO] [stdout] test perplexity::tests::windows_tile_the_corpus_without_overlap ... ok
[INFO] [stdout] test quantize::policy::tests::every_llama_cpp_target_ferrox_cannot_write_refuses_as_a_gap_not_a_typo ... ok
[INFO] [stdout] test quantize::policy::tests::q4_k_is_the_same_target_as_q4_k_m_the_way_llama_quantize_aliases_it ... ok
[INFO] [stdout] test quantize::policy::tests::the_target_enum_and_the_llama_cpp_name_table_cover_each_other ... ok
[INFO] [stdout] test quantize::policy::tests::the_k_quant_mixes_no_longer_need_pure ... ok
[INFO] [stdout] test quantize::policy::tests::the_writable_summary_names_every_target ... ok
[INFO] [stdout] test quantize::recipe::tests::a_tied_embedding_table_gets_the_output_heads_type ... ok
[INFO] [stdout] test quantize::policy::tests::trailing_unit_dimensions_do_not_make_a_tensor_two_dimensional ... ok
[INFO] [stdout] test quantize::recipe::tests::a_fused_qkv_checkpoint_promotes_every_layer_and_still_counts_them ... ok
[INFO] [stdout] test quantize::imatrix_input::tests::the_metadata_keys_match_llama_quantizes_types_and_truncation ... ok
[INFO] [stdout] test quantize::recipe::tests::a_moe_checkpoints_ffn_layer_comes_from_the_name_not_the_counter ... ok
[INFO] [stdout] test quantize::policy::tests::a_target_with_no_encoder_is_refused_by_name_and_says_what_can_be_written ... ok
[INFO] [stdout] test quantize::recipe::tests::tensors_are_walked_in_llama_cpps_weights_map_order_not_the_files ... ok
[INFO] [stdout] test quantize::recipe::tests::the_post_chain_overrides_beat_the_chain_row_they_follow ... ok
[INFO] [stdout] test quantize::recipe::tests::the_recipe_only_promotes_to_types_ferrox_can_encode ... ok
[INFO] [stdout] test quantize::recipe::tests::the_table_and_the_target_list_cover_each_other ... ok
[INFO] [stdout] test quantize::recipe_golden::tests::the_three_mixes_actually_disagree_in_the_golden ... ok
[INFO] [stdout] test quantize::recipe::tests::use_more_bits_is_llama_cpps_integer_arithmetic ... ok
[INFO] [stdout] test quantize::policy::tests::a_name_that_is_not_a_quant_at_all_says_so ... ok
[INFO] [stdout] test quantize::policy::tests::a_tensor_already_in_the_target_type_is_copied_not_re_encoded ... ok
[INFO] [stdout] test quantize::recipe::tests::q4_k_s_promotes_a_prefix_where_q4_k_m_promotes_a_pattern ... ok
[INFO] [stdout] test quantize::tests::a_row_length_that_is_not_a_multiple_of_the_block_size_is_refused ... ok
[INFO] [stdout] test quantize::policy::tests::target_names_are_case_insensitive_like_llama_quantize ... ok
[INFO] [stdout] test quantize::policy::tests::the_tensors_llama_cpp_keeps_at_source_precision_are_kept ... ok
[INFO] [stdout] test quantize::recipe::tests::an_output_head_with_an_awkward_row_length_goes_to_q8_0 ... ok
[INFO] [stdout] test quantize::tests::asking_for_a_target_with_no_encoder_refuses_before_touching_the_filesystem ... ok
[INFO] [stdout] test quantize::tests::the_default_output_name_carries_the_target_and_sits_beside_the_input ... ok
[INFO] [stdout] test quantize::tests::an_existing_output_is_not_overwritten_without_force ... ok
[INFO] [stdout] test quantize::recipe_golden::tests::ferrox_chooses_the_same_type_llama_quantize_chose_for_every_tensor ... ok
[INFO] [stdout] test quantize::tests::an_already_quantized_source_tensor_is_refused_by_name ... ok
[INFO] [stdout] test quantize::recipe::tests::q4_k_m_promotes_attn_v_and_ffn_down_on_exactly_the_use_more_bits_layers ... ok
[INFO] [stdout] test quantize::tests::a_row_too_narrow_for_a_super_block_is_refused_and_names_llama_cpps_fallback ... ok
[INFO] [stdout] test quantize::recipe::tests::every_k_quant_mix_sends_the_output_head_to_q6_k ... ok
[INFO] [stdout] test quantize::recipe::tests::tensor_names_land_in_llama_cpps_arms ... ok
[INFO] [stdout] test run::tests::a_partial_gpu_layer_count_is_refused_rather_than_rounded_up ... ok
[INFO] [stdout] test quantize::recipe::tests::resolve_all_is_independent_of_the_order_it_is_handed_the_tensors ... ok
[INFO] [stdout] test run::tests::the_banner_reports_the_kv_dtype_the_run_will_actually_keep ... ok
[INFO] [stdout] test run::tests::the_default_flags_forbid_the_metal_greedy_argmax_fold ... ok
[INFO] [stdout] test run::tests::a_metal_run_reports_the_requested_dtype_with_no_caveat ... ok
[INFO] [stdout] test run::tests::a_caller_supplied_order_reaches_the_sampler ... ok
[INFO] [stdout] test run::tests::a_sampler_ferrox_lacks_is_refused_by_name_on_the_command_line ... ok
[INFO] [stdout] test run::tests::parses_llama_gpu_layer_values ... ok
[INFO] [stdout] test run::tests::escapes_are_processed_by_default_like_llama_cpp ... ok
[INFO] [stdout] test serve_bench::tests::a_latency_that_was_never_measured_prints_as_a_dash ... ok
[INFO] [stdout] test serve_bench::tests::the_filler_prompt_is_reproducible_and_not_one_repeated_word ... ok
[INFO] [stdout] test verify_engine::tests::parity_context_size_is_tokens_plus_eight ... ok
[INFO] [stdout] test verify_engine::tests::a_repeated_token_that_equals_bos_is_only_stripped_at_the_front ... ok
[INFO] [stdout] test verify_engine::tests::stretch_is_a_no_op_at_the_current_length ... ok
[INFO] [stdout] test serve_bench::tests::a_bench_request_pins_everything_the_methodology_depends_on ... ok
[INFO] [stdout] test verify_engine::tests::stretch_refuses_to_shorten_or_empty_a_prompt ... ok
[INFO] [stdout] test verify_engine::tests::stretch_without_bos_cycles_the_whole_prompt ... ok
[INFO] [stdout] test quantize::tests::an_f16_gguf_round_trips_through_quantize_and_reads_back_as_q8_0 ... ok
[INFO] [stdout] test quantize::tests::the_quantized_tensor_bytes_are_what_the_encoder_produces_for_those_rows ... ok
[INFO] [stdout] test verify_engine::tests::stretch_repeats_the_body_and_keeps_one_bos ... ok
[INFO] [stdout] test run::tests::samplers_defaults_to_the_chain_ferrox_already_ran ... ok
[INFO] [stdout] test run::tests::the_banner_does_not_promise_gpu_layers_on_a_cpu_device ... ok
[INFO] [stdout] test quantize::tests::the_q4_k_m_mix_promotes_the_output_head_and_pure_does_not ... ok
[INFO] [stdout] test quantize::tests::an_f16_gguf_round_trips_through_quantize_and_reads_back_as_q4_k ... ok
[INFO] [stdout] test quantize::tests::an_imatrix_reaches_the_encoder_and_is_recorded_in_the_metadata ... ok
[INFO] [stdout] test host_state::tests::an_impossible_bar_times_out_instead_of_waiting_forever ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- parity::tokenize::tests::the_unsupported_exit_code_matches_the_c_side stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'parity::tokenize::tests::the_unsupported_exit_code_matches_the_c_side' (2625) panicked at src/parity/tokenize.rs:763:14:
[INFO] [stdout] the dumper source is tracked next to this crate: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5ed13c6bbf21 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5ed13c6d621a - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x5ed13c6c165c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5ed13c694a26 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5ed13c6b2a29 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x5ed13c4990d0 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x5ed13c6b2d52 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5ed13c694ad2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5ed13c68ced9 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5ed13c6957ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x5ed13c6d69fc - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5ed13c6d67d2 - core[a373ad73a504971]::result::unwrap_failed
[INFO] [stdout]   12:     0x5ed13c442e1d - <ferrox[362c669663ff8d]::parity::tokenize::tests::the_unsupported_exit_code_matches_the_c_side::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   13:     0x5ed13c48c51b - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   14:     0x5ed13c4996f5 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   15:     0x5ed13c492fe4 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   16:     0x5ed13c49c782 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   17:     0x5ed13c6baf1f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   18:     0x77783c597dfa - <unknown>
[INFO] [stdout]   19:     0x77783c62b3d4 - clone
[INFO] [stdout]   20:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     parity::tokenize::tests::the_unsupported_exit_code_matches_the_c_side
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 285 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 5.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin ferrox`
[INFO] running `Command { std: "docker" "inspect" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830", kill_on_drop: false }`
[INFO] [stdout] 57ea7492296f1536de9e3f5d8e89f4f7023c7c6950da5ce579aca45c5adc9830
