[INFO] fetching crate crmux 0.20.3...
[INFO] testing crmux-0.20.3 against 1.98.0-beta.1 for beta-1.98-1
[INFO] extracting crate crmux 0.20.3 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate crmux 0.20.3
[INFO] finished tweaking crates.io crate crmux 0.20.3
[INFO] tweaked toml for crates.io crate crmux 0.20.3 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate crmux 0.20.3 on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate crmux 0.20.3 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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150
[INFO] running `Command { std: "docker" "start" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", 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" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", 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" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling http v1.4.1
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling lru v0.18.0
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling number_prefix v0.4.0
[INFO] [stderr]    Compiling self_update v0.42.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling rmp v0.8.15
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling openssl-sys v0.9.116
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling openssl v0.10.80
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling tar v0.4.46
[INFO] [stderr]    Compiling self-replace v1.5.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling tmux-claude-state v0.4.1
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling ratatui-core v0.1.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling rmp-serde v1.3.1
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling ratatui-widgets v0.3.1
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.1
[INFO] [stderr]    Compiling ansi-to-tui v8.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling ratatui-macros v0.7.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling ratatui v0.30.1
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling crmux v0.20.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 18s
[INFO] running `Command { std: "docker" "inspect" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", 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" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling crmux v0.20.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.82s
[INFO] running `Command { std: "docker" "inspect" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", 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" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.53s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/crmux-095a0cd7f550fa3c)
[INFO] [stdout] 
[INFO] [stdout] running 427 tests
[INFO] [stdout] test app::tests::test_detect_cursor_compound_sgr_bold_reverse ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_compound_sgr_reverse_with_color ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_compound_reset ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_compound_sgr_truecolor ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_multiline ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_none ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_fallback_empty ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_basic ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_fallback_no_prompt ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_fallback_with_text ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_nbsp_with_ansi_color ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_nbsp_with_ghost_text ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_returns_last_match ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_reverse_then_reset ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_nbsp_with_text ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_reverse_video_preferred_over_nbsp_prompt ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_reverse_video_preferred_over_prompt ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_scan_limit_none_scans_all ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_scan_limit_outside_range ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_scan_limit_within_range ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_with_wide_chars ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_with_ansi_before ... ok
[INFO] [stdout] test app::tests::test_strip_osc8_hyperlinks_basic ... ok
[INFO] [stdout] test app::tests::test_parse_claudeye_version ... ok
[INFO] [stdout] test app::tests::test_strip_osc8_hyperlinks_bel_terminator ... ok
[INFO] [stdout] test app::tests::test_strip_osc8_hyperlinks_no_links ... ok
[INFO] [stdout] test app::tests::test_version_meets_minimum ... ok
[INFO] [stdout] test app::tests::test_strip_osc8_hyperlinks_multibyte ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_prompt_nbsp_empty ... ok
[INFO] [stdout] test app::tests::test_strip_osc8_hyperlinks_multiple ... ok
[INFO] [stdout] test auto_title::tests::test_collect_all_plans_nonexistent_dir ... ok
[INFO] [stdout] test auto_title::tests::test_cwd_to_project_dir_basic ... ok
[INFO] [stdout] test auto_title::tests::test_cwd_to_project_dir_with_dot ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_empty ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_normal_text_unchanged ... ok
[INFO] [stdout] test auto_title::tests::test_collect_all_plans_empty_dir ... ok
[INFO] [stdout] test auto_title::tests::test_collect_all_plans_deduplicates_by_slug ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slash_command_multiple_tags ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slug_from_jsonl_empty ... ok
[INFO] [stdout] test auto_title::tests::test_collect_all_plans_missing_plan_file ... ok
[INFO] [stdout] test app::tests::test_detect_cursor_reset_then_reverse ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slash_command_empty_name ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slash_command_no_tags ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_short ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_skips_non_user ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_array_content ... ok
[INFO] [stdout] test app::tests::test_strip_osc8_hyperlinks_in_context ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_picks_last_user ... ok
[INFO] [stdout] test auto_title::tests::test_cwd_to_project_dir_trailing_slash ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slash_command_simple ... ok
[INFO] [stdout] test auto_title::tests::test_collect_all_plans_with_slugs ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slug_from_jsonl_found ... ok
[INFO] [stdout] test auto_title::tests::test_extract_last_prompt_slash_command ... ok
[INFO] [stdout] test auto_title::tests::test_extract_slug_from_jsonl_no_slug ... ok
[INFO] [stdout] test auto_title::tests::test_parse_summary_from_index_found ... ok
[INFO] [stdout] test auto_title::tests::test_parse_summary_from_index_not_found ... ok
[INFO] [stdout] test auto_title::tests::test_read_plan_title_file_not_found ... ok
[INFO] [stdout] test event_handler::tests::test_broadcast_mode_esc_returns_to_normal ... ok
[INFO] [stdout] test event_handler::tests::test_broadcast_mode_esc_sets_esc_source_mode ... ok
[INFO] [stdout] test auto_title::tests::test_read_plan_title_no_heading_prefix ... ok
[INFO] [stdout] test event_handler::tests::test_broadcast_mode_keys_do_not_modify_buffer ... ok
[INFO] [stdout] test event_handler::tests::test_ctrl_d_does_not_enter_scroll_mode_at_bottom ... ok
[INFO] [stdout] test event_handler::tests::test_broadcast_mode_l_does_not_switch_tab ... ok
[INFO] [stdout] test event_handler::tests::test_broadcast_mode_q_does_not_quit ... ok
[INFO] [stdout] test event_handler::tests::test_ctrl_d_clamps_to_zero ... ok
[INFO] [stdout] test event_handler::tests::test_ctrl_d_scrolls_down ... ok
[INFO] [stdout] test auto_title::tests::test_read_plan_title_with_heading ... ok
[INFO] [stdout] test event_handler::tests::test_ctrl_u_clamps_to_max ... ok
[INFO] [stdout] test auto_title::tests::test_resolve_plan_info_no_slug ... ok
[INFO] [stdout] test auto_title::tests::test_parse_summary_from_index_invalid_json ... ok
[INFO] [stdout] test event_handler::tests::test_esc_continues_in_normal_mode ... ok
[INFO] [stdout] test event_handler::tests::test_esc_source_mode_cleared_on_ctrl_key ... ok
[INFO] [stdout] test event_handler::tests::test_g_sets_pending_g ... ok
[INFO] [stdout] test event_handler::tests::test_g_then_other_key_cancels_pending ... ok
[INFO] [stdout] test event_handler::tests::test_e_clears_buffer_when_no_title ... ok
[INFO] [stdout] test event_handler::tests::test_help_ctrl_d_scrolls_down ... ok
[INFO] [stdout] test auto_title::tests::test_resolve_plan_info_found ... ok
[INFO] [stdout] test auto_title::tests::test_resolve_plan_info_no_plan_file ... ok
[INFO] [stdout] test event_handler::tests::test_e_does_nothing_without_session ... ok
[INFO] [stdout] test event_handler::tests::test_e_prefills_buffer ... ok
[INFO] [stdout] test event_handler::tests::test_gg_enters_scroll_mode ... ok
[INFO] [stdout] test event_handler::tests::test_gg_scrolls_to_top ... ok
[INFO] [stdout] test event_handler::tests::test_e_enters_title_mode ... ok
[INFO] [stdout] test event_handler::tests::test_esc_closes_help ... ok
[INFO] [stdout] test event_handler::tests::test_help_ctrl_u_scrolls_up ... ok
[INFO] [stdout] test event_handler::tests::test_help_esc_resets_scroll ... ok
[INFO] [stdout] test event_handler::tests::test_ctrl_u_enters_scroll_mode ... ok
[INFO] [stdout] test event_handler::tests::test_ctrl_u_scrolls_up ... ok
[INFO] [stdout] test event_handler::tests::test_h_moves_to_prev_tab ... ok
[INFO] [stdout] test event_handler::tests::test_help_g_scrolls_to_top ... ok
[INFO] [stdout] test event_handler::tests::test_help_j_scrolls_down ... ok
[INFO] [stdout] test event_handler::tests::test_help_k_clamps_to_zero ... ok
[INFO] [stdout] test event_handler::tests::test_i_does_nothing_without_session ... ok
[INFO] [stdout] test event_handler::tests::test_help_k_scrolls_up ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_esc_returns_to_normal ... ok
[INFO] [stdout] test event_handler::tests::test_i_resets_scroll_on_enter_input_mode ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_esc_sets_esc_source_mode ... ok
[INFO] [stdout] test event_handler::tests::test_help_shift_g_scrolls_to_bottom ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_keys_do_not_modify_buffer ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_q_does_not_quit ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_enter_does_not_modify_buffer ... ok
[INFO] [stdout] test event_handler::tests::test_navigate_j ... ok
[INFO] [stdout] test event_handler::tests::test_navigate_down_arrow ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_special_keys_stay_in_input ... ok
[INFO] [stdout] test event_handler::tests::test_i_enters_input_mode_with_session ... ok
[INFO] [stdout] test event_handler::tests::test_input_mode_h_does_not_switch_tab ... ok
[INFO] [stdout] test event_handler::tests::test_navigate_k ... ok
[INFO] [stdout] test event_handler::tests::test_navigate_up_arrow ... ok
[INFO] [stdout] test event_handler::tests::test_left_arrow_moves_tab_in_normal_mode ... ok
[INFO] [stdout] test event_handler::tests::test_l_moves_to_next_tab ... ok
[INFO] [stdout] test event_handler::tests::test_normal_esc_with_broadcast_source_returns_to_broadcast ... ok
[INFO] [stdout] test event_handler::tests::test_normal_esc_with_input_source_returns_to_input ... ok
[INFO] [stdout] test event_handler::tests::test_number_3_selects_third_session ... ok
[INFO] [stdout] test event_handler::tests::test_normal_other_key_clears_esc_source_mode ... ok
[INFO] [stdout] test event_handler::tests::test_number_beyond_session_count_is_noop ... ok
[INFO] [stdout] test event_handler::tests::test_number_1_selects_first_session ... ok
[INFO] [stdout] test event_handler::tests::test_o_toggles_claudeye_visible ... ok
[INFO] [stdout] test event_handler::tests::test_paste_ignored_during_help ... ok
[INFO] [stdout] test event_handler::tests::test_normal_esc_without_source_does_nothing ... ok
[INFO] [stdout] test event_handler::tests::test_number_on_empty_sessions_is_noop ... ok
[INFO] [stdout] test event_handler::tests::test_paste_ignored_in_title_mode ... ok
[INFO] [stdout] test event_handler::tests::test_other_key_continues ... ok
[INFO] [stdout] test event_handler::tests::test_paste_in_input_mode_does_not_change_state ... ok
[INFO] [stdout] test event_handler::tests::test_number_key_saves_prev_selected ... ok
[INFO] [stdout] test event_handler::tests::test_q_does_not_quit_during_help ... ok
[INFO] [stdout] test event_handler::tests::test_question_mark_opens_help ... ok
[INFO] [stdout] test event_handler::tests::test_right_arrow_moves_tab_in_normal_mode ... ok
[INFO] [stdout] test event_handler::tests::test_quit_on_q ... ok
[INFO] [stdout] test event_handler::tests::test_paste_ignored_in_scroll_mode ... ok
[INFO] [stdout] test event_handler::tests::test_s_continues ... ok
[INFO] [stdout] test event_handler::tests::test_paste_in_broadcast_mode_does_not_change_state ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_ctrl_d_scrolls_down ... ok
[INFO] [stdout] test event_handler::tests::test_question_mark_closes_help ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_g_then_other_key_cancels_pending ... ok
[INFO] [stdout] test event_handler::tests::test_paste_ignored_in_normal_mode ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_down_arrow_scrolls_down ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_i_does_nothing_without_session ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_ctrl_u_scrolls_up ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_j_to_zero_exits_scroll ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_k_scrolls_up ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_shift_g_exits_scroll ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_shift_i_does_nothing_without_sessions ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_ctrl_d_to_zero_exits_scroll ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_shift_i_enters_broadcast_mode ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_up_arrow_scrolls_up ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_gg_scrolls_to_top ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_i_enters_input_mode ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_j_scrolls_down ... ok
[INFO] [stdout] test event_handler::tests::test_shift_g_resets_scroll ... ok
[INFO] [stdout] test event_handler::tests::test_shift_i_does_nothing_without_sessions ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_q_does_not_quit ... ok
[INFO] [stdout] test event_handler::tests::test_shift_i_enters_broadcast_mode_with_sessions ... ok
[INFO] [stdout] test event_handler::tests::test_space_toggles_mark ... ok
[INFO] [stdout] test event_handler::tests::test_space_on_empty_sessions ... ok
[INFO] [stdout] test event_handler::tests::test_t_key_noop_when_no_prev ... ok
[INFO] [stdout] test event_handler::tests::test_t_key_switches_to_prev_selected ... ok
[INFO] [stdout] test event_handler::tests::test_shift_i_resets_scroll_on_enter_broadcast_mode ... ok
[INFO] [stdout] test event_handler::tests::test_scroll_mode_esc_resets_and_exits ... ok
[INFO] [stdout] test event_handler::tests::test_tab_switch_resets_preview_scroll ... ok
[INFO] [stdout] test rpc::tests::test_decode_empty_data ... ok
[INFO] [stdout] test event_handler::tests::test_tab_switch_wraps_around ... ok
[INFO] [stdout] test event_handler::tests::test_space_unmarks_marked_session ... ok
[INFO] [stdout] test rpc::tests::test_decode_invalid_array_len ... ok
[INFO] [stdout] test event_handler::tests::test_t_key_toggles_back_and_forth ... ok
[INFO] [stdout] test event_handler::tests::test_title_backspace ... ok
[INFO] [stdout] test event_handler::tests::test_title_char_appended ... ok
[INFO] [stdout] test event_handler::tests::test_title_enter_stays_in_title_mode ... ok
[INFO] [stdout] test event_handler::tests::test_title_esc_empty_stores_none ... ok
[INFO] [stdout] test event_handler::tests::test_title_esc_saves_and_exits ... ok
[INFO] [stdout] test event_handler::tests::test_title_esc_whitespace_only_stores_none ... ok
[INFO] [stdout] test event_handler::tests::test_title_mode_h_does_not_switch_tab ... ok
[INFO] [stdout] test rpc::tests::test_decode_invalid_type ... ok
[INFO] [stdout] test rpc::tests::test_encode_decode_empty_params ... ok
[INFO] [stdout] test event_handler::tests::test_v_cycles_layout_mode ... ok
[INFO] [stdout] test rpc::tests::test_encode_decode_nested_params ... ok
[INFO] [stdout] test rpc::tests::test_encode_decode_request_round_trip ... ok
[INFO] [stdout] test rpc::tests::test_message_type_notification ... ok
[INFO] [stdout] test rpc::tests::test_message_type_request ... ok
[INFO] [stdout] test rpc::tests::test_encode_decode_round_trip ... ok
[INFO] [stdout] test rpc::tests::test_encode_decode_response_round_trip ... ok
[INFO] [stdout] test rpc::tests::test_socket_path_contains_uid ... ok
[INFO] [stdout] test rpc::tests::test_server_client_round_trip ... ok
[INFO] [stdout] test state::tests::test_claudeye_visible_default_false ... ok
[INFO] [stdout] test rpc::tests::test_message_type_response ... ok
[INFO] [stdout] test rpc::tests::test_server_handles_request_response ... ok
[INFO] [stdout] test rpc::tests::test_server_still_handles_notifications_with_handler ... ok
[INFO] [stdout] test state::tests::test_cycle_layout_mode ... ok
[INFO] [stdout] test state::tests::test_claudeye_visible_toggle ... ok
[INFO] [stdout] test state::tests::test_handle_rpc_session_start_unknown_pane ... ok
[INFO] [stdout] test state::tests::test_initial_input_buffer_is_empty ... ok
[INFO] [stdout] test state::tests::test_initial_input_mode_is_normal ... ok
[INFO] [stdout] test state::tests::test_initial_pending_g_is_false ... ok
[INFO] [stdout] test state::tests::test_initial_preview_height_is_zero ... ok
[INFO] [stdout] test state::tests::test_initial_preview_scroll_is_zero ... ok
[INFO] [stdout] test state::tests::test_initial_show_help_is_false ... ok
[INFO] [stdout] test state::tests::test_find_idle_session_for_project_no_idle ... ok
[INFO] [stdout] test state::tests::test_display_title_none_when_both_empty ... ok
[INFO] [stdout] test state::tests::test_handle_rpc_missing_pane_id ... ok
[INFO] [stdout] test state::tests::test_handle_rpc_session_start ... ok
[INFO] [stdout] test state::tests::test_layout_mode_default_main_vertical ... ok
[INFO] [stdout] test state::tests::test_display_title_auto_when_no_manual ... ok
[INFO] [stdout] test state::tests::test_handle_rpc_unknown_method ... ok
[INFO] [stdout] test state::tests::test_git_branch_preserved_on_sync ... ok
[INFO] [stdout] test state::tests::test_find_idle_session_for_project_no_matching_project ... ok
[INFO] [stdout] test state::tests::test_load_historical_plans_skips_scanned_dir ... ok
[INFO] [stdout] test state::tests::test_handle_rpc_status_update_sets_model_display_name ... ok
[INFO] [stdout] test state::tests::test_display_title_manual_over_auto ... ok
[INFO] [stdout] test state::tests::test_load_historical_plans_no_overwrite ... ok
[INFO] [stdout] test state::tests::test_find_idle_session_for_project_picks_longest_idle ... ok
[INFO] [stdout] test state::tests::test_mode_switch_ask_to_auto_edit ... ok
[INFO] [stdout] test state::tests::test_find_idle_session_for_project_returns_idle_session ... ok
[INFO] [stdout] test state::tests::test_mode_switch_ask_to_plan ... ok
[INFO] [stdout] test state::tests::test_filtered_sessions_all_tab ... ok
[INFO] [stdout] test state::tests::test_mode_switch_plan_to_ask ... ok
[INFO] [stdout] test state::tests::test_mode_switch_same_mode_returns_zero ... ok
[INFO] [stdout] test state::tests::test_initial_workspace_deferred_until_sessions_arrive ... ok
[INFO] [stdout] test state::tests::test_initial_workspace_selects_workspace_tab ... ok
[INFO] [stdout] test state::tests::test_initial_workspace_consumed_after_first_rebuild ... ok
[INFO] [stdout] test state::tests::test_mode_switch_auto_edit_to_plan ... ok
[INFO] [stdout] test state::tests::test_filtered_sessions_marked_tab ... ok
[INFO] [stdout] test state::tests::test_marked_tab_fallback_to_all_when_empty ... ok
[INFO] [stdout] test state::tests::test_mark_preserved_on_sync ... ok
[INFO] [stdout] test state::tests::test_own_pane_id_can_be_set ... ok
[INFO] [stdout] test state::tests::test_own_pane_id_default_none ... ok
[INFO] [stdout] test state::tests::test_parse_numstat_binary ... ok
[INFO] [stdout] test state::tests::test_parse_numstat_empty ... ok
[INFO] [stdout] test state::tests::test_marked_tab_position_after_all ... ok
[INFO] [stdout] test state::tests::test_new_session_has_no_context_percent ... ok
[INFO] [stdout] test state::tests::test_mode_switch_unknown_target_returns_zero ... ok
[INFO] [stdout] test state::tests::test_marked_sessions_empty_when_none_marked ... ok
[INFO] [stdout] test state::tests::test_parse_numstat_normal ... ok
[INFO] [stdout] test state::tests::test_new_session_is_not_marked ... ok
[INFO] [stdout] test state::tests::test_plans_dedup_by_slug ... ok
[INFO] [stdout] test state::tests::test_plans_initially_empty ... ok
[INFO] [stdout] test state::tests::test_preview_contents_default_empty ... ok
[INFO] [stdout] test state::tests::test_preview_entry_without_title ... ok
[INFO] [stdout] test state::tests::test_preview_entry_with_title ... ok
[INFO] [stdout] test state::tests::test_initial_workspace_fallback_to_all_when_not_found ... ok
[INFO] [stdout] test state::tests::test_filtered_sessions_project_tab ... ok
[INFO] [stdout] test state::tests::test_pending_rpc_applied_after_sync ... ok
[INFO] [stdout] test state::tests::test_new_session_has_no_rpc_fields ... ok
[INFO] [stdout] test state::tests::test_marked_tab_appears_when_sessions_marked ... ok
[INFO] [stdout] test state::tests::test_reset_preview_scroll ... ok
[INFO] [stdout] test state::tests::test_scanned_project_dirs_dedup ... ok
[INFO] [stdout] test state::tests::test_rpc_before_session_is_buffered ... ok
[INFO] [stdout] test state::tests::test_scroll_preview_down ... ok
[INFO] [stdout] test state::tests::test_scroll_preview_up ... ok
[INFO] [stdout] test state::tests::test_scroll_preview_down_clamps_to_zero ... ok
[INFO] [stdout] test state::tests::test_scroll_preview_up_clamps_to_max ... ok
[INFO] [stdout] test state::tests::test_scroll_preview_up_saturating ... ok
[INFO] [stdout] test state::tests::test_refresh_auto_titles_reads_when_mtime_is_none ... ok
[INFO] [stdout] test state::tests::test_prev_selected_index_clamped_on_session_removal ... ok
[INFO] [stdout] test state::tests::test_new_session_has_no_title ... ok
[INFO] [stdout] test state::tests::test_new_session_has_cwd ... ok
[INFO] [stdout] test state::tests::test_select_next_resets_scroll ... ok
[INFO] [stdout] test state::tests::test_pending_rpc_unmatched_retained ... ok
[INFO] [stdout] test state::tests::test_select_on_empty ... ok
[INFO] [stdout] test state::tests::test_new_session_has_no_git_branch ... ok
[INFO] [stdout] test state::tests::test_marked_tab_disappears_when_no_marked_sessions ... ok
[INFO] [stdout] test state::tests::test_pane_id_updated_on_sync ... ok
[INFO] [stdout] test state::tests::test_marked_sessions_returns_marked_only ... ok
[INFO] [stdout] test state::tests::test_select_next_on_filtered ... ok
[INFO] [stdout] test state::tests::test_refresh_auto_titles_skips_when_mtime_unchanged ... ok
[INFO] [stdout] test state::tests::test_selected_pane_id ... ok
[INFO] [stdout] test state::tests::test_selected_pane_id_empty ... ok
[INFO] [stdout] test state::tests::test_select_prev_wraps_around ... ok
[INFO] [stdout] test state::tests::test_select_prev_selected_resets_preview_scroll ... ok
[INFO] [stdout] test state::tests::test_selected_session_mut_empty ... ok
[INFO] [stdout] test state::tests::test_select_prev_resets_scroll ... ok
[INFO] [stdout] test state::tests::test_send_text_does_not_enter_pending_rpc ... ok
[INFO] [stdout] test state::tests::test_select_prev_selected_noop_when_none ... ok
[INFO] [stdout] test state::tests::test_select_prev_saves_prev_selected ... ok
[INFO] [stdout] test state::tests::test_send_text_no_selected_session_does_not_panic ... ok
[INFO] [stdout] test state::tests::test_send_text_with_project_does_not_enter_pending_rpc ... ok
[INFO] [stdout] test state::tests::test_serialize_plans_empty ... ok
[INFO] [stdout] test state::tests::test_serialize_plans_filter_by_project ... ok
[INFO] [stdout] test state::tests::test_select_next_saves_prev_selected ... ok
[INFO] [stdout] test state::tests::test_serialize_plans_filter_no_match ... ok
[INFO] [stdout] test state::tests::test_serialize_plans_with_entries ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_empty ... ok
[INFO] [stdout] test state::tests::test_selected_session ... ok
[INFO] [stdout] test state::tests::test_select_prev_selected_toggles ... ok
[INFO] [stdout] test state::tests::test_send_text_no_execute_works_without_project ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_visible_true ... ok
[INFO] [stdout] test state::tests::test_send_text_with_project_no_idle_session_does_not_panic ... ok
[INFO] [stdout] test state::tests::test_refresh_auto_titles_re_reads_after_file_change ... ok
[INFO] [stdout] test state::tests::test_send_text_missing_text_does_not_panic ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_one ... ok
[INFO] [stdout] test state::tests::test_select_next_wraps_around ... ok
[INFO] [stdout] test state::tests::test_session_start_resets_jsonl_mtime ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_filter_by_project_no_match ... ok
[INFO] [stdout] test state::tests::test_status_update_context_percent_zero_when_no_used_percentage ... ok
[INFO] [stdout] test state::tests::test_selected_session_mut ... ok
[INFO] [stdout] test state::tests::test_select_prev_selected_swaps_indices ... ok
[INFO] [stdout] test state::tests::test_status_update_does_not_overwrite_existing_session_id ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_waiting_for_approval_state ... ok
[INFO] [stdout] test state::tests::test_status_update_overwrites_session_start_model ... ok
[INFO] [stdout] test state::tests::test_selected_index_fixed_on_removal ... ok
[INFO] [stdout] test state::tests::test_status_update_sets_context_percent ... ok
[INFO] [stdout] test state::tests::test_status_update_first_session_id_resets_jsonl_mtime ... ok
[INFO] [stdout] test state::tests::test_status_update_sets_session_id ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_filtered_by_tab ... ok
[INFO] [stdout] test state::tests::test_sync_excludes_own_pid ... ok
[INFO] [stdout] test state::tests::test_tab_state_next_prev_wrap ... ok
[INFO] [stdout] test state::tests::test_sync_detects_removed_sessions ... ok
[INFO] [stdout] test state::tests::test_status_update_without_model_is_noop ... ok
[INFO] [stdout] test state::tests::test_tab_state_initial ... ok
[INFO] [stdout] test state::tests::test_sync_updates_cwd_and_worktree_when_changed ... ok
[INFO] [stdout] test state::tests::test_sync_detects_new_sessions ... ok
[INFO] [stdout] test state::tests::test_sync_rebuilds_tabs ... ok
[INFO] [stdout] test state::tests::test_toggle_mark_on_empty_does_nothing ... ok
[INFO] [stdout] test state::tests::test_serialize_sessions_filter_by_project_param ... ok
[INFO] [stdout] test state::tests::test_toggle_mark_marks_selected ... ok
[INFO] [stdout] test state::tests::test_toggle_mark_unmarks_marked ... ok
[INFO] [stdout] test state::tests::test_tmux_session_updated_on_pane_id_change ... ok
[INFO] [stdout] test state::tests::test_tab_state_fallback_on_project_disappear ... ok
[INFO] [stdout] test state::tests::test_tab_state_alphabetical_sort ... ok
[INFO] [stdout] test state::tests::test_tmux_session_extracted_from_pane_id ... ok
[INFO] [stdout] test tests::build_claude_args_no_args_no_stdin ... ok
[INFO] [stdout] test tests::build_claude_args_stdin_appended_when_args_present ... ok
[INFO] [stdout] test tests::build_claude_args_with_args ... ok
[INFO] [stdout] test tests::build_claude_args_stdin_no_args ... ok
[INFO] [stdout] test tests::build_tmux_args_with_envs ... ok
[INFO] [stdout] test tests::build_tmux_args_with_envs_and_claude_args ... ok
[INFO] [stdout] test state::tests::test_title_preserved_on_sync ... ok
[INFO] [stdout] test tests::build_tmux_args_no_envs ... ok
[INFO] [stdout] test tests::cli_claude_parses_env_option ... ok
[INFO] [stdout] test tests::validate_env_var_empty_key ... ok
[INFO] [stdout] test tests::validate_env_var_empty_value ... ok
[INFO] [stdout] test state::tests::test_tab_state_dedup ... ok
[INFO] [stdout] test tests::cli_claude_rejects_invalid_env ... ok
[INFO] [stdout] test tests::validate_env_var_no_equals ... ok
[INFO] [stdout] test tests::cli_claude_parses_multiple_env_options ... ok
[INFO] [stdout] test ui::tests::test_ansi_to_text_plain ... ok
[INFO] [stdout] test tests::validate_env_var_valid ... ok
[INFO] [stdout] test state::tests::test_workspace_filter_returns_matching_sessions ... ok
[INFO] [stdout] test ui::tests::test_color_to_rgb ... ok
[INFO] [stdout] test ui::tests::test_ansi_to_text_with_colors ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_horizontal_1_pane ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_vertical_1_pane ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_vertical_auto_width_clamp_upper ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_horizontal_3_panes ... ok
[INFO] [stdout] test ui::tests::test_compute_cursor_pos_none_returns_none ... ok
[INFO] [stdout] test ui::tests::test_compute_cursor_pos_with_scroll ... ok
[INFO] [stdout] test ui::tests::test_compute_cursor_pos_with_position ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_boundary_exact ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_boundary_two_panes ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_horizontal_fit ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_narrow_screen ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_vertical_auto_width_clamp_lower ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_single_pane ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_vertical_3_panes ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_wide_screen ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_zero_panes ... ok
[INFO] [stdout] test ui::tests::test_footer_input_mode_has_insert_indicator ... ok
[INFO] [stdout] test ui::tests::test_footer_even_vertical_next_is_main_h ... ok
[INFO] [stdout] test ui::tests::test_footer_input_mode_starts_with_app_name ... ok
[INFO] [stdout] test ui::tests::test_footer_main_horizontal_label_and_next ... ok
[INFO] [stdout] test ui::tests::test_footer_no_update_available ... ok
[INFO] [stdout] test ui::tests::test_footer_main_vertical_label_and_next ... ok
[INFO] [stdout] test ui::tests::test_footer_normal_mode_contains_claudeye_key ... ok
[INFO] [stdout] test ui::tests::test_footer_broadcast_mode_has_broadcast_indicator ... ok
[INFO] [stdout] test ui::tests::test_footer_normal_mode_contains_scroll_keys ... ok
[INFO] [stdout] test ui::tests::test_footer_normal_mode_has_no_mode_indicator ... ok
[INFO] [stdout] test ui::tests::test_footer_normal_mode_starts_with_app_name ... ok
[INFO] [stdout] test state::tests::test_workspace_tab_order ... ok
[INFO] [stdout] test ui::tests::test_footer_scroll_mode_has_scroll_indicator ... ok
[INFO] [stdout] test ui::tests::test_footer_scroll_mode_starts_with_app_name ... ok
[INFO] [stdout] test ui::tests::test_footer_spans_broadcast_mode_not_empty ... ok
[INFO] [stdout] test ui::tests::test_footer_spans_input_mode_not_empty ... ok
[INFO] [stdout] test ui::tests::test_footer_title_mode_has_title_edit_indicator ... ok
[INFO] [stdout] test ui::tests::test_footer_title_mode_starts_with_app_name ... ok
[INFO] [stdout] test ui::tests::test_footer_update_available ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_boundary_3599s ... ok
[INFO] [stdout] test ui::tests::test_compute_cell_areas_main_vertical_auto_width_mid ... ok
[INFO] [stdout] test ui::tests::test_compute_grid_grid_layout ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_boundary_59s ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_boundary_3600s ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_boundary_60s ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_hours ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_capped_at_99h ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_minutes ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_branch ... ok
[INFO] [stdout] test ui::tests::test_footer_normal_mode_contains_broadcast_key ... ok
[INFO] [stdout] test ui::tests::test_footer_scroll_mode_contains_keybindings ... ok
[INFO] [stdout] test ui::tests::test_footer_normal_mode_contains_help_key ... ok
[INFO] [stdout] test state::tests::test_workspace_tab_selection_maintained ... ok
[INFO] [stdout] test state::tests::test_tab_state_selection_maintained_on_rebuild ... ok
[INFO] [stdout] test ui::tests::test_format_elapsed_seconds ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_branch_and_worktree ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_empty_title ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_number_and_branch ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_number ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_number_beyond_max ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_title ... ok
[INFO] [stdout] test state::tests::test_workspace_tabs_not_shown_with_one_session ... ok
[INFO] [stdout] test ui::tests::test_format_title_with_worktree_only ... ok
[INFO] [stdout] test ui::tests::test_grid_row_items_5_panes_3_cols ... ok
[INFO] [stdout] test ui::tests::test_grid_row_items_single_column ... ok
[INFO] [stdout] test ui::tests::test_grid_row_items_remainder ... ok
[INFO] [stdout] test ui::tests::test_permission_mode_icon_ask ... ok
[INFO] [stdout] test ui::tests::test_grid_row_items_even_split ... ok
[INFO] [stdout] test ui::tests::test_grid_row_items_all_in_one_row ... ok
[INFO] [stdout] test state::tests::test_sync_detects_state_change ... ok
[INFO] [stdout] test ui::tests::test_permission_mode_icon_auto_edit ... ok
[INFO] [stdout] test state::tests::test_tab_state_rebuild_from_sessions ... ok
[INFO] [stdout] test state::tests::test_workspace_tabs_appear_with_two_sessions ... ok
[INFO] [stdout] test state::tests::test_rpc_fields_preserved_on_sync ... ok
[INFO] [stdout] test ui::tests::test_permission_mode_icon_plan ... ok
[INFO] [stdout] test ui::tests::test_selected_icon_is_not_empty ... ok
[INFO] [stdout] test ui::tests::test_format_title_without_title ... ok
[INFO] [stdout] test ui::tests::test_should_pulse_working ... ok
[INFO] [stdout] test ui::tests::test_pulse_border_color_within_intensity_range ... ok
[INFO] [stdout] test ui::tests::test_state_color ... ok
[INFO] [stdout] test ui::tests::test_state_label ... ok
[INFO] [stdout] test ui::tests::test_should_pulse_idle_not_stale ... ok
[INFO] [stdout] test ui::tests::test_should_pulse_approval ... ok
[INFO] [stdout] test ui::tests::test_pulse_border_color_returns_rgb ... ok
[INFO] [stdout] test update::tests::test_same_version_with_v_prefix ... ok
[INFO] [stdout] test update::tests::test_update_available ... ok
[INFO] [stdout] test ui::tests::test_should_pulse_idle_stale_after_work ... ok
[INFO] [stdout] test update::tests::test_update_available_with_v_prefix ... ok
[INFO] [stdout] test update::tests::test_same_version ... ok
[INFO] [stdout] test ui::tests::test_should_pulse_idle_stale_never_worked ... ok
[INFO] [stdout] test state::tests::test_selected_index_adjusted_on_filter ... ok
[INFO] [stdout] test state::tests::test_refresh_git_info_none_for_non_repo ... ok
[INFO] [stdout] test state::tests::test_refresh_git_info_sets_branch_for_valid_repo ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- state::tests::test_refresh_git_info_sets_branch_for_valid_repo stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'state::tests::test_refresh_git_info_sets_branch_for_valid_repo' (2715) panicked at src/state.rs:1761:9:
[INFO] [stdout] assertion failed: app.sessions[0].git_branch.is_some()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5d0db17a35e1 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5d0db17a35e1 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5d0db17a35e1 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5d0db17a35e1 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5d0db17b922a - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5d0db17b922a - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x5d0db17a804c - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x5d0db17a804c - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x5d0db177f566 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5d0db177f566 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5d0db179a4f9 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5d0db15a90d0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x5d0db15a90d0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5d0db179a6b2 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x5d0db179a6b2 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x5d0db177f644 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:681:13
[INFO] [stdout]   16:     0x5d0db1776c29 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5d0db178020d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x5d0db17b99fc - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5d0db17b99c2 - core[6883ba1bc0fe4ed1]::panicking::panic
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x5d0db14b1781 - crmux[c3668e54528e5c08]::state::tests::test_refresh_git_info_sets_branch_for_valid_repo
[INFO] [stdout]                                at /opt/rustwide/workdir/src/state.rs:1761:9
[INFO] [stdout]   21:     0x5d0db148cd27 - crmux[c3668e54528e5c08]::state::tests::test_refresh_git_info_sets_branch_for_valid_repo::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/state.rs:1752:58
[INFO] [stdout]   22:     0x5d0db156f6c6 - <crmux[c3668e54528e5c08]::state::tests::test_refresh_git_info_sets_branch_for_valid_repo::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5d0db159c40b - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5d0db159c40b - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   25:     0x5d0db15a9a55 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   26:     0x5d0db15a9a55 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   27:     0x5d0db15a9a55 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   28:     0x5d0db15a9a55 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x5d0db15a9a55 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x5d0db15a9a55 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   31:     0x5d0db15a9a55 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   32:     0x5d0db15a4504 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   33:     0x5d0db15a4504 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x5d0db15acba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   35:     0x5d0db15acba2 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   36:     0x5d0db15acba2 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   37:     0x5d0db15acba2 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x5d0db15acba2 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x5d0db15acba2 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   40:     0x5d0db15acba2 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x5d0db17a28ff - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   42:     0x5d0db17a28ff - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   43:     0x7e3c1038aaa4 - <unknown>
[INFO] [stdout]   44:     0x7e3c10417a64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     state::tests::test_refresh_git_info_sets_branch_for_valid_repo
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 426 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.44s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin crmux`
[INFO] running `Command { std: "docker" "inspect" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150", kill_on_drop: false }`
[INFO] [stdout] 133cb0dd5a5b79a29f7ce4b49f88c32cb3b668f76c54ea74cd1673c59b4d6150
