[INFO] fetching crate warden-cli 0.1.1...
[INFO] testing warden-cli-0.1.1 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate warden-cli 0.1.1 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate warden-cli 0.1.1
[INFO] finished tweaking crates.io crate warden-cli 0.1.1
[INFO] tweaked toml for crates.io crate warden-cli 0.1.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate warden-cli 0.1.1 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate warden-cli 0.1.1 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap v4.6.5
[INFO] [stderr]   Downloaded clap_builder v4.6.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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] c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca
[INFO] running `Command { std: "docker" "start" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", 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" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", 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" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling clap_builder v4.6.5
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling clap v4.6.5
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling warden-cli v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.70s
[INFO] running `Command { std: "docker" "inspect" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", 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" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling fastrand v2.5.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling warden-cli v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 10.62s
[INFO] running `Command { std: "docker" "inspect" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", 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" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/warden-5795dffd1e70a225)
[INFO] [stdout] 
[INFO] [stdout] running 168 tests
[INFO] [stdout] test adapters::claude_code::tests::tool_target_is_absent_when_the_input_is_not_path_like ... ok
[INFO] [stdout] test adapters::claude_code::tests::missing_optional_fields_stay_absent ... ok
[INFO] [stdout] test adapters::claude_code::tests::sibling_records_of_one_request_share_a_usage_key ... ok
[INFO] [stdout] test adapters::claude_code::tests::maps_an_assistant_record_field_for_field ... ok
[INFO] [stdout] test adapters::claude_code::tests::duration_is_never_invented ... ok
[INFO] [stdout] test adapters::claude_code::tests::malformed_lines_are_counted_not_fatal ... ok
[INFO] [stdout] test adapters::claude_code::tests::user_records_yield_prompt_text_in_both_content_shapes ... ok
[INFO] [stdout] test adapters::claude_code::tests::sidechain_records_are_ingested_and_marked ... ok
[INFO] [stdout] test adapters::tests::usage_key_boundaries_are_unambiguous ... ok
[INFO] [stdout] test cli::tests::parses_absolute_date_as_utc_midnight ... ok
[INFO] [stdout] test adapters::claude_code::tests::worktree_suffix_is_preserved_as_is ... ok
[INFO] [stdout] test adapters::claude_code::tests::tool_results_are_not_prompts ... ok
[INFO] [stdout] test cli::tests::parses_relative_days ... ok
[INFO] [stdout] test cli::tests::parses_relative_hours_minutes_weeks ... ok
[INFO] [stdout] test cli::tests::rejects_nonsense ... ok
[INFO] [stdout] test cli::tests::draft_and_json_conflict_at_the_parser ... ok
[INFO] [stdout] test cli::tests::window_containment_is_half_open ... ok
[INFO] [stdout] test commands::doctor::tests::scales_byte_sizes ... ok
[INFO] [stdout] test commands::doctor::tests::the_table_output_still_explains_every_empty_column ... ok
[INFO] [stdout] test adapters::tests::jsonl_walk_is_recursive_sorted_and_extension_filtered ... ok
[INFO] [stdout] test adapters::tests::registry_lists_every_adapter_a_user_might_expect ... ok
[INFO] [stdout] test commands::doctor::tests::json_emits_the_envelope_and_nothing_else ... ok
[INFO] [stdout] test commands::ingest::tests::json_emits_the_envelope_and_nothing_else ... ok
[INFO] [stdout] test commands::ingest::tests::the_table_output_is_the_documented_line ... ok
[INFO] [stdout] test adapters::tests::unimplemented_adapters_declare_no_kpis ... ok
[INFO] [stdout] test commands::purge::tests::a_missing_prompts_dir_is_not_an_error ... ok
[INFO] [stdout] test commands::purge::tests::declining_the_prompt_removes_nothing ... ok
[INFO] [stdout] test commands::purge::tests::refuses_a_root_that_is_not_a_store ... ok
[INFO] [stdout] test commands::purge::tests::refuses_a_symlinked_prompts_dir ... ok
[INFO] [stdout] PROJECT  SESSIONS  IN  OUT  CACHE R  EST. COST
[INFO] [stdout] test commands::report::tests::an_empty_store_reports_nothing_rather_than_failing ... ok
[INFO] [stdout] test commands::query::tests::an_unknown_dimension_fails_before_anything_is_scanned ... ok
[INFO] [stdout] test commands::purge::tests::refuses_to_purge_unattended_without_yes ... ok
[INFO] [stdout] PROJECT  REQUESTS  SESSIONS  IN  OUT  CACHE R  EST. COST
[INFO] [stdout] acme            1         1  10    1      100  –
[INFO] [stdout] test commands::report::tests::an_unknown_report_names_the_valid_ones ... ok
[INFO] [stdout] test commands::query::tests::defaults_to_grouping_by_project ... ok
[INFO] [stdout] DAY         SESSIONS  REQUESTS   IN  OUT  CACHE R  EST. COST
[INFO] [stdout] 2026-08-04         1         2  110   22     1.1k   $1.00 ~+
[INFO] [stdout] total              1         2  110   22     1.1k   $1.00 ~+
[INFO] [stdout]                                                  ~ estimated
[INFO] [stdout]        ~+ partial — excludes models with no configured price
[INFO] [stdout] PROJECT  SESSIONS   IN  OUT  CACHE R  EST. COST
[INFO] [stdout] acme            1  110   22     1.1k   $1.00 ~+
[INFO] [stdout]                                     ~ estimated
[INFO] [stdout] ~+ partial — excludes models with no configured price
[INFO] [stdout] MODEL   REQUESTS  SESSIONS   IN  OUT  CACHE R  EST. COST
[INFO] [stdout] opus           1         1  100   20     1.0k    $1.00 ~
[INFO] [stdout] sonnet         1         1   10    2      100          –
[INFO] [stdout]                                              ~ estimated
[INFO] [stdout] SESSION    PROJECT  SPAN   DURATION  REQUESTS   IN  OUT  CACHE R  EST. COST
[INFO] [stdout] session-…  acme     1h00m  –                2  110   22     1.1k   $1.00 ~+
[INFO] [stdout]                                                                 ~ estimated
[INFO] [stdout]                       ~+ partial — excludes models with no configured price
[INFO] [stdout] TOOL  CALLS  SHARE  TURNS  TARGETS  FAIL RATE
[INFO] [stdout] Read      1  100.0      1        1  –
[INFO] [stdout] METRIC           THIS PERIOD  PREVIOUS  DELTA  CHANGE
[INFO] [stdout] sessions                   1         0      1  –
[INFO] [stdout] requests                   2         0      2  –
[INFO] [stdout] input tok                110         0    110  –
[INFO] [stdout] output tok                22         0     22  –
[INFO] [stdout] cache read tok          1.1k         0   1.1k  –
[INFO] [stdout] cache write tok            0         0      0  –
[INFO] [stdout] total tok               1.2k         0   1.2k  –
[INFO] [stdout] est. cost           $1.00 ~+         –      –  –
[INFO] [stdout]                                           ~ estimated
[INFO] [stdout] ~+ partial — excludes models with no configured price
[INFO] [stdout] FILE        TURNS  CALLS  ATTRIB. IN  ATTRIB. OUT  ATTRIB. CACHE R  ATTRIB. COST
[INFO] [stdout] src/lib.rs      1      1         100           20             1.0k       $1.00 ~
[INFO] [stdout]                                                                      ~ estimated
[INFO] [stdout] ---
[INFO] [stdout] name: run-test-suite-fix
[INFO] [stdout] description: Repeated prompt detected by warden (2 occurrences, last 65d ago).
[INFO] [stdout] ---
[INFO] [stdout] 
[INFO] [stdout] ## The prompt
[INFO] [stdout] 
[INFO] [stdout] Repeated verbatim 2 times; last 65d ago. Projects: acme-api.
[INFO] [stdout] 
[INFO] [stdout] ```
[INFO] [stdout] run the test suite and fix any failures
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] ## Steps
[INFO] [stdout] 
[INFO] [stdout] 1. Restate the request in your own words.
[INFO] [stdout] 2. Do the work the prompt describes.
[INFO] [stdout] 3. Report what changed.
[INFO] [stdout] 
[INFO] [stdout] Replace the steps above with the procedure you actually follow — warden can see that you repeat this prompt, not what you do about it.
[INFO] [stdout] 
[INFO] [stdout] <!-- warden: id 6403cef3 · text_hash 6403cef3cf0832a835cd3b7e21853076 · this draft was printed, not written; warden does not create files -->
[INFO] [stdout] test commands::suggest::tests::a_draft_writes_no_files ... ok
[INFO] [stdout] test commands::report::tests::every_named_report_builds_against_a_populated_store ... ok
[INFO] [stdout] test commands::purge::tests::the_receipt_names_the_directory_and_the_counts ... ok
[INFO] [stdout] test commands::purge::tests::removes_only_prompts_and_reports_what_it_removed ... ok
[INFO] [stdout] ---
[INFO] [stdout] name: run-test-suite-fix
[INFO] [stdout] description: Repeated prompt detected by warden (2 occurrences, last 65d ago).
[INFO] [stdout] ---
[INFO] [stdout] 
[INFO] [stdout] ## The prompt
[INFO] [stdout] 
[INFO] [stdout] Repeated verbatim 2 times; last 65d ago. Projects: acme-api.
[INFO] [stdout] 
[INFO] [stdout] ```
[INFO] [stdout] run the test suite and fix any failures
[INFO] [stdout] ```
[INFO] [stdout] 
[INFO] [stdout] ## Steps
[INFO] [stdout] 
[INFO] [stdout] 1. Restate the request in your own words.
[INFO] [stdout] 2. Do the work the prompt describes.
[INFO] [stdout] 3. Report what changed.
[INFO] [stdout] 
[INFO] [stdout] Replace the steps above with the procedure you actually follow — warden can see that you repeat this prompt, not what you do about it.
[INFO] [stdout] 
[INFO] [stdout] <!-- warden: id 6403cef3 · text_hash 6403cef3cf0832a835cd3b7e21853076 · this draft was printed, not written; warden does not create files -->
[INFO] [stdout] test adapters::claude_code::tests::unknown_record_types_are_skipped_not_counted_as_unparseable ... ok
[INFO] [stdout] test commands::suggest::tests::a_draft_is_addressed_by_the_short_id ... ok
[INFO] [stdout] test commands::ingest::tests::a_filtered_run_says_no_cursors_were_written ... ok
[INFO] [stdout] test commands::watch::tests::an_empty_store_says_so_rather_than_printing_zeroes ... ok
[INFO] [stdout] test commands::tests::groups_digits_in_threes ... ok
[INFO] [stderr] 1 repeated prompt found
[INFO] [stderr] 
[INFO] [stdout] ID        COUNT  LAST     PROJECTS  SUGGESTION                 PROMPT
[INFO] [stdout] 6403cef3      2  65d ago  acme-api  → save as a slash command  "run the test suite and fix any failures"
[INFO] [stdout] test commands::suggest::tests::an_unknown_draft_id_errors_helpfully ... ok
[INFO] [stdout] test commands::suggest::tests::the_headline_is_not_part_of_the_reports_stdout_rendering ... ok
[INFO] [stdout] test commands::suggest::tests::json_rows_say_when_text_was_never_stored ... ok
[INFO] [stdout] test commands::watch::tests::rate_counts_only_the_last_hour_but_the_session_counts_all_of_it ... ok
[INFO] [stdout] test commands::suggest::tests::a_full_hash_and_an_unambiguous_prefix_both_resolve ... ok
[INFO] [stdout] test commands::suggest::tests::the_headline_counts_and_pluralises ... ok
[INFO] [stdout] test commands::suggest::tests::lists_repeated_prompts_as_a_table_and_as_json ... ok
[INFO] [stdout] test commands::watch::tests::honours_the_project_filter ... ok
[INFO] [stdout] test config::tests::empty_config_prices_nothing ... ok
[INFO] [stdout] test config::tests::missing_file_yields_defaults ... ok
[INFO] [stdout] test config::tests::parses_all_sections ... ok
[INFO] [stdout] test config::tests::unpriced_model_returns_none_not_zero ... ok
[INFO] [stdout] test doctor::tests::missing_source_directory_is_not_found_not_an_error ... ok
[INFO] [stdout] test doctor::tests::reports_found_missing_and_unimplemented_sources ... ok
[INFO] [stdout] test ingest::tests::a_torn_cursor_line_is_skipped_but_the_others_still_load ... ok
[INFO] [stdout] test doctor::tests::store_stats_name_the_unpriced_models ... ok
[INFO] [stdout] test ingest::tests::a_project_filter_scopes_the_run_and_withholds_cursors ... ok
[INFO] [stdout] test ingest::tests::a_usable_mtime_is_required_rather_than_defaulted_to_zero ... ok
[INFO] [stdout] test commands::watch::tests::the_session_is_the_one_the_latest_event_belongs_to ... ok
[INFO] [stdout] test config::tests::estimates_cost_from_config ... ok
[INFO] [stdout] test commands::watch::tests::the_human_writer_gets_exactly_the_burn_line ... ok
[INFO] [stdout] test ingest::tests::index_prompt_text_false_stores_only_the_hash ... ok
[INFO] [stdout] test ingest::tests::an_unreadable_cursor_line_is_an_error_not_a_silent_truncation ... ok
[INFO] [stdout] test output::envelope::tests::notes_default_to_empty_rather_than_absent ... ok
[INFO] [stdout] test ingest::tests::ingests_every_supported_record_and_counts_the_bad_line ... ok
[INFO] [stdout] test output::envelope::tests::envelope_has_the_documented_shape ... ok
[INFO] [stdout] test output::envelope::tests::unbounded_window_serializes_as_null_not_a_fake_date ... ok
[INFO] [stdout] test output::table::tests::counts_switch_units_at_the_k_and_m_boundaries ... ok
[INFO] [stdout] test output::table::tests::headers_are_uppercased_and_columns_line_up ... ok
[INFO] [stdout] test ingest::tests::second_ingest_is_a_byte_identical_no_op ... ok
[INFO] [stdout] test output::table::tests::legend_appears_only_when_an_estimate_is_present ... ok
[INFO] [stdout] test output::table::tests::money_marks_estimates ... ok
[INFO] [stdout] test output::table::tests::no_ansi_escapes_when_not_a_tty ... ok
[INFO] [stdout] test output::table::tests::no_line_has_trailing_whitespace ... ok
[INFO] [stdout] test ingest::tests::a_torn_trailing_line_is_skipped_counted_and_retried ... ok
[INFO] [stdout] test output::tests::a_prose_report_prints_its_text_but_still_emits_the_envelope ... ok
[INFO] [stdout] test output::tests::json_mode_emits_the_envelope_and_no_table ... ok
[INFO] [stdout] test output::table::tests::unsupported_cells_are_dimmed_when_colour_is_allowed ... ok
[INFO] [stdout] test output::table::tests::unsupported_is_visually_distinct_from_zero ... ok
[INFO] [stdout] test reports::compare::tests::an_empty_previous_period_blanks_the_change_instead_of_dividing_by_zero ... ok
[INFO] [stdout] test reports::compare::tests::an_unbounded_period_is_an_error_that_names_the_fix ... ok
[INFO] [stdout] test reports::compare::tests::compares_day_against_the_day_before ... ok
[INFO] [stdout] test output::table::tests::short_rows_and_empty_tables_render_without_panicking ... ok
[INFO] [stdout] test ingest::tests::replaying_from_a_stale_offset_writes_nothing_twice ... ok
[INFO] [stdout] test output::table::tests::a_partial_total_is_marked_and_gets_its_own_legend ... ok
[INFO] [stdout] test output::tests::table_mode_emits_the_table_and_no_json ... ok
[INFO] [stdout] test reports::compare::tests::unpriced_cost_never_reads_as_spend_dropping_to_zero ... ok
[INFO] [stdout] test reports::files::tests::urls_are_not_files ... ok
[INFO] [stdout] test reports::files::tests::a_turn_splits_evenly_across_the_files_it_touched ... ok
[INFO] [stdout] test reports::files::tests::two_calls_on_one_file_are_one_share_not_two ... ok
[INFO] [stdout] test reports::files::tests::an_unpriced_file_shows_a_dash_not_zero ... ok
[INFO] [stdout] test reports::models::tests::splits_usage_by_model_heaviest_first ... ok
[INFO] [stdout] test reports::models::tests::synthetic_shows_its_tokens_but_no_cost ... ok
[INFO] [stdout] test reports::projects::tests::heaviest_project_first_with_the_documented_columns ... ok
[INFO] [stdout] test reports::files::tests::the_method_is_labelled_in_the_table_and_the_notes ... ok
[INFO] [stdout] test reports::projects::tests::a_partly_priced_project_is_marked_not_passed_off_as_a_total ... ok
[INFO] [stdout] test reports::models::tests::prompts_do_not_become_a_no_model_row ... ok
[INFO] [stdout] test reports::files::tests::events_that_touched_no_file_are_excluded_and_the_shortfall_is_stated ... ok
[INFO] [stdout] test ingest::tests::repeated_request_usage_is_counted_once ... ok
[INFO] [stdout] test reports::projects::tests::honours_the_project_filter ... ok
[INFO] [stdout] test ingest::tests::interrupted_run_replays_to_an_identical_store ... ok
[INFO] [stdout] test reports::sessions::tests::duration_is_shown_when_a_source_does_log_it ... ok
[INFO] [stdout] test reports::query::tests::groups_by_several_dimensions_at_once ... ok
[INFO] [stdout] test reports::projects::tests::unpriced_projects_show_a_dash_rather_than_zero ... ok
[INFO] [stdout] test reports::query::tests::repeated_dimensions_collapse ... ok
[INFO] [stdout] test reports::projects::tests::unattributed_events_are_kept_with_a_null_project_and_a_note ... ok
[INFO] [stdout] test reports::sessions::tests::most_expensive_session_first ... ok
[INFO] [stdout] test reports::query::tests::a_dimension_an_event_lacks_is_null_in_json ... ok
[INFO] [stdout] test reports::summary::tests::the_total_row_sums_the_days ... ok
[INFO] [stdout] test reports::tests::a_model_the_config_cannot_price_stays_none_not_zero ... ok
[INFO] [stdout] test reports::sessions::tests::falls_back_to_tokens_when_nothing_can_be_priced ... ok
[INFO] [stdout] test reports::summary::tests::breaks_the_period_down_by_day_in_order ... ok
[INFO] [stdout] test reports::query::tests::rejects_an_unknown_dimension_and_lists_the_real_ones ... ok
[INFO] [stdout] test reports::tests::days_are_utc ... ok
[INFO] [stdout] test reports::tests::every_documented_name_resolves ... ok
[INFO] [stdout] test reports::tests::spans_and_ids_are_readable ... ok
[INFO] [stdout] test reports::tests::records_without_usage_contribute_nothing_but_are_still_counted ... ok
[INFO] [stdout] test reports::tests::sidechain_events_are_included_by_default_and_always_noted ... ok
[INFO] [stdout] test reports::tests::synthetic_is_counted_in_tokens_and_excluded_from_cost ... ok
[INFO] [stdout] test reports::tests::an_unpriced_bucket_is_unsupported_not_zero ... ok
[INFO] [stdout] test reports::tests::unknown_report_lists_the_valid_names ... ok
[INFO] [stdout] test reports::tools::tests::a_period_with_no_tool_calls_renders_an_empty_table_not_a_panic ... ok
[INFO] [stdout] test reports::tools::tests::failure_is_null_and_never_a_fabricated_zero ... ok
[INFO] [stdout] test store::id::tests::field_boundaries_are_unambiguous ... ok
[INFO] [stdout] test store::id::tests::id_is_stable_across_runs ... ok
[INFO] [stdout] test reports::tools::tests::counts_calls_and_ranks_the_busiest_tool_first ... ok
[INFO] [stdout] test reports::tests::unpriced_models_are_named_in_the_notes ... ok
[INFO] [stdout] test store::id::tests::same_content_same_id ... ok
[INFO] [stdout] test store::id::tests::text_hash_is_deterministic ... ok
[INFO] [stdout] test store::paths::tests::file_names_round_trip ... ok
[INFO] [stdout] test reports::sessions::tests::span_is_derived_and_unlogged_duration_stays_unsupported ... ok
[INFO] [stdout] test store::paths::tests::layout_is_the_documented_one ... ok
[INFO] [stdout] test store::paths::tests::month_boundary_is_utc_exact ... ok
[INFO] [stdout] test store::record::tests::round_trips_a_fully_populated_event ... ok
[INFO] [stdout] test store::paths::tests::routes_by_utc_month ... ok
[INFO] [stdout] test store::paths::tests::december_rolls_into_january ... ok
[INFO] [stdout] test store::record::tests::tolerates_unknown_fields_and_missing_optionals ... ok
[INFO] [stdout] test store::id::tests::different_content_different_id ... ok
[INFO] [stdout] test store::record::tests::unsupported_fields_serialize_as_absent_not_zero ... ok
[INFO] [stdout] test store::scanner::tests::filters_by_project ... ok
[INFO] [stdout] test store::scanner::tests::ignores_non_partition_files ... ok
[INFO] [stdout] test store::scanner::tests::missing_store_scans_empty ... ok
[INFO] [stdout] test store::scanner::tests::filters_by_window_within_a_partition ... ok
[INFO] [stdout] test store::scanner::tests::opens_only_overlapping_partitions ... ok
[INFO] [stdout] test store::paths::tests::data_dir_flag_beats_config ... ok
[INFO] [stdout] test store::writer::tests::routes_events_to_month_partitions ... ok
[INFO] [stdout] test store::writer::tests::appends_rather_than_truncates_across_writers ... ok
[INFO] [stdout] test store::scanner::tests::skips_torn_final_line_and_counts_it ... ok
[INFO] [stdout] test store::writer::tests::creates_store_dirs_0700 ... ok
[INFO] [stdout] test store::writer::tests::writes_prompts_and_cursors ... ok
[INFO] [stdout] test suggest::tests::a_prompt_that_merely_mentions_a_marker_is_still_a_prompt ... ok
[INFO] [stdout] test suggest::tests::ages_are_coarse_and_never_negative ... ok
[INFO] [stdout] test suggest::tests::a_draft_mentions_the_prompt_the_count_and_that_nothing_was_written ... ok
[INFO] [stdout] test suggest::tests::a_draft_without_text_says_so_instead_of_inventing_a_prompt ... ok
[INFO] [stdout] test suggest::tests::an_empty_store_suggests_nothing ... ok
[INFO] [stdout] test suggest::tests::client_transcript_furniture_is_set_aside_and_counted ... ok
[INFO] [stdout] test suggest::tests::slugs_drop_stopwords_and_punctuation ... ok
[INFO] [stdout] test suggest::tests::groups_exact_duplicates_and_ignores_one_offs ... ok
[INFO] [stdout] test suggest::tests::the_projects_cell_is_bounded_but_the_list_is_not ... ok
[INFO] [stdout] test reports::tests::config_pricing_wins_over_the_cached_cost_est ... ok
[INFO] [stdout] test suggest::tests::ids_are_stable_across_runs_and_derived_from_the_hash ... ok
[INFO] [stdout] test suggest::tests::honours_the_window_and_the_project_filter ... ok
[INFO] [stdout] test reports::query::tests::supports_every_documented_dimension ... ok
[INFO] [stdout] test suggest::tests::detects_duplicates_with_prompt_text_disabled ... ok
[INFO] [stdout] test suggest::tests::previews_are_one_line_and_bounded ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 168 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/warden-2251b73bf07a4dd0)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests warden
[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" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca", kill_on_drop: false }`
[INFO] [stdout] c3d3a4d5fd96a3b350f51825b1698d66fa61683e9ad0fc838841dc212d0751ca
