[INFO] cloning repository https://github.com/ianzepp/cassio
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ianzepp/cassio" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fianzepp%2Fcassio", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fianzepp%2Fcassio'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b7307990add6389b9276ac406a39e6018e5d9b57
[INFO] testing ianzepp/cassio against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fianzepp%2Fcassio" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ianzepp/cassio
[INFO] finished tweaking git repo https://github.com/ianzepp/cassio
[INFO] tweaked toml for git repo https://github.com/ianzepp/cassio written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ianzepp/cassio on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ianzepp/cassio 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded document-features v0.2.12
[INFO] [stderr]   Downloaded libredox v0.1.12
[INFO] [stderr]   Downloaded litrs v1.0.0
[INFO] [stderr]   Downloaded dirs v6.0.0
[INFO] [stderr]   Downloaded clap_derive v4.5.55
[INFO] [stderr]   Downloaded clap v4.5.58
[INFO] [stderr]   Downloaded rustls-webpki v0.103.9
[INFO] [stderr]   Downloaded unicode-ident v1.0.23
[INFO] [stderr]   Downloaded ureq v3.2.0
[INFO] [stderr]   Downloaded cookie_store v0.22.1
[INFO] [stderr]   Downloaded ureq-proto v0.5.3
[INFO] [stderr]   Downloaded clap_builder v4.5.58
[INFO] [stderr]   Downloaded chrono v0.4.43
[INFO] [stderr]   Downloaded cookie v0.18.1
[INFO] [stderr]   Downloaded syn v2.0.115
[INFO] [stderr]   Downloaded webpki-roots v1.0.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 26629ce954fedc4624c97b16c327ec88c0ec84b0d5e22e3cc596157921bae3f6
[INFO] running `Command { std: "docker" "start" "-a" "26629ce954fedc4624c97b16c327ec88c0ec84b0d5e22e3cc596157921bae3f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "26629ce954fedc4624c97b16c327ec88c0ec84b0d5e22e3cc596157921bae3f6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "26629ce954fedc4624c97b16c327ec88c0ec84b0d5e22e3cc596157921bae3f6", kill_on_drop: false }`
[INFO] [stdout] 26629ce954fedc4624c97b16c327ec88c0ec84b0d5e22e3cc596157921bae3f6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 91b0ec8ca9969b7db717b89eacf530f1d95dd7c7914574b33e414fa8139bed5c
[INFO] running `Command { std: "docker" "start" "-a" "91b0ec8ca9969b7db717b89eacf530f1d95dd7c7914574b33e414fa8139bed5c", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling syn v2.0.115
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling clap_builder v4.5.58
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[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 ring v0.17.14
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling ureq-proto v0.5.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling clap v4.5.58
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling ureq v3.2.0
[INFO] [stderr]    Compiling cassio v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 53.50s
[INFO] running `Command { std: "docker" "inspect" "91b0ec8ca9969b7db717b89eacf530f1d95dd7c7914574b33e414fa8139bed5c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "91b0ec8ca9969b7db717b89eacf530f1d95dd7c7914574b33e414fa8139bed5c", kill_on_drop: false }`
[INFO] [stdout] 91b0ec8ca9969b7db717b89eacf530f1d95dd7c7914574b33e414fa8139bed5c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 77b3dea688ac3f8f424e54e1ca49593a511cdce7a8c2684419c94e4ea6fc2554
[INFO] running `Command { std: "docker" "start" "-a" "77b3dea688ac3f8f424e54e1ca49593a511cdce7a8c2684419c94e4ea6fc2554", kill_on_drop: false }`
[INFO] [stderr]    Compiling cassio v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.60s
[INFO] running `Command { std: "docker" "inspect" "77b3dea688ac3f8f424e54e1ca49593a511cdce7a8c2684419c94e4ea6fc2554", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "77b3dea688ac3f8f424e54e1ca49593a511cdce7a8c2684419c94e4ea6fc2554", kill_on_drop: false }`
[INFO] [stdout] 77b3dea688ac3f8f424e54e1ca49593a511cdce7a8c2684419c94e4ea6fc2554
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 40d72752d325f26c3eea73f4c1bfab3a840e51713b769ecdc4009fccdc95b71c
[INFO] running `Command { std: "docker" "start" "-a" "40d72752d325f26c3eea73f4c1bfab3a840e51713b769ecdc4009fccdc95b71c", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cassio-d7df0bb0395b2f73)
[INFO] [stdout] running 185 tests
[INFO] [stdout] test ast::tests::test_classify_session_kind_delegated ... ok
[INFO] [stdout] test ast::tests::test_classify_session_kind_uncertain_without_user_text ... ok
[INFO] [stdout] test ast::tests::test_classify_session_kind_human ... ok
[INFO] [stdout] test ast::tests::test_session_stats_default ... ok
[INFO] [stdout] test ast::tests::test_role_serde_roundtrip ... ok
[INFO] [stdout] test ast::tests::test_content_block_text_serde ... ok
[INFO] [stdout] test ast::tests::test_token_usage_default ... ok
[INFO] [stdout] test ast::tests::test_tool_display ... ok
[INFO] [stdout] test ast::tests::test_tool_serde_roundtrip ... ok
[INFO] [stdout] test compact::tests::test_build_daily_input_structure ... ok
[INFO] [stdout] test compact::tests::test_build_chunks_single_chunk ... ok
[INFO] [stdout] test compact::tests::test_build_daily_merge_input_structure ... ok
[INFO] [stdout] test compact::tests::test_build_monthly_input_structure ... ok
[INFO] [stdout] test compact::tests::test_build_chunks_oversized_single_file ... ok
[INFO] [stdout] test compact::tests::test_format_elapsed_minutes ... ok
[INFO] [stdout] test compact::tests::test_build_chunks_multiple ... ok
[INFO] [stdout] test compact::tests::test_format_elapsed_seconds ... ok
[INFO] [stdout] test config::tests::test_config_output_path_expands_tilde ... ok
[INFO] [stdout] test config::tests::test_expand_tilde_absolute_unchanged ... ok
[INFO] [stdout] test config::tests::test_expand_tilde_bare ... ok
[INFO] [stdout] test config::tests::test_infer_value_integer ... ok
[INFO] [stdout] test config::tests::test_infer_value_string ... ok
[INFO] [stdout] test config::tests::test_infer_value_true ... ok
[INFO] [stdout] test compact::tests::test_plan_daily_compaction_chunked ... ok
[INFO] [stdout] test compact::tests::test_plan_daily_compaction_single ... ok
[INFO] [stdout] test config::tests::test_resolve_key_nested ... ok
[INFO] [stdout] test config::tests::test_resolve_key_top_level ... ok
[INFO] [stdout] test compact::tests::test_read_cached_chunk_summary_missing_and_empty ... ok
[INFO] [stdout] test config::tests::test_config_default ... ok
[INFO] [stdout] test config::tests::test_config_deserialize ... ok
[INFO] [stdout] test compact::tests::test_read_cached_chunk_summary_returns_content ... ok
[INFO] [stdout] test config::tests::test_expand_tilde_relative_unchanged ... ok
[INFO] [stdout] test config::tests::test_infer_value_false ... ok
[INFO] [stdout] test config::tests::test_expand_tilde_with_path ... ok
[INFO] [stdout] test config::tests::test_infer_value_float ... ok
[INFO] [stdout] test compact::tests::test_daily_chunk_checkpoint_path_format ... ok
[INFO] [stdout] test config::tests::test_resolve_key_missing ... ok
[INFO] [stdout] test config::tests::test_split_key_dotted ... ok
[INFO] [stdout] test config::tests::test_split_key_empty_segment_errors ... ok
[INFO] [stdout] test config::tests::test_split_key_deeply_nested ... ok
[INFO] [stdout] test discover::tests::test_derive_output_path_opencode_placeholder ... ok
[INFO] [stdout] test discover::tests::test_derive_pi_output_path_valid ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_duration_minutes ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_duration_seconds ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_tokens_millions ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_duration_negative ... ok
[INFO] [stdout] test discover::tests::test_derive_claude_output_path_uses_first_non_empty_line ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_tokens_zero ... ok
[INFO] [stdout] test config::tests::test_split_key_simple ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_tool_result_success ... ok
[INFO] [stdout] test discover::tests::test_derive_codex_output_path_valid ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_duration_hours ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_duration_zero ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_empty_stats_no_summary ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_full_format_output ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_tokens_small ... ok
[INFO] [stdout] test discover::tests::test_derive_codex_output_path_no_prefix ... ok
[INFO] [stdout] test formatter::tests::test_from_str_jsonl ... ok
[INFO] [stdout] test discover::tests::test_derive_codex_output_path_short_filename ... ok
[INFO] [stdout] test formatter::tests::test_from_str_text_alias ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_tool_result_failure ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_shorten_model_name_sonnet ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_shorten_model_name_synthetic ... ok
[INFO] [stdout] test formatter::jsonl::tests::test_jsonl_output_valid_json_lines ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_shorten_model_name_unknown ... ok
[INFO] [stdout] test formatter::tests::test_display_roundtrip ... ok
[INFO] [stdout] test formatter::tests::test_from_str_emoji_text ... ok
[INFO] [stdout] test formatter::tests::test_from_str_invalid ... ok
[INFO] [stdout] test parser::claude::tests::test_extract_queue_summary_truncation ... ok
[INFO] [stdout] test formatter::tests::test_from_str_training_json ... ok
[INFO] [stdout] test parser::claude::tests::test_extract_queue_summary_with_tags ... ok
[INFO] [stdout] test parser::claude::tests::test_empty_input_errors ... ok
[INFO] [stdout] test parser::claude::tests::test_extract_queue_summary_without_tags ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_read ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_bash ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_glob ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_todowrite ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_glob_no_path ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_bash_long_truncation ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_edit ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_task ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_webfetch ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_websearch ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_unknown ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_grep ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_timestamp_valid ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_tool_error ... ok
[INFO] [stdout] test parser::claude::tests::test_format_tool_input_write ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_tool_use_and_result ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_file_write_and_edit_tracking ... ok
[INFO] [stdout] test parser::claude::tests::test_skip_is_meta_records ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_minimal_session ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_model_change ... ok
[INFO] [stdout] test parser::claude::tests::test_skip_xml_content ... ok
[INFO] [stdout] test parser::codex::tests::test_file_read_tracking_from_shell ... ok
[INFO] [stdout] test parser::codex::tests::test_format_codex_function_shell ... ok
[INFO] [stdout] test parser::codex::tests::test_format_codex_function_read_file ... ok
[INFO] [stdout] test parser::codex::tests::test_duration_calculation ... ok
[INFO] [stdout] test parser::codex::tests::test_format_codex_function_unknown ... ok
[INFO] [stdout] test parser::codex::tests::test_format_codex_function_update_plan ... ok
[INFO] [stdout] test parser::codex::tests::test_format_codex_function_write_file ... ok
[INFO] [stdout] test parser::codex::tests::test_no_session_meta_errors ... ok
[INFO] [stdout] test parser::codex::tests::test_parse_function_call_and_output ... ok
[INFO] [stdout] test parser::codex::tests::test_parse_function_error ... ok
[INFO] [stdout] test parser::codex::tests::test_parse_model_change_via_turn_context ... ok
[INFO] [stdout] test parser::codex::tests::test_token_count_extraction ... ok
[INFO] [stdout] test parser::codex::tests::test_token_count_null_info ... ok
[INFO] [stdout] test parser::codex::tests::test_parse_minimal_codex_session ... ok
[INFO] [stdout] test parser::codex::tests::test_user_message_cleanup_context_blocks ... ok
[INFO] [stdout] test parser::codex::tests::test_user_message_cleanup_file_refs ... ok
[INFO] [stdout] test parser::opencode::tests::test_parse_session_without_session_file_uses_fallback_metadata ... ok
[INFO] [stdout] test parser::pi::tests::test_format_pi_tool_input_variants ... ok
[INFO] [stdout] test parser::pi::tests::test_parse_minimal_pi_session ... ok
[INFO] [stdout] test parser::pi::tests::test_parse_pi_tool_call_and_result_tracks_files ... ok
[INFO] [stdout] test pricing::tests::test_estimate_cost_basic ... ok
[INFO] [stdout] test pricing::tests::test_estimate_cost_no_model_no_override ... ok
[INFO] [stdout] test pricing::tests::test_estimate_cost_unknown_no_override ... ok
[INFO] [stdout] test pricing::tests::test_estimate_cost_with_cache ... ok
[INFO] [stdout] test pricing::tests::test_estimate_cost_with_override ... ok
[INFO] [stdout] test pricing::tests::test_format_cost_cents ... ok
[INFO] [stdout] test parser::opencode::tests::test_parse_session_orders_messages_and_tracks_stats ... ok
[INFO] [stdout] test pricing::tests::test_format_cost_dollars ... ok
[INFO] [stdout] test pricing::tests::test_lookup_claude_haiku ... ok
[INFO] [stdout] test pricing::tests::test_format_cost_large ... ok
[INFO] [stdout] test pricing::tests::test_format_cost_small ... ok
[INFO] [stdout] test pricing::tests::test_lookup_case_insensitive ... ok
[INFO] [stdout] test pricing::tests::test_lookup_claude_opus ... ok
[INFO] [stdout] test pricing::tests::test_lookup_claude_sonnet ... ok
[INFO] [stdout] test pricing::tests::test_lookup_codex_model ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gemini_3 ... ok
[INFO] [stdout] test pricing::tests::test_lookup_glm_variants ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gpt52_base ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gpt53_codex ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gpt5_codex ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gpt5_codex_variants ... ok
[INFO] [stdout] test pricing::tests::test_lookup_deepseek_variants ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gpt52_codex ... ok
[INFO] [stdout] test pricing::tests::test_lookup_kimi_k2_thinking_not_matched_by_kimi_k2 ... ok
[INFO] [stdout] test pricing::tests::test_lookup_gpt5_nano_not_matched_by_gpt5 ... ok
[INFO] [stdout] test pricing::tests::test_lookup_minimax ... ok
[INFO] [stdout] test pricing::tests::test_lookup_grok_code_fast ... ok
[INFO] [stdout] test pricing::tests::test_lookup_o3_pro ... ok
[INFO] [stdout] test pricing::tests::test_lookup_shortened_model_name ... ok
[INFO] [stdout] test pricing::tests::test_lookup_qwen3_coder ... ok
[INFO] [stdout] test pricing::tests::test_lookup_unknown ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_token_usage ... ok
[INFO] [stdout] test parser::codex::tests::test_format_codex_function_shell_array ... ok
[INFO] [stdout] test summary::tests::test_aggregate_add ... ok
[INFO] [stdout] test summary::tests::test_aggregate_add_agg ... ok
[INFO] [stdout] test summary::tests::test_format_duration_hours ... ok
[INFO] [stdout] test summary::tests::test_format_duration_minutes ... ok
[INFO] [stdout] test summary::tests::test_format_duration_zero_or_negative ... ok
[INFO] [stdout] test summary::tests::test_format_tokens_k ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_queue_operation ... ok
[INFO] [stdout] test summary::tests::test_format_tokens_small ... ok
[INFO] [stdout] test summary::tests::test_format_tokens_m ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_timestamp_invalid ... ok
[INFO] [stdout] test summary::tests::test_parse_duration_combined ... ok
[INFO] [stdout] test summary::tests::test_parse_duration_empty ... ok
[INFO] [stdout] test summary::tests::test_parse_duration_hours_and_minutes ... ok
[INFO] [stdout] test summary::tests::test_parse_duration_minutes_only ... ok
[INFO] [stdout] test summary::tests::test_parse_duration_seconds_only ... ok
[INFO] [stdout] test summary::tests::test_parse_token_value_millions ... ok
[INFO] [stdout] test summary::tests::test_parse_token_value_thousands ... ok
[INFO] [stdout] test summary::tests::test_parse_token_value_zero ... ok
[INFO] [stdout] test summary::tests::test_shorten_project_exactly_three ... ok
[INFO] [stdout] test summary::tests::test_shorten_project_long ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_format_tokens_thousands ... ok
[INFO] [stdout] test pricing::tests::test_lookup_grok_4_1_fast ... ok
[INFO] [stdout] test summary::tests::test_strip_emoji_prefix_match ... ok
[INFO] [stdout] test summary::tests::test_shorten_project_trailing_slash ... ok
[INFO] [stdout] test summary::tests::test_strip_emoji_prefix_no_match ... ok
[INFO] [stdout] test summary::tests::test_shorten_project_short ... ok
[INFO] [stdout] test discover::tests::test_find_pi_files_collects_jsonl ... ok
[INFO] [stdout] test parser::claude::tests::test_parse_thinking_block ... ok
[INFO] [stdout] test compact::tests::test_extract_session_filters_correctly ... ok
[INFO] [stdout] test summary::tests::test_parse_token_value_raw ... ok
[INFO] [stdout] test redact::tests::redacts_private_keys ... ok
[INFO] [stdout] test redact::tests::redacts_known_tokens ... ok
[INFO] [stdout] test redact::tests::redacts_openai_project_tokens ... ok
[INFO] [stdout] test redact::tests::redacts_bearer_tokens ... ok
[INFO] [stdout] test redact::tests::redacts_session_content_before_output ... ok
[INFO] [stdout] test ast::tests::test_content_block_tool_use_serde ... ok
[INFO] [stdout] test formatter::emoji_text::tests::test_shorten_model_name_opus ... ok
[INFO] [stdout] test formatter::tests::test_from_str_json_alias ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 185 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/cassio-bd3320386f86e33e)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::test_derive_output_path_for_pi_uses_filename_timestamp ... ok
[INFO] [stdout] test tests::test_derive_output_path_for_opencode_falls_back_when_metadata_missing ... ok
[INFO] [stdout] test tests::test_derive_output_path_for_opencode_uses_session_timestamp ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/hygiene.rs (/opt/rustwide/target/debug/deps/hygiene-bd8f836c14dcee35)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test unimplemented_budget ... ok
[INFO] [stdout] test todo_budget ... ok
[INFO] [stdout] test unreachable_budget ... ok
[INFO] [stdout] test unwrap_budget ... ok
[INFO] [stdout] test panic_budget ... ok
[INFO] [stdout] test expect_budget ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests cassio
[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" "40d72752d325f26c3eea73f4c1bfab3a840e51713b769ecdc4009fccdc95b71c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "40d72752d325f26c3eea73f4c1bfab3a840e51713b769ecdc4009fccdc95b71c", kill_on_drop: false }`
[INFO] [stdout] 40d72752d325f26c3eea73f4c1bfab3a840e51713b769ecdc4009fccdc95b71c
