[INFO] fetching crate sac-cli 0.1.0...
[INFO] testing sac-cli-0.1.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate sac-cli 0.1.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate sac-cli 0.1.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate sac-cli 0.1.0
[INFO] tweaked toml for crates.io crate sac-cli 0.1.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate sac-cli 0.1.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate sac-cli 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42
[INFO] running `Command { std: "docker" "start" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", 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" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", 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" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling aws-lc-rs v1.16.2
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling wayland-sys v0.31.11
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling lru v0.16.3
[INFO] [stderr]    Compiling quick-xml v0.39.2
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling wayland-client v0.31.14
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling nix v0.31.2
[INFO] [stderr]    Compiling aws-lc-sys v0.39.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling wayland-backend v0.3.15
[INFO] [stderr]    Compiling wayland-scanner v0.31.10
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling iri-string v0.7.11
[INFO] [stderr]    Compiling petgraph v0.8.3
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling ratatui-core v0.1.0
[INFO] [stderr]    Compiling ioctl-rs v0.1.6
[INFO] [stderr]    Compiling serial-core v0.4.0
[INFO] [stderr]    Compiling termios v0.2.2
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling wayland-protocols v0.32.12
[INFO] [stderr]    Compiling ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.0
[INFO] [stderr]    Compiling tree_magic_mini v3.2.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serial-unix v0.4.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling blake3 v1.8.5
[INFO] [stderr]    Compiling os_pipe v1.2.3
[INFO] [stderr]    Compiling rmcp v1.3.0
[INFO] [stderr]    Compiling x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling process-wrap v9.1.0
[INFO] [stderr]    Compiling wayland-protocols-wlr v0.3.12
[INFO] [stderr]    Compiling nix v0.25.1
[INFO] [stderr]    Compiling wl-clipboard-rs v0.9.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling serial v0.4.0
[INFO] [stderr]    Compiling filedescriptor v0.8.3
[INFO] [stderr]    Compiling ratatui-macros v0.7.0
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling sse-stream v0.2.1
[INFO] [stderr]    Compiling x11rb v0.13.2
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling chunked_transfer v1.5.0
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling arrayref v0.3.9
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling arboard v3.6.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling portable-pty v0.8.1
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling tiny_http v0.12.0
[INFO] [stderr]    Compiling rand v0.10.1
[INFO] [stderr]    Compiling ratatui v0.30.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling ratatui-textarea v0.8.0
[INFO] [stderr]    Compiling webbrowser v1.2.1
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.10
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling sac-cli v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", 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" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling sac-cli v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 18.32s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", 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" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/sac-cli/0c68426231bb89a1/out/sac-0c68426231bb89a1)
[INFO] [stdout] 
[INFO] [stdout] running 247 tests
[INFO] [stdout] test agent::tests::preview_handles_box_table_prompt ... ok
[INFO] [stdout] test agent::tests::preview_truncates_on_utf8_boundary ... ok
[INFO] [stdout] test agent::tests::exec_command_result_preview_uses_output_field ... ok
[INFO] [stdout] test agent::tests::exec_command_result_preview_includes_nonzero_exit ... ok
[INFO] [stdout] test agent::tests::tool_args_detail_is_larger_than_preview_but_bounded ... ok
[INFO] [stdout] test agents_md::tests::non_git_scope_walks_parent_to_child_without_git_root ... ignored
[INFO] [stdout] test agents_md::tests::empty_override_falls_back_to_agents_md ... ok
[INFO] [stdout] test agents_md::tests::truncation_preserves_order_until_limit ... ok
[INFO] [stdout] test cli::tests::config_presence_summary_masks_api_key_value ... ok
[INFO] [stdout] test agents_md::tests::project_fallback_filenames_are_respected ... ok
[INFO] [stdout] test agents_md::tests::git_file_marks_project_root ... ok
[INFO] [stdout] test agent::tests::test_agent_creation ... ok
[INFO] [stdout] test agent::tests::worker_surfaces_skills_but_orchestrator_does_not ... ok
[INFO] [stdout] test cli::tests::model_overrides_include_config_api_key ... ok
[INFO] [stdout] test cli::tests::parse_compact_flag_uses_run_ui_args ... ok
[INFO] [stdout] test cli::tests::parse_config_command_uses_config_cli ... ok
[INFO] [stdout] test cli::tests::parse_codex_auth_command_uses_codex_auth_cli ... ok
[INFO] [stdout] test cli::tests::parse_hidden_worker_command_uses_managed_worker_cli ... ok
[INFO] [stdout] test cli::tests::parse_resume_command_uses_resume_cli ... ok
[INFO] [stdout] test cli::tests::parse_resume_backend_flag_uses_resume_model_args ... ok
[INFO] [stdout] test cli::tests::parse_resume_command_without_id_uses_resume_picker_cli ... ok
[INFO] [stdout] test cli::tests::parse_upgrade_command_uses_upgrade_cli ... ok
[INFO] [stdout] test cli::tests::parse_resume_compact_flag_uses_resume_ui_args ... ok
[INFO] [stdout] test cli::tests::managed_worker_builds_user_messages_from_self_and_source_threads ... ok
[INFO] [stdout] test agents_md::tests::loads_global_and_project_files_in_order ... ok
[INFO] [stdout] test cli::tests::model_overrides_prefer_cli_then_config_then_env ... ok
[INFO] [stdout] test cli::tests::current_log_path_uses_sac_home_layout ... ok
[INFO] [stdout] test cli::tests::sample_config_mentions_supported_model_secret_fields ... ok
[INFO] [stdout] test cli::tests::sandbox_gpu_all_maps_to_nvidia_cdi_device ... ok
[INFO] [stdout] test cli::tests::sandbox_image_config_is_default_not_enablement ... ok
[INFO] [stdout] test cli::tests::ui_config_sets_default_and_cli_overrides ... ok
[INFO] [stdout] test cli::tests::worker_timeout_reads_config_default ... ok
[INFO] [stdout] test cli::tests::workspace_dir_from_explicit_mount_uses_workspace_guest_mapping ... ok
[INFO] [stdout] test events::tests::decode_prefixed_event_ignores_plain_lines ... ok
[INFO] [stdout] test events::tests::decode_prefixed_thread_spawned_round_trip ... ok
[INFO] [stdout] test events::tests::decode_prefixed_event_round_trip ... ok
[INFO] [stdout] test events::tests::worker_stderr_sink_is_prefixed ... ok
[INFO] [stdout] test cli::tests::resume_picker_uses_explicit_backend_override ... ok
[INFO] [stdout] test logging::tests::prune_logs_older_than_removes_stale_logs_but_keeps_current ... ok
[INFO] [stdout] test logging::tests::prune_old_logs_keeps_current_and_newest_files ... ok
[INFO] [stdout] test logging::tests::rotate_current_log_if_too_large_renames_file ... ok
[INFO] [stdout] test mcp::tests::allocate_tool_name_suffixes_collisions ... ok
[INFO] [stdout] test cli::tests::resume_config_restores_messages_and_cwd ... ok
[INFO] [stdout] test cli::tests::run_config_cli_init_show_and_reload_round_trip ... ok
[INFO] [stdout] test mcp::tests::sanitize_identifier_collapses_symbols ... ok
[INFO] [stdout] test mcp::tests::tool_definition_uses_namespaced_name ... ok
[INFO] [stdout] test model::chatgpt_codex::tests::builds_codex_responses_stream_request ... ok
[INFO] [stdout] test model::chatgpt_codex::tests::extracts_account_id_from_nested_jwt_claim ... ok
[INFO] [stdout] test cli::tests::sac_config_loads_model_api_key ... ok
[INFO] [stdout] test model::chatgpt_codex::tests::parses_codex_sse_final_response ... ok
[INFO] [stdout] test model::chatgpt_codex::tests::resolves_codex_responses_urls ... ok
[INFO] [stdout] test cli::tests::sac_config_loads_new_sections_alongside_existing_mcp ... ok
[INFO] [stdout] test cli::upgrade::tests::script_url_uses_defaults_and_env_overrides ... ok
[INFO] [stdout] test model::tests::deepseek_chat_request_enables_max_thinking_and_preserves_reasoning ... ok
[INFO] [stdout] test logging::tests::append_test_log_line_creates_and_writes_to_log_file ... ok
[INFO] [stdout] test model::tests::detects_backend_from_url ... ok
[INFO] [stdout] test model::tests::parses_deepseek_chat_output ... ok
[INFO] [stdout] test model::tests::parses_openai_responses_output ... ok
[INFO] [stdout] test model::tests::responses_input_items_expand_reasoning_and_tool_state ... ok
[INFO] [stdout] test logging::tests::list_log_files_and_tail_current_log_lines_work ... ok
[INFO] [stdout] test mcp::tests::env_expansion_replaces_placeholders ... ok
[INFO] [stdout] test model::usage::tests::chat_usage_extracts_cached_tokens ... ok
[INFO] [stdout] test model::usage::tests::chat_usage_no_cached_tokens ... ok
[INFO] [stdout] test mcp::tests::invalid_global_config_disables_mcp_instead_of_failing ... ok
[INFO] [stdout] test model::tests::config_api_key_beats_standard_env_api_key ... ok
[INFO] [stdout] test model::usage::tests::responses_usage_extracts_cached_tokens ... ok
[INFO] [stdout] test model::tests::config_api_key_env_beats_standard_env_api_key ... ok
[INFO] [stdout] test model::usage::tests::responses_usage_no_cached_tokens ... ok
[INFO] [stdout] test model::tests::config_api_key_is_used_when_env_is_missing ... ok
[INFO] [stdout] test paths::tests::log_path_uses_sac_home_layout ... ok
[INFO] [stdout] test model::tests::explicit_deepseek_backend_defaults_to_deepseek_url_and_model ... ok
[INFO] [stdout] test model::tests::test_missing_api_key_error ... ok
[INFO] [stdout] test sandbox::podman::tests::create_container_args_include_gpu_devices ... ok
[INFO] [stdout] test sandbox::podman::tests::create_container_args_skip_user_without_rw_mounts ... ok
[INFO] [stdout] test sandbox::podman::tests::exec_args_includes_it_flags_when_interactive_and_tty ... ok
[INFO] [stdout] test sandbox::podman::tests::sandbox_pidfile_path_is_container_tmp_path ... ok
[INFO] [stdout] test sandbox::podman::tests::create_container_args_include_mounts_and_command ... ok
[INFO] [stdout] test sandbox::podman::tests::terminal_pipe_command_includes_env_vars ... ok
[INFO] [stdout] test sandbox::podman::tests::exec_args_enable_interactive_mode_when_stdin_is_present ... ok
[INFO] [stdout] test sandbox::podman::tests::sandbox_wrappers_track_and_kill_process_group ... ok
[INFO] [stdout] test sandbox::podman::tests::worker_cli_args_are_explicit ... ok
[INFO] [stdout] test sandbox::tests::parse_mount_spec_normalizes_relative_host_path ... ok
[INFO] [stdout] test sandbox::podman::tests::exec_args_skip_interactive_mode_without_stdin ... ok
[INFO] [stdout] test sandbox::tests::resolve_relative_and_host_absolute_paths ... ok
[INFO] [stdout] test skills::tests::activation_uses_guest_path_when_sandboxed ... ok
[INFO] [stdout] test skills::tests::repair_frontmatter_handles_unquoted_colons ... ok
[INFO] [stdout] test skills::tests::repeated_activation_returns_short_notice ... ok
[INFO] [stdout] test sessions::tests::create_and_load_session_round_trip ... ok
[INFO] [stdout] test store::tests::append_list_and_read_thread_data ... ok
[INFO] [stdout] test store::tests::define_read_and_list_worksets ... ok
[INFO] [stdout] test sessions::tests::list_sessions_returns_summaries_in_updated_order ... ok
[INFO] [stdout] test terminal::keyparse::tests::arrows ... ok
[INFO] [stdout] test terminal::keyparse::tests::case_insensitive ... ok
[INFO] [stdout] test terminal::keyparse::tests::ctrl_keys ... ok
[INFO] [stdout] test terminal::keyparse::tests::literal_text ... ok
[INFO] [stdout] test terminal::keyparse::tests::mixed ... ok
[INFO] [stdout] test terminal::keyparse::tests::ret_and_enter ... ok
[INFO] [stdout] test terminal::keyparse::tests::unknown_key_passthrough ... ok
[INFO] [stdout] test store::tests::delete_thread_removes_all_episodes ... ok
[INFO] [stdout] test sessions::tests::load_last_session_returns_most_recent ... ok
[INFO] [stdout] test store::tests::worker_context_uses_latest_source_episode ... ok
[INFO] [stdout] test sessions::tests::load_session_migrates_legacy_schema_without_duration_history ... ok
[INFO] [stdout] test skills::tests::auto_mounts_skip_paths_already_covered_by_workspace_mount ... ok
[INFO] [stdout] test terminal::manager::tests::terminal_pipe_command_delegates_to_sandbox_session ... ok
[INFO] [stdout] test skills::tests::missing_description_skips_skill ... ok
[INFO] [stdout] test skills::tests::project_sources_override_user_sources ... ok
[INFO] [stdout] test tools::edit::tests::test_exact_match ... ok
[INFO] [stdout] test tools::edit::tests::test_multiple_matches ... ok
[INFO] [stdout] test tools::exec_command::tests::clamp_yield_edge ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_definition_shape ... ok
[INFO] [stdout] test tools::edit::tests::test_no_match ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_missing_cmd_fails ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_echo ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_multiline ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_nonzero_exit_code ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_large_output_keeps_tail ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_returns_on_early_exit ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_yield_time_is_timeout ... ok
[INFO] [stdout] test terminal::manager::tests::cleanup_ephemeral_does_not_remove_named_sessions ... ok
[INFO] [stdout] test terminal::manager::tests::resize_updates_session_dimensions ... ok
[INFO] [stdout] test terminal::manager::tests::terminal_info_includes_richer_metadata ... ok
[INFO] [stdout] test tools::exec_command::tests::make_session_name_increments ... ok
[INFO] [stdout] test terminal::session::tests::kill_removes_background_jobs_from_pty_shell ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_allows_pure_control_key_c_c ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_persistent_empty_cmd_respects_yield_time ... ok
[INFO] [stdout] test terminal::manager::tests::named_terminals_reject_duplicates_while_ephemeral_can_replace ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_allows_raw_text_without_terminator ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_definition_shape ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_missing_session_id_fails ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_one_shot_timeout_kills_child_processes ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_returns_exit_metadata_and_clears_session ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_persistent_creates_session ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_session_not_found ... ok
[INFO] [stdout] test tools::read::tests::test_read_existing_file ... ok
[INFO] [stdout] test tools::read::tests::test_read_missing_file ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_allows_arrow_key_without_terminator ... ok
[INFO] [stdout] test tools::exec_command::tests::exec_command_persistent_empty_cmd ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_allows_pure_control_key_c_z ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_can_reset_completed_command_state ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_definition_shape ... ok
[INFO] [stdout] test terminal::manager::tests::read_history_retains_terminal_output_after_polling ... ok
[INFO] [stdout] test tools::terminal::tests::cleanup_ephemeral_removes_finished_exec_command_sessions ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_create_and_list_round_trip ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_wait_output_contains_returns_false_after_terminal_exit ... ignored
[INFO] [stdout] test tools::terminal::tests::terminal_named_create_rejects_duplicate_names ... ok
[INFO] [stdout] test tools::thread::tests::thread_timeout_defaults_to_one_hour ... ok
[INFO] [stdout] test tools::thread::tests::thread_timeout_is_clamped_to_thirty_minutes ... ok
[INFO] [stdout] test tools::thread::tests::timeout_trace_ignores_thread_spawned_event ... ok
[INFO] [stdout] test tools::thread::tests::timeout_trace_reports_active_tool_call_details ... ok
[INFO] [stdout] test tools::thread::tests::timeout_trace_reports_model_api_location ... ok
[INFO] [stdout] test tools::write::tests::test_write_creates_dirs ... ok
[INFO] [stdout] test tui::tests::app_loads_worksets_for_session ... ok
[INFO] [stdout] test tui::tests::compact_dashboard_hint_legend_lists_all_bindings ... ok
[INFO] [stdout] test tui::tests::compact_hint_overlay_gating_matches_mode_and_visibility ... ok
[INFO] [stdout] test tui::tests::compact_mode_allows_phone_height_terminals ... ok
[INFO] [stdout] test tui::tests::compact_stream_keeps_full_response_scrollback ... ok
[INFO] [stdout] test tui::tests::compact_stream_uses_event_glyphs_and_latest_response ... ok
[INFO] [stdout] test tui::tests::compact_stream_uses_latest_prompt_from_history ... ok
[INFO] [stdout] test tui::tests::composer_title_shows_timer_only_while_run_is_active ... ok
[INFO] [stdout] test tui::tests::control_j_inserts_newline_without_deleting_text ... ok
[INFO] [stdout] test tui::tests::ctrl_e_toggles_events_focus ... ok
[INFO] [stdout] test tui::tests::ctrl_g_focuses_previous_response ... ok
[INFO] [stdout] test tui::tests::ctrl_h_toggles_hint_mode_without_editing_composer ... ok
[INFO] [stdout] test tui::tests::ctrl_k_still_focuses_worksets_outside_plain_thread_navigation ... ok
[INFO] [stdout] test tui::tests::ctrl_l_focuses_terminals_and_ctrl_f_focuses_file_changes ... ok
[INFO] [stdout] test tui::tests::ctrl_o_still_focuses_tools ... ok
[INFO] [stdout] test tui::tests::deferred_clear_takes_precedence_over_pause ... ok
[INFO] [stdout] test tui::tests::deferred_pause_flag_resets_after_check ... ok
[INFO] [stdout] test tui::tests::enter_submits_prompt ... ok
[INFO] [stdout] test tui::tests::escape_dismisses_focus_even_with_goal_active ... ok
[INFO] [stdout] test tui::tests::escape_does_not_pause_when_no_goal_active ... ok
[INFO] [stdout] test tui::tests::escape_requests_goal_pause_while_agent_running ... ok
[INFO] [stdout] test tui::tests::goal_clear_while_agent_running_sets_deferred_flag ... ok
[INFO] [stdout] test tui::tests::goal_pause_while_agent_running_sets_deferred_flag ... ok
[INFO] [stdout] test tui::tests::goal_set_blocked_while_agent_running ... ok
[INFO] [stdout] test tui::tests::goal_should_not_continue_after_deferred_pause ... ok
[INFO] [stdout] test tui::tests::goal_show_while_agent_running_displays_status ... ok
[INFO] [stdout] test tui::tests::help_focus_rows_use_full_binding_text ... ok
[INFO] [stdout] test tui::tests::hint_toggle_requests_scroll_reset ... ok
[INFO] [stdout] test tui::tests::invalid_slash_command_shows_composer_notice ... ok
[INFO] [stdout] test tui::tests::markdown_renderer_formats_common_blocks ... ok
[INFO] [stdout] test tui::tests::markdown_table_keeps_rows_with_escaped_pipes_in_same_table ... ok
[INFO] [stdout] test tui::tests::markdown_table_preserves_inline_styles_in_cells ... ok
[INFO] [stdout] test tui::tests::markdown_table_row_respects_escaped_and_code_pipes ... ok
[INFO] [stdout] test tui::tests::markdown_table_uses_terminal_display_width_for_emoji ... ok
[INFO] [stdout] test tui::tests::markdown_table_without_delimiter_renders_as_table ... ok
[INFO] [stdout] test tui::tests::markdown_table_without_delimiter_single_column_skips_fallback ... ok
[INFO] [stdout] test tui::tests::multiline_paste_inserts_newlines_without_submit ... ok
[INFO] [stdout] test tui::tests::non_goal_command_blocked_while_agent_running ... ok
[INFO] [stdout] test tui::tests::normal_prompt_prefix_returns_after_slash_removed ... ok
[INFO] [stdout] test tui::tests::parse_remote_label_handles_ssh ... ok
[INFO] [stdout] test tui::tests::parse_status_porcelain_tracks_untracked_and_staged ... ok
[INFO] [stdout] test tui::tests::pasted_crlf_is_normalized_to_newlines ... ok
[INFO] [stdout] test tui::tests::plan_command_expands_to_workset_prompt ... ok
[INFO] [stdout] test tui::tests::plan_command_submits_raw_prompt ... ok
[INFO] [stdout] test tui::tests::previous_response_focus_supports_left_right_navigation ... ok
[INFO] [stdout] test tui::tests::primary_scroll_panel_uses_prompt_when_prompt_focused ... ok
[INFO] [stdout] test tui::tests::prompt_history_focus_navigation_guard_and_reset_to_latest ... ok
[INFO] [stdout] test tui::tests::prompt_history_hydrates_user_messages_and_slash_display_mapping ... ok
[INFO] [stdout] test tui::tests::question_mark_inserts_into_nonempty_composer ... ok
[INFO] [stdout] test tui::tests::question_mark_toggles_help_when_composer_is_empty ... ok
[INFO] [stdout] test tui::tests::queued_scroll_filter_drops_only_pending_scroll_events ... ok
[INFO] [stdout] test tui::tests::repeat_backspace_is_processed ... ok
[INFO] [stdout] test tui::tests::repeat_ctrl_h_is_ignored ... ok
[INFO] [stdout] test tui::tests::response_duration_history_restore_prefers_full_vector ... ok
[INFO] [stdout] test tui::tests::response_duration_history_round_trips_through_session_snapshot_and_resume_restore ... ok
[INFO] [stdout] test tui::tests::response_durations_restore_with_hydrated_response_history ... ok
[INFO] [stdout] test tui::tests::response_history_focus_navigation_and_reset_to_latest ... ok
[INFO] [stdout] test tui::tests::response_history_tracks_runtime_snapshots_and_ignored_event ... ok
[INFO] [stdout] test tui::tests::restored_message_count_ignores_system_and_tool_messages ... ok
[INFO] [stdout] test tui::tests::run_command_expands_to_existing_workset_prompt ... ok
[INFO] [stdout] test tui::tests::run_command_rejects_freeform_instruction ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_allows_tab_without_terminator ... ok
[INFO] [stdout] test tui::tests::run_command_requires_workset ... ok
[INFO] [stdout] test tui::tests::run_command_submits_raw_prompt ... ok
[INFO] [stdout] test tui::tests::selection_extract_preserves_original_newlines_only ... ok
[INFO] [stdout] test tui::tests::run_started_does_not_replace_submitted_prompt ... ok
[INFO] [stdout] test tui::tests::shift_enter_inserts_newline ... ok
[INFO] [stdout] test tui::tests::slash_command_mode_uses_command_prefix ... ok
[INFO] [stdout] test tui::tests::slash_exit_quits ... ok
[INFO] [stdout] test tui::tests::switching_focus_from_prompt_returns_display_to_latest ... ok
[INFO] [stdout] test tui::tests::thread_lifecycle_switches_active_to_idle ... ok
[INFO] [stdout] test tui::tests::sessions_command_opens_picker ... ok
[INFO] [stdout] test tui::tests::thread_navigation_requests_scroll_reset ... ok
[INFO] [stdout] test tui::tests::tool_finishes_into_recent_history ... ok
[INFO] [stdout] test tui::tests::title_badges_show_expected_bindings ... ok
[INFO] [stdout] test tui::tests::workset_item_lines_include_role_scope_title_and_acceptance ... ok
[INFO] [stdout] test tui::tests::workset_prompt_displays_as_original_slash_command ... ok
[INFO] [stdout] test tui::tests::workset_item_lines_wrap_long_fields ... ok
[INFO] [stdout] test tui::tests::workspace_without_host_path_is_unavailable ... ok
[INFO] [stdout] test tui::tests::wrapped_prefixed_lines_use_continuation_indent ... ok
[INFO] [stdout] test types::tests::accumulate_cached_tokens_none_plus_some ... ok
[INFO] [stdout] test types::tests::accumulate_includes_cached_tokens ... ok
[INFO] [stdout] test types::tests::goal_token_delta_all_none ... ok
[INFO] [stdout] test types::tests::goal_token_delta_cached_exceeds_prompt_clamps_to_zero ... ok
[INFO] [stdout] test types::tests::goal_token_delta_with_cached_tokens ... ok
[INFO] [stdout] test types::tests::goal_token_delta_without_cached_tokens ... ok
[INFO] [stdout] test types::tests::test_assistant_content_null ... ok
[INFO] [stdout] test types::tests::test_assistant_reasoning_content_alias_deserializes ... ok
[INFO] [stdout] test types::tests::test_message_role_serialization ... ok
[INFO] [stdout] test tui::tests::workset_tool_finish_refreshes_worksets ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_touch_updates_idle_tracking ... ok
[INFO] [stdout] test tools::terminal::tests::named_and_ephemeral_sessions_can_coexist ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_wait_supports_output_contains_and_idle ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_send_input ... ok
[INFO] [stdout] test tools::exec_command::tests::write_stdin_poll_output ... ok
[INFO] [stdout] test tools::terminal::tests::terminal_send_read_resize_and_close_round_trip ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 245 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 5.77s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/sac-cli/2ac5781d23c5778c/out/sac-2ac5781d23c5778c)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/agent_integration.rs (/opt/rustwide/target/debug/build/sac-cli/b8cac1f64ca80e1b/out/agent_integration-b8cac1f64ca80e1b)
[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] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test test_simple_prompt ... ignored, requires OPENAI_API_KEY
[INFO] [stdout] test test_tool_usage ... ignored, requires OPENAI_API_KEY
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests sac
[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" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42", kill_on_drop: false }`
[INFO] [stdout] 955054b63aea5f40c3b6d69c00392f9a76f7ca0fcbc98617ff8f1905f7fa1b42
