[INFO] cloning repository https://github.com/carter003/ai-monitor
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/carter003/ai-monitor" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarter003%2Fai-monitor", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarter003%2Fai-monitor'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f023df2bb6977a98e69147fea71635c96f60ad9
[INFO] testing carter003/ai-monitor/1f023df2bb6977a98e69147fea71635c96f60ad9 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarter003%2Fai-monitor" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/carter003/ai-monitor
[INFO] finished tweaking git repo https://github.com/carter003/ai-monitor
[INFO] tweaked toml for git repo https://github.com/carter003/ai-monitor written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/carter003/ai-monitor 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 git repo https://github.com/carter003/ai-monitor 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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709
[INFO] running `Command { std: "docker" "start" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", 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" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709" "/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" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", 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" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling smallvec v1.16.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling find-msvc-tools v0.1.12
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling log v0.4.34
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling futures-core v0.3.34
[INFO] [stderr]    Compiling litemap v0.8.3
[INFO] [stderr]    Compiling writeable v0.6.4
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling icu_normalizer_data v2.3.0
[INFO] [stderr]    Compiling futures-sink v0.3.34
[INFO] [stderr]    Compiling icu_properties_data v2.3.0
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling cc v1.4.5
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling futures-io v0.3.34
[INFO] [stderr]    Compiling futures-task v0.3.34
[INFO] [stderr]    Compiling zerocopy v0.8.57
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling rustls v0.23.44
[INFO] [stderr]    Compiling rustversion v1.0.23
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling futures-channel v0.3.34
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]    Compiling http v1.5.0
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling pkg-config v0.3.34
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling futures-util v0.3.34
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling ipnet v2.12.2
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling webpki-roots v1.0.9
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling mio v1.2.3
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling socket2 v0.6.5
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling http-body v1.1.0
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling instability v0.3.13
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling lru v0.18.4
[INFO] [stderr]    Compiling http-body-util v0.1.5
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling line-clipping v0.3.8
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling darling_core v0.24.1
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.6
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling zerotrie v0.2.5
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling zerovec v0.11.8
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling ratatui-core v0.1.2
[INFO] [stderr]    Compiling tinystr v0.8.4
[INFO] [stderr]    Compiling potential_utf v0.1.6
[INFO] [stderr]    Compiling icu_collections v2.3.0
[INFO] [stderr]    Compiling icu_locale_core v2.3.0
[INFO] [stderr]    Compiling darling_macro v0.24.1
[INFO] [stderr]    Compiling darling v0.24.1
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.2
[INFO] [stderr]    Compiling ratatui-widgets v0.3.2
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling icu_provider v2.3.1
[INFO] [stderr]    Compiling icu_normalizer v2.3.0
[INFO] [stderr]    Compiling icu_properties v2.3.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling ratatui v0.30.2
[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 tower-http v0.6.11
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling tokio-rustls v0.26.5
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling herdr-usage v0.1.0 (/opt/rustwide/workdir/crates/herdr-usage)
[INFO] [stderr]    Compiling ai-monitor v0.7.0 (/opt/rustwide/workdir/crates/ai-monitor)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 3m 32s
[INFO] running `Command { std: "docker" "inspect" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", 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" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709" "/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]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling fastrand v2.5.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling herdr-usage v0.1.0 (/opt/rustwide/workdir/crates/herdr-usage)
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.2
[INFO] [stderr]    Compiling ratatui v0.30.2
[INFO] [stderr]    Compiling ai-monitor v0.7.0 (/opt/rustwide/workdir/crates/ai-monitor)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2m 21s
[INFO] running `Command { std: "docker" "inspect" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", 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" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.37s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/ai-monitor/6c3a5ab7bb7ff148/out/ai_monitor-6c3a5ab7bb7ff148)
[INFO] [stdout] 
[INFO] [stdout] running 190 tests
[INFO] [stdout] test config::tests::unquoted_string_value_is_rejected ... ok
[INFO] [stdout] test model::regression_tests::account_switch_clears_previous_hold ... ok
[INFO] [stdout] test config::network_tests::defaults_and_network_bounds ... ok
[INFO] [stdout] test config::tests::comments_and_blank_lines_are_ignored ... ok
[INFO] [stdout] test config::tests::usage_db_is_an_accepted_config_key ... ok
[INFO] [stdout] test config::tests::bad_integer_is_rejected ... ok
[INFO] [stdout] test config::tests::a_tilde_is_expanded_for_the_usage_database ... ok
[INFO] [stdout] test config::tests::an_unknown_key_is_still_rejected ... ok
[INFO] [stdout] test config::tests::every_documented_key_parses_together ... ok
[INFO] [stdout] test config::tests::cloudflare_config_resolves_env_or_config ... ok
[INFO] [stdout] test model::tests::authorization_loss_clears_prior_readings ... ok
[INFO] [stdout] test network::tests::live_routes ... ignored, real network: four unauthenticated HEAD requests
[INFO] [stdout] test model::tests::model_usage_input_display_formats_correctly ... ok
[INFO] [stdout] test model::tests::cache_hit_share_is_truncated_at_two_decimals_not_rounded ... ok
[INFO] [stdout] test network::tests::rolling_window_sampling_and_failure_replace_current ... ok
[INFO] [stdout] test model::tests::exhausted_weekly_quota_records_hold_until_reset ... ok
[INFO] [stdout] test providers::agy::tests::accounts_are_matched_by_profile_not_process_name ... ok
[INFO] [stdout] test providers::agy::tests::only_own_listening_sockets_are_considered ... ok
[INFO] [stdout] test model::tests::windows_are_identified_by_duration ... ok
[INFO] [stdout] test network::tests::failures_clear_timings_and_proxy_response_does_not_count ... ok
[INFO] [stdout] test model::tests::failure_preserves_time_and_does_not_reset_quota ... ok
[INFO] [stdout] test providers::agy_cloud::tests::changed_login_and_two_sessions_do_not_share_tokens ... ok
[INFO] [stdout] test providers::agy_cloud::tests::live_two_profiles_renew_without_client_or_file_writes ... ignored, explicit live Google credential and quota verification
[INFO] [stdout] test network::tests::retry_after_date_and_final_headers ... ok
[INFO] [stdout] test providers::agy_cloud::tests::logout_clears_cache_and_allows_local_only_when_no_file ... ok
[INFO] [stdout] test providers::agy_cloud::tests::expired_file_renews_once_then_reuses_memory_token ... ok
[INFO] [stdout] test providers::agy_cloud::tests::account_names_follow_account_switches_and_survive_refresh ... ok
[INFO] [stdout] test providers::agy_cloud::tests::changed_file_access_token_replaces_cached_session ... ok
[INFO] [stdout] test providers::agy_cloud::tests::identity_survives_access_renewal_but_not_account_change ... ok
[INFO] [stdout] test providers::agy_cloud::tests::rate_limit_does_not_trigger_renewal_or_local_fallback ... ok
[INFO] [stdout] test providers::agy_cloud::tests::rejected_renewed_token_does_not_loop ... ok
[INFO] [stdout] test http::tests::agy_targets_the_native_cli_backend ... ok
[INFO] [stdout] test providers::agy_cloud::tests::rotated_refresh_and_second_lifetime_are_preserved_in_memory ... ok
[INFO] [stdout] test providers::agy_cloud::tests::revoked_refresh_is_not_hidden_by_local_fallback ... ok
[INFO] [stdout] test providers::grok::tests::decodes_subscription_period_and_used_percentage ... ok
[INFO] [stdout] test providers::agy_cloud::tests::profile_files_are_independent_and_read_only ... ok
[INFO] [stdout] test providers::grok::tests::grpc_errors_and_truncation_cannot_be_treated_as_success ... ok
[INFO] [stdout] test providers::parse::tests::agy_fraction_precision_shifts_with_remaining_percent ... ok
[INFO] [stdout] test providers::agy_cloud::tests::unauthorized_access_renews_and_retries_once ... ok
[INFO] [stdout] test providers::grok::tests::zero_usage_requires_an_actual_valid_subscription ... ok
[INFO] [stdout] test providers::parse::tests::agy_cli_summary_matches_native_usage_percentages_and_resets ... ok
[INFO] [stdout] test providers::parse::tests::agy_third_party_only_summary_does_not_report_gemini_quota ... ok
[INFO] [stdout] test providers::parse::tests::go_renders_either_card_title ... ok
[INFO] [stdout] test providers::parse::tests::openrouter_is_account_credit_less_account_usage ... ok
[INFO] [stdout] test providers::parse::tests::go_keeps_official_precision_without_padding_integers ... ok
[INFO] [stdout] test providers::parse::tests::agy_selects_gemini_and_keeps_missing_fraction_unknown ... ok
[INFO] [stdout] test providers::parse::tests::agy_production_summary_keeps_gemini_windows_separate_from_third_party ... ok
[INFO] [stdout] test providers::parse::tests::other_codex_pools_keep_their_windows ... ok
[INFO] [stdout] test providers::parse::tests::go_shows_remaining_and_never_uses_a_local_billing_estimate ... ok
[INFO] [stdout] test providers::parse::tests::retired_spark_pool_is_never_reported ... ok
[INFO] [stdout] test system::tests::network_uses_default_route_interface_without_double_counting ... ok
[INFO] [stdout] test system::tests::disk_and_net_counters_tolerate_malformed_lines ... ok
[INFO] [stdout] test model::tests::account_switch_cannot_reuse_quota ... ok
[INFO] [stdout] test network::tests::http_errors_are_reachable_and_only_429_backs_off ... ok
[INFO] [stdout] test network::tests::missing_curl_is_an_explanatory_failure ... ok
[INFO] [stdout] test system::tests::cpu_does_not_double_count_guest ... ok
[INFO] [stdout] test system::tests::disk_counts_selected_whole_devices_once ... ok
[INFO] [stdout] test ui::network::tests::failures_show_no_old_latency_and_service_notes_are_visible ... ok
[INFO] [stdout] test ui::quota::tests::balance_keeps_usd_cents_and_right_alignment ... ok
[INFO] [stdout] test system::tests::device_order_is_stable_and_one_reset_cannot_hide_in_the_total ... ok
[INFO] [stdout] test system::tests::memory_uses_available_not_free ... ok
[INFO] [stdout] test system::tests::topology_changes_rebaseline_only_the_affected_metric ... ok
[INFO] [stdout] test ui::quota::tests::a_narrow_pane_hides_bars_without_dropping_data_or_adding_rows ... ok
[INFO] [stdout] test ui::quota::tests::account_names_are_muted_and_truncated_before_status ... ok
[INFO] [stdout] test ui::quota::tests::all_meters_share_percentage_bar_and_reset_columns ... ok
[INFO] [stdout] test ui::quota::tests::errors_and_loading_notes_remain_visible ... ok
[INFO] [stdout] test system::tests::rates_handle_elapsed_time_and_counter_reset ... ok
[INFO] [stdout] test ui::quota::tests::stale_and_expired_values_are_muted_not_replenished ... ok
[INFO] [stdout] test ui::quota::tests::group_backgrounds_replace_empty_separator_rows_at_any_height ... ok
[INFO] [stdout] test ui::quota::tests::low_and_stale_balances_keep_their_warning_semantics ... ok
[INFO] [stdout] test ui::quota::tests::headings_are_pinned_while_only_the_list_scrolls ... ok
[INFO] [stdout] test ui::quota::tests::unknown_available_quota_is_not_rendered_as_full ... ok
[INFO] [stdout] test ui::quota::tests::real_buffer_has_the_approved_group_background_and_card_count ... ok
[INFO] [stdout] test ui::resources::tests::cpu_section_dividers_are_solid_and_uniform_to_the_suffix ... ok
[INFO] [stdout] test ui::quota::tests::tiny_panes_stack_complete_values_and_reset_times ... ok
[INFO] [stdout] test ui::resources::tests::error_rows_do_not_drop_cores ... ok
[INFO] [stdout] test ui::quota::tests::quota_thresholds_do_not_color_the_reset_countdown ... ok
[INFO] [stdout] test ui::resources::tests::compact_panel_hides_history_before_dropping_cores ... ok
[INFO] [stdout] test ui::network::tests::widths_and_chinese_never_clip_numeric_readings ... ok
[INFO] [stdout] test ui::resources::tests::fractional_cpu_samples_have_distinct_heights ... ok
[INFO] [stdout] test ui::resources::tests::history_uses_all_eight_subcell_levels ... ok
[INFO] [stdout] test ui::resources::tests::errors_are_visible_even_when_there_is_no_room_for_the_core_list ... ok
[INFO] [stdout] test ui::resources::tests::invalid_history_samples_are_gaps_not_shifted_timestamps ... ok
[INFO] [stdout] test ui::resources::tests::odd_core_count_is_column_major_without_repeating_the_last_core ... ok
[INFO] [stdout] test ui::resources::tests::history_peak_and_count_describe_the_visible_samples_only ... ok
[INFO] [stdout] test ui::resources::tests::many_cores_have_an_explicit_visible_total_and_do_not_keep_a_decorative_plot ... ok
[INFO] [stdout] test ui::network::tests::fixed_panel_and_short_scroll_fallback ... ok
[INFO] [stdout] test ui::resources::tests::normal_panel_matches_the_approved_groups_and_column_order ... ok
[INFO] [stdout] test ui::resources::tests::rates_preserve_units_and_distinguish_missing_from_zero ... ok
[INFO] [stdout] test ui::resources::tests::zero_history_is_empty_and_a_short_spike_is_not_averaged_away ... ok
[INFO] [stdout] test ui::resources::tests::startup_history_is_right_aligned ... ok
[INFO] [stdout] test ui::tests::a_too_small_frame_clears_stale_mouse_regions ... ok
[INFO] [stdout] test ui::tests::a_missing_database_says_so_instead_of_showing_zeros ... ok
[INFO] [stdout] test ui::resources::tests::panel_height_is_bounded_and_reserves_quota_space ... ok
[INFO] [stdout] test ui::tests::configured_ten_minute_refresh_is_not_stale_after_two_minutes ... ok
[INFO] [stdout] test ui::resources::tests::rendering_stays_inside_an_offset_panel ... ok
[INFO] [stdout] test ui::tests::exhausted_weekly_source_shows_wait_instead_of_stale ... ok
[INFO] [stdout] test ui::tests::failed_manual_refresh_marks_held_data_stale ... ok
[INFO] [stdout] test ui::resources::tests::unknown_metrics_and_disabled_swap_are_not_reported_as_zero_usage ... ok
[INFO] [stdout] test ui::tests::inks_clear_wcag_aa_on_a_white_terminal ... ok
[INFO] [stdout] test ui::resources::tests::history_dynamic_scale_adapts_to_peak ... ok
[INFO] [stdout] test ui::tests::clicking_the_footer_refresh_region_works_on_a_narrow_pane ... ok
[INFO] [stdout] test ui::tests::footer_shows_version_at_bottom_right ... ok
[INFO] [stdout] test ui::tests::footer_hints_expose_clickable_regions_that_match_their_text ... ok
[INFO] [stdout] test ui::tests::low_monthly_balance_and_reset_wait_are_visible ... ok
[INFO] [stdout] test ui::quota::tests::every_line_is_bounded_including_unicode_errors_and_notes ... ok
[INFO] [stdout] test http::tests::agy_resolves_each_accounts_project_and_sends_cli_version ... ok
[INFO] [stdout] test ui::tests::percentage_keeps_near_full_precision ... ok
[INFO] [stdout] test ui::tests::charts_stay_fixed_when_the_quota_list_scrolls ... ok
[INFO] [stdout] test ui::tests::percentage_keeps_official_decimal_places ... ok
[INFO] [stdout] test ui::tests::the_charts_start_after_content_not_at_forty_percent ... ok
[INFO] [stdout] test ui::tests::short_panes_show_as_many_readable_charts_as_fit ... ok
[INFO] [stdout] test ui::tests::the_readme_changelog_matches_the_crate_version ... ok
[INFO] [stdout] test ui::tests::truncate_and_padding_support_wide_and_combining_characters ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::labels_and_daily_stems_share_the_exact_same_calendar_grid ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::empty_or_short_rankings_do_not_duplicate_or_invent_models ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::narrow_september_axes_use_five_day_steps_not_rounded_sampling ... ok
[INFO] [stdout] test ui::tests::the_panels_identify_local_usage_and_cloud_remaining_separately ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::model_names_are_provider_free_utf8_safe_and_at_most_fifteen_bytes ... ok
[INFO] [stdout] test ui::tests::the_total_survives_a_short_pane_without_a_double_frame ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::all_ranking_rows_share_column_widths_and_numeric_right_edges ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::small_monthly_panes_keep_full_width_charts ... ok
[INFO] [stdout] test ui::tests::all_terminal_sizes_render_and_scrolling_is_bounded ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::terminal_resize_removes_hidden_models_and_restores_them_without_stale_cells ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::rendered_monthly_label_rows_never_merge_or_overwrite_dates ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::y_axis_labels_leave_room_for_their_tick_and_corner ... ok
[INFO] [stdout] test ui::token::model_table::tests::columns_follow_the_requested_order_and_input_keeps_exact_hit_semantics ... ok
[INFO] [stdout] test ui::token::model_table::tests::multi_digit_ordinals_align_without_reordering_or_numbering_hidden_models ... ok
[INFO] [stdout] test ui::token::model_table::tests::display_name_collisions_do_not_merge_models_or_reorder_totals ... ok
[INFO] [stdout] test ui::token::model_table::tests::names_have_no_provider_and_at_most_25_characters ... ok
[INFO] [stdout] test ui::token::model_table::tests::export_real_model_table_terminal_fixtures ... ok
[INFO] [stdout] test http::tests::agy_missing_project_never_queries_an_unscoped_summary ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::export_real_chart_terminal_fixtures ... ok
[INFO] [stdout] test ui::token::model_table::tests::rendering_respects_the_existing_rectangle_at_every_size ... ok
[INFO] [stdout] test ui::tests::layout_preview_fixtures ... ok
[INFO] [stdout] test ui::token::model_table::tests::zero_unknown_and_unpriced_values_do_not_turn_into_fake_zero_costs_or_rates ... ok
[INFO] [stdout] test ui::token::summary::tests::average_is_derived_from_cumulative_total_and_running_days ... ok
[INFO] [stdout] test ui::token::summary::tests::border_and_value_styles_remain_intact ... ok
[INFO] [stdout] test ui::token::summary::tests::cards_keep_compact_width_and_are_evenly_distributed ... ok
[INFO] [stdout] test ui::token::summary::tests::full_width_uses_five_compact_cards_without_unit_labels ... ok
[INFO] [stdout] test ui::token::summary::tests::metric_values_are_centered_inside_each_card ... ok
[INFO] [stdout] test ui::token::model_table::tests::oversized_amounts_are_preserved_whole_or_the_column_is_hidden ... ok
[INFO] [stdout] test ui::token::model_table::tests::ordinals_are_separate_aligned_and_do_not_consume_the_name_limit ... ok
[INFO] [stdout] test ui::token::tests::axis_labels_remain_compact_and_readable ... ok
[INFO] [stdout] test ui::token::summary::tests::zero_running_days_does_not_divide_by_zero ... ok
[INFO] [stdout] test ui::token::tests::chart_rows_fit_across_common_terminal_widths ... ok
[INFO] [stdout] test ui::token::tests::consecutive_daily_money_bars_have_no_gaps_across_all_month_lengths ... ok
[INFO] [stdout] test ui::token::tests::month_length_tracks_the_calendar_instead_of_elapsed_data ... ok
[INFO] [stdout] test ui::token::tests::model_table_keeps_total_and_cost_on_narrow_views ... ok
[INFO] [stdout] test ui::token::tests::monthly_money_is_aggregated_to_one_point_per_elapsed_day ... ok
[INFO] [stdout] test ui::token::tests::september_month_axes_are_even_and_end_at_day_30 ... ok
[INFO] [stdout] test ui::token::summary::tests::every_supported_width_stays_inside_the_terminal ... ok
[INFO] [stdout] test ui::token::tests::stems_are_straight_and_connect_directly_to_the_x_axis ... ok
[INFO] [stdout] test ui::token::tests::summaries_are_peers_above_a_full_width_model_table ... ok
[INFO] [stdout] test usage::tests::days_in_month_pure_calendar ... ok
[INFO] [stdout] test ui::token::tests::today_ticks_cover_every_hour_on_an_even_axis ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::ticks_have_constant_calendar_and_cell_steps_at_every_width ... ok
[INFO] [stdout] test usage::tests::an_empty_table_totals_zero ... ok
[INFO] [stdout] test usage::tests::february_has_28_or_29_days_never_31 ... ok
[INFO] [stdout] test usage::tests::buckets_cover_the_whole_calendar_and_zero_fill_gaps ... ok
[INFO] [stdout] test ui::token::tests::summaries_adapt_to_width_without_overflow ... ok
[INFO] [stdout] test usage::tests::events_older_than_rolling_window_are_excluded_from_models ... ok
[INFO] [stdout] test http::tests::agy_auth_and_rate_limit_errors_survive_both_requests ... ok
[INFO] [stdout] test usage::tests::monthly_model_query_can_return_ten ... ok
[INFO] [stdout] test usage::tests::production_db_rolling_24h_excludes_hy3 ... ok
[INFO] [stdout] test usage::tests::running_days_are_inclusive_and_empty_db_is_zero ... ok
[INFO] [stdout] test usage::tests::the_day_boundary_is_local_midnight_not_utc ... ok
[INFO] [stdout] test usage::tests::the_month_and_year_boundaries_land_on_the_first ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::ranking_drops_columns_before_clipping_names_or_numbers ... ok
[INFO] [stdout] test usage::tests::ignored_models_leave_the_model_table_entirely ... ok
[INFO] [stdout] test usage::tests::six_hour_buckets_split_a_day_into_four ... ok
[INFO] [stdout] test usage::tests::only_events_inside_the_interval_are_counted ... ok
[INFO] [stdout] test usage::tests::the_week_boundary_lands_on_monday ... ok
[INFO] [stdout] test usage::tests::one_model_seen_through_two_clients_is_a_single_row ... ok
[INFO] [stdout] test worker::tests::retries_back_off_without_busy_polling ... ok
[INFO] [stdout] test usage::tests::the_month_histogram_follows_the_real_month_length ... ok
[INFO] [stdout] test usage::tests::totals_count_every_event_ignored_models_included ... ok
[INFO] [stdout] test worker::regression_tests::active_independent_pool_keeps_polling ... ok
[INFO] [stdout] test usage::tests::models_with_equal_totals_keep_a_stable_order ... ok
[INFO] [stdout] test worker::tests::exhausted_weekly_quota_waits_for_reset_instead_of_polling ... ok
[INFO] [stdout] test worker::regression_tests::all_independent_pools_resume_at_earliest_weekly_reset ... ok
[INFO] [stdout] test worker::tests::weekly_wait_needs_a_known_reset_time ... ok
[INFO] [stdout] test ui::token::model_table::tests::narrowing_hides_details_before_squeezing_names_and_never_changes_row_count ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::ranking_shares_only_the_money_row_and_monthly_token_is_unchanged ... ok
[INFO] [stdout] test ui::quota::tests::tiny_real_buffers_render_without_overflow_or_panics ... ok
[INFO] [stdout] test ui::token::chart_layout::tests::short_rankings_reduce_rows_and_never_write_outside_their_rectangle ... ok
[INFO] [stdout] test ui::resources::tests::extreme_sizes_counts_and_invalid_values_do_not_panic_or_overwrite_the_border ... ok
[INFO] [stdout] test network::tests::startup_is_immediate_and_slow_route_does_not_delay_fast_route ... ok
[INFO] [stdout] test network::tests::refresh_is_coalesced_and_waits_for_minimum_and_server_backoff ... ok
[INFO] [stdout] test network::tests::cancellation_and_timeout_reap_child ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 188 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.35s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/build/ai-monitor/135ae4e3ef95b30b/out/ai_monitor-135ae4e3ef95b30b)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test hangup_tests::a_missing_controlling_terminal_reports_dead ... ok
[INFO] [stderr]      Running tests/hangup.rs (/opt/rustwide/target/release/build/ai-monitor/718c9ebca52fdff8/out/hangup-718c9ebca52fdff8)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test pressing_q_ends_the_ui ... ok
[INFO] [stdout] test killing_the_terminal_ends_the_ui ... ok
[INFO] [stdout] test unfinished_network_children_end_with_ui ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/herdr-usage/16e1a531587d49fe/out/herdr_usage-16e1a531587d49fe)
[INFO] [stdout] test signals_and_quit_keys_close_the_web_even_with_an_unfinished_request ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 116 tests
[INFO] [stdout] test cloudflare::tests::test_fallback_billing_period ... ok
[INFO] [stdout] test cloudflare::tests::test_worker_deployment_quotas_and_limits ... ok
[INFO] [stdout] test cost::tests::an_explicit_cache_write_price_wins_over_the_fallback ... ok
[INFO] [stdout] test cloudflare::tests::test_billing_period_with_day ... ok
[INFO] [stdout] test cost::tests::an_explicit_alias_wins_over_the_raw_name ... ok
[INFO] [stdout] test cloudflare::tests::test_format_bytes ... ok
[INFO] [stdout] test cloudflare::tests::test_format_progress_bar ... ok
[INFO] [stdout] test cost::tests::cache_write_falls_back_to_the_prompt_price_not_zero ... ok
[INFO] [stdout] test cost::tests::cached_tokens_are_not_billed_twice_at_full_price ... ok
[INFO] [stdout] test cost::tests::fresh_input_never_goes_negative_when_cache_exceeds_it ... ok
[INFO] [stdout] test cloudflare::tests::kv_storage_shows_bytes_or_uncollected_never_fake_zero ... ok
[INFO] [stdout] test cloudflare::tests::test_ascii_card_generation ... ok
[INFO] [stdout] test cloudflare::tests::test_format_compact_numbers ... ok
[INFO] [stdout] test cloudflare::tests::r2_classifies_free_deletes_out_of_billable_totals ... ok
[INFO] [stdout] test cloudflare::tests::test_observability_events_use_log_counts_not_requests ... ok
[INFO] [stdout] test cost::tests::reasoning_is_never_billed_separately ... ok
[INFO] [stdout] test cost::tests::a_vendor_prefix_is_stripped_before_giving_up ... ok
[INFO] [stdout] test event::tests::clamping_repairs_violations_without_dropping_the_event ... ok
[INFO] [stdout] test event::tests::codex_keeps_gross_input_untouched ... ok
[INFO] [stdout] test cloudflare::tests::parses_log_event_count_from_aggregate_response ... ok
[INFO] [stdout] test event::tests::grok_has_no_cache_write_and_keeps_prompt_gross ... ok
[INFO] [stdout] test event::tests::omp_adds_cache_read_back_into_input ... ok
[INFO] [stdout] test event::tests::opencode_folds_reasoning_into_output ... ok
[INFO] [stdout] test db::tests::only_unpriced_events_reach_the_unresolved_ledger ... ok
[INFO] [stdout] test cost::tests::ignore_short_circuits_and_is_distinguishable_from_unpriced ... ok
[INFO] [stdout] test cost::tests::repeated_hits_accumulate_without_duplicating_the_row ... ok
[INFO] [stdout] test cost::tests::an_unpriced_model_is_reported_rather_than_guessed ... ok
[INFO] [stdout] test plans::tests::a_period_superseded_by_the_next_one_stops_counting_where_the_next_begins ... ok
[INFO] [stdout] test plans::tests::millisecond_jitter_keeps_one_period_and_a_real_change_starts_a_new_one ... ok
[INFO] [stdout] test db::tests::replaying_a_batch_is_absorbed_by_the_primary_key ... ok
[INFO] [stdout] test db::tests::watermarks_round_trip_and_are_absent_before_the_first_round ... ok
[INFO] [stdout] test plans::tests::one_account_never_merges_two_of_its_own_periods_into_one_group_period ... ok
[INFO] [stdout] test db::tests::a_replayed_batch_does_not_inflate_the_unresolved_ledger ... ok
[INFO] [stdout] test plans::tests::a_fraction_drop_inside_one_period_counts_as_extra_granted_quota ... ok
[INFO] [stdout] test cost::tests::the_reminder_window_excludes_models_last_seen_before_it ... ok
[INFO] [stdout] test plans::tests::the_grok_log_supplies_the_fraction_and_the_period_bounds ... ok
[INFO] [stdout] test plans::tests::the_gemini_id_token_yields_the_agy_account_email ... ok
[INFO] [stdout] test cost::tests::reprice_unpriced_events_updates_null_cost_rows ... ok
[INFO] [stdout] test sources::codex::tests::a_non_string_model_does_not_erase_the_tracked_one ... ok
[INFO] [stdout] test plans::tests::two_accounts_align_into_one_shared_period_and_the_first_new_period_truncates_it ... ok
[INFO] [stdout] test sources::codex::tests::a_later_turn_context_replaces_the_tracked_model ... ok
[INFO] [stdout] test sources::codex::tests::events_before_any_turn_context_carry_no_model ... ok
[INFO] [stdout] test sources::codex::tests::event_id_carries_the_path_and_the_line_offset ... ok
[INFO] [stdout] test sources::codex::tests::malformed_and_non_usage_lines_yield_nothing ... ok
[INFO] [stdout] test sources::codex::tests::last_token_usage_is_summed_not_total_token_usage ... ok
[INFO] [stdout] test db::tests::the_schema_is_idempotent ... ok
[INFO] [stdout] test sources::codex::tests::absent_last_token_usage_yields_nothing ... ok
[INFO] [stdout] test sources::codex::tests::null_info_yields_nothing_instead_of_panicking ... ok
[INFO] [stdout] test db::tests::the_same_event_id_under_two_sources_stays_two_rows ... ok
[INFO] [stdout] test sources::codex::tests::the_tracked_model_survives_forget_only_for_the_given_file ... ok
[INFO] [stdout] test sources::codex::tests::turn_context_supplies_the_model_for_following_events ... ok
[INFO] [stdout] test db::tests::test_rollup_closed_hours_only_archives_past_hours ... ok
[INFO] [stdout] test sources::codex::tests::missing_metadata_is_scanned_once_until_rotation ... ok
[INFO] [stdout] test sources::codex::tests::utc_millis_are_read_from_the_rfc3339_timestamp ... ok
[INFO] [stdout] test sources::grok::tests::a_line_without_sid_or_without_ts_is_skipped ... ok
[INFO] [stdout] test plans::tests::a_two_account_group_splits_the_cap_by_each_accounts_fraction ... ok
[INFO] [stdout] test sources::grok::tests::later_model_changed_replaces_the_tracked_model ... ok
[INFO] [stdout] test sources::grok::tests::model_changed_for_another_sid_does_not_leak ... ok
[INFO] [stdout] test sources::grok::tests::malformed_and_missing_ctx_fields_default_to_zero ... ok
[INFO] [stdout] test sources::grok::tests::forget_drops_tracked_models_but_keeps_the_default ... ok
[INFO] [stdout] test sources::codex::tests::token_usage_record_is_ignored_because_it_duplicates_token_count ... ok
[INFO] [stdout] test sources::grok::tests::default_state_has_no_model_source ... ok
[INFO] [stdout] test plans::tests::a_period_whose_start_predates_the_usage_database_is_dropped_but_the_open_one_is_kept ... ok
[INFO] [stdout] test sources::grok::tests::tracked_model_wins_over_the_default ... ok
[INFO] [stdout] test sources::grok::tests::model_changed_without_a_model_keeps_previous_state ... ok
[INFO] [stdout] test sources::grok::tests::real_line_normalizes_to_the_measured_numbers ... ok
[INFO] [stdout] test sources::grok::tests::non_json_and_unrelated_messages_yield_nothing ... ok
[INFO] [stdout] test sources::grok::tests::same_sid_and_loop_index_with_different_ts_are_two_events ... ok
[INFO] [stdout] test sources::omp::tests::cache_write_counts_toward_gross_input_identity ... ok
[INFO] [stdout] test sources::grok::tests::untracked_sid_without_config_yields_no_model ... ok
[INFO] [stdout] test sources::omp::tests::a_record_without_an_envelope_id_is_dropped ... ok
[INFO] [stdout] test sources::grok::tests::refreshed_default_applies_to_later_lines_only ... ok
[INFO] [stdout] test sources::grok::tests::untracked_sid_uses_the_injected_default ... ok
[INFO] [stdout] test sources::omp::tests::credential_pin_trailing_assistant_message_resolves_correctly ... ok
[INFO] [stdout] test sources::omp::tests::non_assistant_and_malformed_lines_yield_nothing ... ok
[INFO] [stdout] test sources::omp::tests::envelope_id_is_the_dedup_key_because_message_has_no_id ... ok
[INFO] [stdout] test sources::omp::tests::input_is_converted_to_gross_and_reasoning_stays_inside_output ... ok
[INFO] [stdout] test plans::tests::a_single_account_period_derives_the_cap_from_usage_over_the_used_fraction ... ok
[INFO] [stdout] test sources::omp::tests::missing_reasoning_tokens_defaults_to_zero ... ok
[INFO] [stdout] test sources::omp::tests::opencode_requests_follow_the_persisted_api_key_timeline ... ok
[INFO] [stdout] test sources::omp::tests::record_provider_reads_the_pair_the_backfill_needs ... ok
[INFO] [stdout] test sources::omp::tests::request_metadata_uses_the_pin_on_each_request_not_a_session_owner ... ok
[INFO] [stdout] test sources::omp::tests::reset_boundary_segments_session_and_supports_reranking ... ok
[INFO] [stdout] test sources::omp::tests::the_message_provider_is_carried_through ... ok
[INFO] [stdout] test plans::tests::without_a_resolvable_account_the_group_cap_survives_but_no_plan_claims_usage ... ok
[INFO] [stdout] test sources::opencode::tests::all_zero_unfinished_rows_are_skipped_so_the_window_can_fill_them_later ... ok
[INFO] [stdout] test sources::opencode::tests::independent_reasoning_is_folded_into_output ... ok
[INFO] [stdout] test sources::opencode::tests::provider_and_model_are_joined_into_the_alias_key ... ok
[INFO] [stdout] test sources::opencode::tests::session_can_be_read_from_the_message_json ... ok
[INFO] [stdout] test sources::opencode::tests::user_rows_and_malformed_data_yield_nothing ... ok
[INFO] [stdout] test sources::opencode::tests::the_baseline_is_recovered_from_the_cursor ... ok
[INFO] [stdout] test sources::opencode::tests::tokens_are_normalized_to_gross_input_and_reasoning_inclusive_output ... ok
[INFO] [stdout] test plans::tests::the_codex_group_counts_provider_labelled_rows_and_skips_other_providers ... ok
[INFO] [stdout] test sources::opencode::tests::the_replay_floor_never_drops_below_the_baseline ... ok
[INFO] [stdout] test web::server::tests::a_port_conflict_does_not_replace_the_existing_listener ... ok
[INFO] [stdout] test cloudflare::tests::test_sqlite_persistence_and_queries ... ok
[INFO] [stdout] test web::tests::missing_database_is_not_created ... ok
[INFO] [stdout] test plans::tests::missing_ledgers_degrade_to_empty_samples_without_panicking ... ok
[INFO] [stdout] test plans::tests::the_grok_plan_derives_its_cap_from_the_logged_period ... FAILED
[INFO] [stdout] test cloudflare::tests::test_graphql_response_parsing_and_idempotence ... ok
[INFO] [stdout] test tail::tests::large_backlog_is_read_in_chunks_and_keeps_cross_chunk_line_offsets ... ok
[INFO] [stdout] test web::tests::daily_boundaries_aliases_and_accounting_reconcile ... ok
[INFO] [stdout] test web::requests::tests::one_session_can_be_reported_under_two_accounts ... ok
[INFO] [stdout] test web::tests::empty_database_and_invalid_queries ... ok
[INFO] [stdout] test web::requests::tests::switch_reasons_follow_chronological_account_segments ... ok
[INFO] [stdout] test web::tests::single_model_history_and_unknown_are_filterable ... ok
[INFO] [stdout] test web::requests::tests::recent_request_query_uses_ordered_index ... ok
[INFO] [stdout] test web::tests::global_cache_refreshes_after_writer_commit_and_range_uses_time_index ... ok
[INFO] [stdout] test sources::opencode::tests::the_replay_window_covers_rows_that_were_backfilled_late ... ok
[INFO] [stdout] test plans::tests::the_ledger_infos_and_mappings_decide_every_account ... ok
[INFO] [stdout] test web::tests::test_hourly_report_loads_and_reconciles ... ok
[INFO] [stdout] test web::requests::tests::summary_uses_all_rows_while_recent_is_bounded_in_sql ... ok
[INFO] [stdout] test sources::opencode::tests::a_row_older_than_the_window_is_outside_it ... ok
[INFO] [stdout] test web::tests::test_cloudflare_api_with_cached_data ... ok
[INFO] [stdout] test web::server::tests::dropping_server_cancels_partial_requests_and_releases_listener ... ok
[INFO] [stdout] test web::tests::test_cloudflare_routes_and_navigation ... ok
[INFO] [stderr] error: test failed, to rerun pass `-p herdr-usage --lib`
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- plans::tests::the_grok_plan_derives_its_cap_from_the_logged_period stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'plans::tests::the_grok_plan_derives_its_cap_from_the_logged_period' (4981) panicked at crates/herdr-usage/src/plans/tests.rs:578:5:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: None
[INFO] [stdout]  right: Some(7.0)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55ce77cd0ef6 - <unknown>
[INFO] [stdout]    1:     0x55ce77a0b5fa - <unknown>
[INFO] [stdout]    2:     0x55ce77cd6edc - <unknown>
[INFO] [stdout]    3:     0x55ce77caad72 - <unknown>
[INFO] [stdout]    4:     0x55ce77cc7401 - <unknown>
[INFO] [stdout]    5:     0x55ce77cc7842 - <unknown>
[INFO] [stdout]    6:     0x55ce77caae22 - <unknown>
[INFO] [stdout]    7:     0x55ce77ca3879 - <unknown>
[INFO] [stdout]    8:     0x55ce77cabbfd - <unknown>
[INFO] [stdout]    9:     0x55ce77a0bd1c - <unknown>
[INFO] [stdout]   10:     0x55ce77a0bc33 - <unknown>
[INFO] [stdout]   11:     0x55ce77a3bf63 - <unknown>
[INFO] [stdout]   12:     0x55ce77b290ab - <unknown>
[INFO] [stdout]   13:     0x55ce77cda5db - <unknown>
[INFO] [stdout]   14:     0x55ce77ce8484 - <unknown>
[INFO] [stdout]   15:     0x55ce77ce1bb4 - <unknown>
[INFO] [stdout]   16:     0x55ce77cec242 - <unknown>
[INFO] [stdout]   17:     0x55ce77ccf5b4 - <unknown>
[INFO] [stdout]   18:     0x73cf4d7bbdfa - <unknown>
[INFO] [stdout]   19:     0x73cf4d84f3d4 - clone
[INFO] [stdout]   20:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     plans::tests::the_grok_plan_derives_its_cap_from_the_logged_period
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 115 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709", kill_on_drop: false }`
[INFO] [stdout] 3fab3d295127bda4bf8bea1433b86d8a2d84e98fc60901f3aa8177afa2b79709
