[INFO] fetching crate shell-ai 0.7.1... [INFO] testing shell-ai-0.7.1 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate shell-ai 0.7.1 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate shell-ai 0.7.1 [INFO] finished tweaking crates.io crate shell-ai 0.7.1 [INFO] tweaked toml for crates.io crate shell-ai 0.7.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate shell-ai 0.7.1 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate shell-ai 0.7.1 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "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] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tree_magic_mini v3.2.2 [INFO] [stderr] Downloaded shellexpand v3.1.2 [INFO] [stderr] Downloaded toml v1.1.0+spec-1.1.0 [INFO] [stderr] Downloaded wl-clipboard-rs v0.9.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b4e499f1771e41f9b85bbb91544d342e2f80d3c4e83c1bf496c99ef323828550 [INFO] running `Command { std: "docker" "start" "-a" "b4e499f1771e41f9b85bbb91544d342e2f80d3c4e83c1bf496c99ef323828550", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b4e499f1771e41f9b85bbb91544d342e2f80d3c4e83c1bf496c99ef323828550", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b4e499f1771e41f9b85bbb91544d342e2f80d3c4e83c1bf496c99ef323828550", kill_on_drop: false }` [INFO] [stdout] b4e499f1771e41f9b85bbb91544d342e2f80d3c4e83c1bf496c99ef323828550 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3dff76f4be7d301b257933176177c40f54fa55365059012eb7d7b30b98b9debe [INFO] running `Command { std: "docker" "start" "-a" "3dff76f4be7d301b257933176177c40f54fa55365059012eb7d7b30b98b9debe", kill_on_drop: false }` [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling wayland-sys v0.31.11 [INFO] [stderr] Compiling quick-xml v0.39.2 [INFO] [stderr] Compiling wayland-client v0.31.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling unicode-segmentation v1.13.2 [INFO] [stderr] Compiling fixedbitset v0.5.7 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling pxfm v0.1.28 [INFO] [stderr] Compiling cc v1.2.58 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Compiling os_pipe v1.2.3 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling litrs v1.0.0 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling x11rb-protocol v0.13.2 [INFO] [stderr] Compiling winnow v1.0.1 [INFO] [stderr] Compiling petgraph v0.8.3 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling toml_parser v1.1.0+spec-1.1.0 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling wayland-scanner v0.31.10 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling document-features v0.2.12 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling ureq-proto v0.6.0 [INFO] [stderr] Compiling strum_macros v0.28.0 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling toml_datetime v1.1.0+spec-1.1.0 [INFO] [stderr] Compiling serde_spanned v1.1.0 [INFO] [stderr] Compiling shell-ai v0.7.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling utf8-zero v0.8.1 [INFO] [stderr] Compiling toml_writer v1.1.0+spec-1.1.0 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling shellexpand v3.1.2 [INFO] [stderr] Compiling wayland-backend v0.3.15 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling toml v1.1.0+spec-1.1.0 [INFO] [stderr] Compiling clap_complete v4.6.0 [INFO] [stderr] Compiling moxcms v0.8.1 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling libloading v0.9.0 [INFO] [stderr] Compiling colored v3.1.1 [INFO] [stderr] Compiling strum v0.28.0 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling tree_magic_mini v3.2.2 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling gethostname v1.1.0 [INFO] [stderr] Compiling crossterm v0.29.0 [INFO] [stderr] Compiling x11rb v0.13.2 [INFO] [stderr] Compiling rustls-webpki v0.103.10 [INFO] [stderr] Compiling image v0.25.10 [INFO] [stderr] Compiling wayland-protocols v0.32.12 [INFO] [stderr] Compiling ureq v3.3.0 [INFO] [stderr] Compiling wayland-protocols-wlr v0.3.12 [INFO] [stderr] Compiling wl-clipboard-rs v0.9.3 [INFO] [stderr] Compiling arboard v3.6.1 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 49.69s [INFO] running `Command { std: "docker" "inspect" "3dff76f4be7d301b257933176177c40f54fa55365059012eb7d7b30b98b9debe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3dff76f4be7d301b257933176177c40f54fa55365059012eb7d7b30b98b9debe", kill_on_drop: false }` [INFO] [stdout] 3dff76f4be7d301b257933176177c40f54fa55365059012eb7d7b30b98b9debe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d33f9a4154d944235861c9e0ffe2ea8397f020bb8c608bb8b9540a69953d0a97 [INFO] running `Command { std: "docker" "start" "-a" "d33f9a4154d944235861c9e0ffe2ea8397f020bb8c608bb8b9540a69953d0a97", kill_on_drop: false }` [INFO] [stderr] Compiling shell-ai v0.7.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 6.39s [INFO] running `Command { std: "docker" "inspect" "d33f9a4154d944235861c9e0ffe2ea8397f020bb8c608bb8b9540a69953d0a97", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d33f9a4154d944235861c9e0ffe2ea8397f020bb8c608bb8b9540a69953d0a97", kill_on_drop: false }` [INFO] [stdout] d33f9a4154d944235861c9e0ffe2ea8397f020bb8c608bb8b9540a69953d0a97 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0be98acb848be1c1cc873769abf29a2f9ad000e553ab39e2368f1b65a08bf947 [INFO] running `Command { std: "docker" "start" "-a" "0be98acb848be1c1cc873769abf29a2f9ad000e553ab39e2368f1b65a08bf947", kill_on_drop: false }` [INFO] [stderr] Compiling shell-ai v0.7.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 4.48s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/shell_ai-b954d62faa0b4526) [INFO] [stdout] [INFO] [stdout] running 163 tests [INFO] [stdout] test backend::correction::tests::test_abort_on_markdown_fences_skips_remaining_chunks ... ok [INFO] [stdout] test backend::correction::tests::test_all_retries_exhausted ... ok [INFO] [stdout] test backend::correction::tests::test_first_attempt_success ... ok [INFO] [stdout] test backend::correction::tests::test_backend_error_propagates_immediately ... ok [INFO] [stdout] test backend::correction::tests::test_schema_violation_corrected_on_retry ... ok [INFO] [stdout] test backend::correction::tests::test_validator_accepts_leading_whitespace_then_brace ... ok [INFO] [stdout] test backend::correction::tests::test_markdown_fences_corrected_on_retry ... ok [INFO] [stdout] test backend::correction::tests::test_no_schema_skips_validation ... ok [INFO] [stdout] test backend::correction::tests::test_validator_none_for_string_schema ... ok [INFO] [stdout] test backend::correction::tests::test_validator_rejects_array_when_object_expected ... ok [INFO] [stdout] test backend::correction::tests::test_validator_none_for_no_type ... ok [INFO] [stdout] test backend::correction::tests::test_callback_receives_attempt_metadata ... ok [INFO] [stdout] test backend::correction::tests::test_validator_rejects_markdown_fences ... ok [INFO] [stdout] test backend::correction::tests::test_valid_prefix_streams_normally ... ok [INFO] [stdout] test backend::correction::tests::test_validator_rejects_prose ... ok [INFO] [stdout] test backend::correction::tests::test_zero_retries_fails_immediately ... ok [INFO] [stdout] test backend::openai::tests::test_build_payload_no_system_messages ... ok [INFO] [stdout] test backend::correction::tests::test_validator_accepts_array_root ... ok [INFO] [stdout] test config::tests::test_merge_earlier_values_survive_when_not_overridden ... ok [INFO] [stdout] test backend::openai::tests::test_build_payload_single_system_message ... ok [INFO] [stdout] test config::tests::test_remap_env_style_beats_toml_style ... ok [INFO] [stdout] test config::tests::test_remap_toml_style_passthrough ... ok [INFO] [stdout] test config::tests::test_remap_unknown_keys_preserved ... ok [INFO] [stdout] test config::tests::test_merge_later_layer_overrides_earlier ... ok [INFO] [stdout] test backend::correction::tests::test_validator_accepts_valid_object_start ... ok [INFO] [stdout] test preview::tests::test_append_chunk_alternating_types ... ok [INFO] [stdout] test config::tests::test_full_precedence_order ... ok [INFO] [stdout] test backend::correction::tests::test_history_stacks_across_retries ... ok [INFO] [stdout] test config::tests::test_remap_non_object_passthrough ... ok [INFO] [stdout] test config::tests::test_remap_env_alias ... ok [INFO] [stdout] test preview::tests::test_append_chunk_same_type_merges ... ok [INFO] [stdout] test preview::tests::test_compact_truncation_multi_digit_slot ... ok [INFO] [stdout] test config::tests::test_remap_env_style_keys ... ok [INFO] [stdout] test preview::tests::test_append_chunk_different_type_creates_new ... ok [INFO] [stdout] test preview::tests::test_display_mode_full_small_content ... ok [INFO] [stdout] test preview::tests::test_display_mode_minimal_tiny_terminal ... ok [INFO] [stdout] test preview::tests::test_compact_truncation_preserves_prefix ... ok [INFO] [stdout] test preview::tests::test_display_width_ansi_and_unicode ... ok [INFO] [stdout] test preview::tests::test_append_chunk_to_empty ... ok [INFO] [stdout] test preview::tests::test_display_mode_multi_digit_slots ... ok [INFO] [stdout] test preview::tests::test_display_width_ascii ... ok [INFO] [stdout] test preview::tests::test_display_mode_compact_medium_content ... ok [INFO] [stdout] test preview::tests::test_display_width_empty ... ok [INFO] [stdout] test preview::tests::test_complete_slot_renders_char_count ... ok [INFO] [stdout] test preview::tests::test_display_width_mixed ... ok [INFO] [stdout] test preview::tests::test_display_width_unicode_cjk ... ok [INFO] [stdout] test preview::tests::test_display_width_emoji ... ok [INFO] [stdout] test preview::tests::test_display_width_with_ansi ... ok [INFO] [stdout] test preview::tests::test_line_count_matches_rendering ... ok [INFO] [stdout] test preview::tests::test_render_explain_tiny_terminal_wraps_header ... ok [INFO] [stdout] test preview::tests::test_render_explain_to_buffer_empty ... ok [INFO] [stdout] test preview::tests::test_render_suggest_tiny_terminal_wraps_header ... ok [INFO] [stdout] test preview::tests::test_render_explain_to_buffer_with_content ... ok [INFO] [stdout] test preview::tests::test_slot_content_extraction ... ok [INFO] [stdout] test preview::tests::test_slot_prefix_all_states ... ok [INFO] [stdout] test preview::tests::test_render_suggest_to_buffer ... ok [INFO] [stdout] test preview::tests::test_slot_prefix_multi_digit_index ... ok [INFO] [stdout] test preview::tests::test_slot_state_complete ... ok [INFO] [stdout] test preview::tests::test_slot_state_error ... ok [INFO] [stdout] test preview::tests::test_slot_state_retrying ... ok [INFO] [stdout] test preview::tests::test_slot_prefix_width_accounts_for_multi_digit ... ok [INFO] [stdout] test preview::tests::test_slot_state_waiting ... ok [INFO] [stdout] test preview::tests::test_slot_state_pending ... ok [INFO] [stdout] test preview::tests::test_streaming_slot_renders_content ... ok [INFO] [stdout] test preview::tests::test_slot_state_streaming ... ok [INFO] [stdout] test preview::tests::test_strip_ansi_256_color ... ok [INFO] [stdout] test preview::tests::test_strip_ansi_simple_color ... ok [INFO] [stdout] test preview::tests::test_truncate_string_exact ... ok [INFO] [stdout] test preview::tests::test_truncate_string_exceeds ... ok [INFO] [stdout] test preview::tests::test_truncate_string_fits ... ok [INFO] [stdout] test preview::tests::test_truncate_string_very_short_max ... ok [INFO] [stdout] test preview::tests::test_wrapped_line_count_trailing_newline ... ok [INFO] [stdout] test preview::tests::test_wrapped_line_count_with_ansi ... ok [INFO] [stdout] test preview::tests::test_truncate_string_unicode ... ok [INFO] [stdout] test preview::tests::test_strip_ansi_no_escapes ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_double_width ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_empty ... ok [INFO] [stdout] test preview::tests::test_strip_ansi_multiple_escapes ... ok [INFO] [stdout] test preview::tests::test_render_explain_truncation_preserves_separators ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_exact_width ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_unicode_wrap ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_newline_and_wrap ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_with_newlines ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_zero_width ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_move_to ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_explicit_newline_advances_row ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_style ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_wide_char ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_short ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_write_str ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_write_wraps_without_newline ... ok [INFO] [stdout] test render::diff::tests::test_diff_row_cells_contiguous_change ... ok [INFO] [stdout] test render::diff::tests::test_diff_row_cells_empty_vs_space ... ok [INFO] [stdout] test render::diff::tests::test_diff_row_cells_erased ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_wide_char_wrap ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_write_char ... ok [INFO] [stdout] test render::diff::tests::test_diff_row_cells_single_change ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_overflow_by_one ... ok [INFO] [stdout] test render::diff::tests::test_diff_row_cells_unchanged ... ok [INFO] [stdout] test render::diff::tests::test_diff_row_cells_two_spans ... ok [INFO] [stdout] test render::buffer::tests::test_buffer_new ... ok [INFO] [stdout] test render::terminal::tests::test_emit_cell_span_empty_cells_use_cuf ... ok [INFO] [stdout] test render::terminal::tests::test_emit_cell_span_mixed_chars_and_empty ... ok [INFO] [stdout] test render::terminal::tests::test_emit_cell_span_single_char ... ok [INFO] [stdout] test render::region::tests::test_region_new ... ok [INFO] [stdout] test preview::tests::test_wrapped_lines_width_one ... ok [INFO] [stdout] test render::terminal::tests::test_emit_clear_excess_lines_shrinks_frame ... ok [INFO] [stdout] test render::terminal::tests::test_emit_move_to_down ... ok [INFO] [stdout] test render::terminal::tests::test_emit_move_to_same_row_forward ... ok [INFO] [stdout] test render::terminal::tests::test_emit_reset ... ok [INFO] [stdout] test render::terminal::tests::test_emit_style_color ... ok [INFO] [stdout] test render::terminal::tests::test_full_row_repaint_wrapping ... ok [INFO] [stdout] test render::terminal::tests::test_emit_move_to_same_row_no_move ... ok [INFO] [stdout] test render::terminal::tests::test_row_wraps ... ok [INFO] [stdout] test render::terminal::tests::test_emit_style_dim ... ok [INFO] [stdout] test render::tests::test_cell_default ... ok [INFO] [stdout] test render::terminal::tests::test_renderer_new ... ok [INFO] [stdout] test render::tests::test_cell_continuation ... ok [INFO] [stdout] test render::tests::test_row_visual_eq ... ok [INFO] [stdout] test render::terminal::tests::test_emit_move_to_up ... ok [INFO] [stdout] test shimmer::tests::test_row_diff_skips_unchanged ... ok [INFO] [stdout] test shimmer::tests::test_shell_escape_bash ... ok [INFO] [stdout] test shimmer::tests::test_measure_display_ascii ... ok [INFO] [stdout] test shimmer::tests::test_row_to_ansi_contains_bsu_esu ... ok [INFO] [stdout] test shimmer::tests::test_measure_display_wide ... ok [INFO] [stdout] test shimmer::tests::test_truncate_to_cols ... ok [INFO] [stdout] test shimmer::tests::test_shell_escape_powershell ... ok [INFO] [stdout] test render::tests::test_style_default ... ok [INFO] [stdout] test ui::tests::test_lines_needed_wide_chars ... ok [INFO] [stdout] test shimmer::tests::test_render_frame_to_buffer_basic ... ok [INFO] [stdout] test ui::tests::test_lines_needed_with_prefix_exact_fit ... ok [INFO] [stdout] test ui::tests::test_char_to_byte_ascii ... ok [INFO] [stdout] test ui::tests::test_char_to_byte_multibyte ... ok [INFO] [stdout] test ui::tests::test_lines_needed_ascii_exact_fit ... ok [INFO] [stdout] test ui::tests::test_lines_needed_ascii_one_over ... ok [INFO] [stdout] test ui::tests::test_char_to_byte_past_end ... ok [INFO] [stdout] test ui::tests::test_lines_needed_utf8_exact_fit ... ok [INFO] [stdout] test ui::tests::test_lines_needed_emoji ... ok [INFO] [stdout] test ui::tests::test_lines_needed_with_prefix_utf8_exact_fit ... ok [INFO] [stdout] test render::tests::test_style_builders ... ok [INFO] [stdout] test render::tests::test_row_new ... ok [INFO] [stdout] test ui::tests::test_multiline_content_rows_includes_cursor_line ... ok [INFO] [stdout] test ui::tests::test_multiline_cursor_at_exact_row_boundary ... ok [INFO] [stdout] test ui::tests::test_multiline_cursor_at_start ... ok [INFO] [stdout] test ui::tests::test_multiline_cursor_in_middle ... ok [INFO] [stdout] test ui::tests::test_multiline_empty_input ... ok [INFO] [stdout] test ui::tests::test_multiline_cursor_on_wrapped_line ... ok [INFO] [stdout] test ui::tests::test_multiline_short_input_cursor_at_end ... ok [INFO] [stdout] test ui::tests::test_multiline_overflow_detected ... ok [INFO] [stdout] test ui::tests::test_multiline_wide_chars ... ok [INFO] [stdout] test ui::tests::test_multiline_wraps_to_second_line ... ok [INFO] [stdout] test ui::tests::test_scroll_cursor_at_end_no_right_indicator ... ok [INFO] [stdout] test ui::tests::test_multiline_exact_fit_no_overflow ... ok [INFO] [stdout] test ui::tests::test_scroll_cursor_at_start ... ok [INFO] [stdout] test ui::tests::test_scroll_short_input_no_scrolling ... ok [INFO] [stdout] test ui::tests::test_scroll_cursor_reserved_cell ... ok [INFO] [stdout] test ui::tests::test_scroll_cursor_at_start_no_left_indicator ... ok [INFO] [stdout] test ui::tests::test_multiline_wide_char_wraps_at_edge ... ok [INFO] [stdout] test ui::tests::test_scroll_cursor_within_terminal_width ... ok [INFO] [stdout] test ui::tests::test_scroll_wide_chars ... ok [INFO] [stdout] test ui::tests::test_scroll_long_input_has_indicators ... ok [INFO] [stdout] test backend::openai::tests::test_build_payload_merges_system_messages ... ok [INFO] [stdout] test shimmer::tests::test_cycle_frame_count ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 163 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "0be98acb848be1c1cc873769abf29a2f9ad000e553ab39e2368f1b65a08bf947", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0be98acb848be1c1cc873769abf29a2f9ad000e553ab39e2368f1b65a08bf947", kill_on_drop: false }` [INFO] [stdout] 0be98acb848be1c1cc873769abf29a2f9ad000e553ab39e2368f1b65a08bf947