[INFO] fetching crate yoyo-agent 0.1.8...
[INFO] testing yoyo-agent-0.1.8 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate yoyo-agent 0.1.8 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate yoyo-agent 0.1.8
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate yoyo-agent 0.1.8
[INFO] tweaked toml for crates.io crate yoyo-agent 0.1.8 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate yoyo-agent 0.1.8 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate yoyo-agent 0.1.8 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9ab4e95a8c1f2b82ff390e08dfa502c2eb89fb004462c6292f4c805681a612ed
[INFO] running `Command { std: "docker" "start" "-a" "9ab4e95a8c1f2b82ff390e08dfa502c2eb89fb004462c6292f4c805681a612ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9ab4e95a8c1f2b82ff390e08dfa502c2eb89fb004462c6292f4c805681a612ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9ab4e95a8c1f2b82ff390e08dfa502c2eb89fb004462c6292f4c805681a612ed", kill_on_drop: false }`
[INFO] [stdout] 9ab4e95a8c1f2b82ff390e08dfa502c2eb89fb004462c6292f4c805681a612ed
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] be17c4acf85a4cfc1b9b7916e53e14d3f0cc0fe29dfdf764f01d180f5898dae3
[INFO] running `Command { std: "docker" "start" "-a" "be17c4acf85a4cfc1b9b7916e53e14d3f0cc0fe29dfdf764f01d180f5898dae3", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling openssl v0.10.77
[INFO] [stderr]    Compiling openssl-sys v0.9.113
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling chacha20 v0.10.0
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling openapiv3 v2.2.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling eventsource-stream v0.2.3
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling rand v0.10.1
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling rustyline v15.0.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling reqwest-eventsource v0.6.0
[INFO] [stderr]    Compiling yoagent v0.7.5
[INFO] [stderr]    Compiling yoyo-agent v0.1.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.19s
[INFO] running `Command { std: "docker" "inspect" "be17c4acf85a4cfc1b9b7916e53e14d3f0cc0fe29dfdf764f01d180f5898dae3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "be17c4acf85a4cfc1b9b7916e53e14d3f0cc0fe29dfdf764f01d180f5898dae3", kill_on_drop: false }`
[INFO] [stdout] be17c4acf85a4cfc1b9b7916e53e14d3f0cc0fe29dfdf764f01d180f5898dae3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7c8c4eaf822395bb5d3d9392b448ca91a7087208a5979e73f4fcb1251e19c30b
[INFO] running `Command { std: "docker" "start" "-a" "7c8c4eaf822395bb5d3d9392b448ca91a7087208a5979e73f4fcb1251e19c30b", kill_on_drop: false }`
[INFO] [stderr]    Compiling sdd v3.0.10
[INFO] [stderr]    Compiling serial_test_derive v3.4.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling scc v2.4.0
[INFO] [stderr]    Compiling serial_test v3.4.0
[INFO] [stderr]    Compiling yoyo-agent v0.1.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 10.80s
[INFO] running `Command { std: "docker" "inspect" "7c8c4eaf822395bb5d3d9392b448ca91a7087208a5979e73f4fcb1251e19c30b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c8c4eaf822395bb5d3d9392b448ca91a7087208a5979e73f4fcb1251e19c30b", kill_on_drop: false }`
[INFO] [stdout] 7c8c4eaf822395bb5d3d9392b448ca91a7087208a5979e73f4fcb1251e19c30b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9a6fdfff6336e0821c35f1fc52ba613ee02a5423254f19679b677cb4dc2e9725
[INFO] running `Command { std: "docker" "start" "-a" "9a6fdfff6336e0821c35f1fc52ba613ee02a5423254f19679b677cb4dc2e9725", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/yoyo-c311a8fafb44f65c)
[INFO] [stdout] 
[INFO] [stdout] running 1899 tests
[INFO] [stdout] test cli::tests::help_text_documents_session_budget_env_var ... ok
[INFO] [stdout] test cli::tests::help_text_documents_known_env_vars ... ok
[INFO] [stdout] test cli::tests::quote_args_simple ... ok
[INFO] [stdout] test cli::tests::quote_args_multi_word ... ok
[INFO] [stdout] test cli::tests::quote_args_no_unnecessary_quoting ... ok
[INFO] [stdout] test cli::tests::help_text_documents_all_subcommands ... ok
[INFO] [stdout] test cli::tests::quote_args_tab_in_arg ... ok
[INFO] [stdout] test cli::tests::quote_args_multi_word_with_path ... ok
[INFO] [stdout] test cli::tests::test_allow_deny_flags_parsing ... ok
[INFO] [stdout] test cli::tests::test_allow_dir_deny_dir_flags_parsing ... ok
[INFO] [stdout] test cli::tests::test_allow_dir_deny_dir_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_api_key_flag_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_api_key_flag_missing ... ok
[INFO] [stdout] test cli::tests::test_api_key_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_audit_flag_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_auto_compact_threshold_constants ... ok
[INFO] [stdout] test cli::tests::test_api_key_from_config_file ... ok
[INFO] [stdout] test cli::tests::test_clamp_temperature_in_range ... ok
[INFO] [stdout] test cli::tests::test_clamp_temperature_below_zero ... ok
[INFO] [stdout] test cli::tests::test_clamp_temperature_above_one ... ok
[INFO] [stdout] test cli::tests::test_config_precedence_project_over_home ... ok
[INFO] [stdout] test cli::tests::test_cli_system_overrides_config ... ok
[INFO] [stdout] test cli::tests::test_config_system_prompt_key ... ok
[INFO] [stdout] test cli::tests::test_context_strategy_default_is_compaction ... ok
[INFO] [stdout] test cli::tests::test_context_strategy_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_continue_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_default_session_path ... ok
[INFO] [stdout] test cli::tests::test_data_dir_hint_returns_path ... ok
[INFO] [stdout] test cli::tests::help_text_documents_all_repl_commands ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_deny_overrides_allow ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_empty_allows_everything ... ok
[INFO] [stdout] test cli::tests::test_cli_system_file_overrides_config ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_deny_blocks_path ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_allow_restricts_to_listed ... ok
[INFO] [stdout] test cli::tests::test_cli_system_overrides_config_system_file ... ok
[INFO] [stdout] test cli::tests::test_config_system_file_key ... ok
[INFO] [stdout] test cli::tests::test_config_search_order_documented ... ok
[INFO] [stdout] test cli::tests::test_config_system_file_overrides_system_prompt ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_parent_dir_escape_blocked ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_relative_paths ... ok
[INFO] [stdout] test cli::tests::test_flag_value_finds_first_occurrence ... ok
[INFO] [stdout] test cli::tests::test_fallback_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_flag_value_returns_none_when_flag_missing ... ok
[INFO] [stdout] test cli::tests::test_flag_value_finds_value_for_single_flag ... ok
[INFO] [stdout] test cli::tests::test_directory_restrictions_exact_dir_match ... ok
[INFO] [stdout] test cli::tests::test_glob_match_multiple_wildcards ... ok
[INFO] [stdout] test cli::tests::test_glob_match_rm_rf ... ok
[INFO] [stdout] test cli::tests::test_flag_value_supports_aliases ... ok
[INFO] [stdout] test cli::tests::test_glob_match_wildcard_middle ... ok
[INFO] [stdout] test cli::tests::test_glob_match_wildcard_prefix ... ok
[INFO] [stdout] test cli::tests::test_glob_match_star_only ... ok
[INFO] [stdout] test cli::tests::test_glob_match_empty_pattern ... ok
[INFO] [stdout] test cli::tests::test_flag_value_returns_none_when_value_missing ... ok
[INFO] [stdout] test cli::tests::test_glob_match_wildcard_suffix ... ok
[INFO] [stdout] test cli::tests::test_help_text_mentions_home_config ... ok
[INFO] [stdout] test cli::tests::test_glob_match_exact ... ok
[INFO] [stdout] test cli::tests::test_json_flag_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_known_flags_contains_all_flags ... ok
[INFO] [stdout] test cli::tests::test_max_tokens_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_max_tokens_flag_invalid ... ok
[INFO] [stdout] test cli::tests::test_max_tokens_flag_missing ... ok
[INFO] [stdout] test cli::tests::test_mcp_server_config_struct ... ok
[INFO] [stdout] test cli::tests::test_home_config_path_file_is_loadable ... ok
[INFO] [stdout] test cli::tests::test_no_color_flag_recognized ... ok
[INFO] [stdout] test cli::tests::test_no_bell_flag_recognized ... ok
[INFO] [stdout] test cli::tests::test_openapi_flag_parsing_multiple ... ok
[INFO] [stdout] test cli::tests::test_openapi_flag_in_known_flags ... ok
[INFO] [stdout] test cli::tests::test_openapi_flag_parsing_single ... ok
[INFO] [stdout] test cli::tests::test_no_update_check_flag_recognized ... ok
[INFO] [stdout] test cli::tests::test_output_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_history_file_path_returns_some ... ok
[INFO] [stdout] test cli::tests::test_history_file_path_prefers_xdg ... ok
[INFO] [stdout] test cli::tests::test_home_config_path_returns_yoyo_toml_in_home ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_basic ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_comments_and_blanks ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_empty ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_mcp_empty_array ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_mcp_array ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_mcp_single_entry ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_no_quotes ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_single_quotes ... ok
[INFO] [stdout] test cli::tests::test_parse_directories_from_config ... ok
[INFO] [stdout] test cli::tests::test_parse_config_file_whitespace_handling ... ok
[INFO] [stdout] test cli::tests::test_parse_directories_from_config_does_not_interfere_with_permissions ... ok
[INFO] [stdout] test cli::tests::test_parse_directories_from_config_no_section ... ok
[INFO] [stdout] test cli::tests::test_check_for_update_graceful_failure ... ok
[INFO] [stdout] test cli::tests::test_context_strategy_parses_compaction_explicit ... ok
[INFO] [stdout] test cli::tests::test_parse_mcp_servers_basic ... ok
[INFO] [stdout] test cli::tests::test_parse_mcp_servers_empty_config ... ok
[INFO] [stdout] test cli::tests::test_parse_mcp_servers_mixed_with_other_sections ... ok
[INFO] [stdout] test cli::tests::test_parse_mcp_servers_multiple_env_vars ... ok
[INFO] [stdout] test cli::tests::test_parse_mcp_servers_no_args_or_env ... ok
[INFO] [stdout] test cli::tests::test_parse_mcp_servers_skips_incomplete ... ok
[INFO] [stdout] test cli::tests::test_parse_numeric_flag_cli_overrides_config ... ok
[INFO] [stdout] test cli::tests::test_parse_numeric_flag_config_fallback ... ok
[INFO] [stdout] test cli::tests::test_parse_numeric_flag_invalid_cli_falls_to_config ... ok
[INFO] [stdout] test cli::tests::test_parse_numeric_flag_invalid_config_returns_none ... ok
[INFO] [stdout] test cli::tests::test_context_strategy_unknown_defaults_to_compaction ... ok
[INFO] [stdout] test cli::tests::test_parse_permissions_from_config ... ok
[INFO] [stdout] test cli::tests::test_parse_permissions_from_config_empty_section ... ok
[INFO] [stdout] test cli::tests::test_parse_permissions_from_config_no_section ... ok
[INFO] [stdout] test cli::tests::test_parse_permissions_from_config_only_allow ... ok
[INFO] [stdout] test cli::tests::test_parse_permissions_from_config_other_section_after ... ok
[INFO] [stdout] test cli::tests::test_parse_thinking_level ... ok
[INFO] [stdout] test cli::tests::test_parse_toml_array_basic ... ok
[INFO] [stdout] test cli::tests::test_parse_toml_array_empty ... ok
[INFO] [stdout] test cli::tests::test_parse_toml_array_not_array ... ok
[INFO] [stdout] test cli::tests::test_parse_toml_array_single ... ok
[INFO] [stdout] test cli::tests::test_parse_toml_array_single_quotes ... ok
[INFO] [stdout] test cli::tests::test_permission_config_check_allow ... ok
[INFO] [stdout] test cli::tests::test_permission_config_check_deny ... ok
[INFO] [stdout] test cli::tests::test_permission_config_deny_overrides_allow ... ok
[INFO] [stdout] test cli::tests::test_parse_numeric_flag_usize ... ok
[INFO] [stdout] test cli::tests::test_permission_config_empty ... ok
[INFO] [stdout] test cli::tests::test_permission_config_realistic_scenario ... ok
[INFO] [stdout] test cli::tests::test_context_strategy_parses_checkpoint ... ok
[INFO] [stdout] test cli::tests::test_print_welcome_contains_key_phrases ... ok
[INFO] [stdout] test cli::tests::test_print_welcome_mentions_other_providers ... ok
[INFO] [stdout] test cli::tests::test_print_welcome_mentions_setup_steps ... ok
[INFO] [stdout] test cli::tests::test_proactive_threshold_lower_than_auto ... ok
[INFO] [stdout] test cli::tests::test_prompt_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_require_flag_value_accepts_negative_numbers ... ok
[INFO] [stdout] test cli::tests::test_require_flag_value_flag_like_on_bare_dash ... ok
[INFO] [stdout] test cli::tests::test_require_flag_value_flag_like_on_double_dash ... ok
[INFO] [stdout] test cli::tests::test_require_flag_value_missing_on_end_of_args ... ok
[INFO] [stdout] test cli::tests::test_require_flag_value_ok_on_plain_value ... ok
[INFO] [stdout] test cli::tests::test_parse_fallback_derives_model ... ok
[INFO] [stdout] test cli::tests::test_resolve_system_prompt_default ... ok
[INFO] [stdout] test cli::tests::test_system_file_flag ... ok
[INFO] [stdout] test cli::tests::test_system_flag_missing ... ok
[INFO] [stdout] test cli::tests::test_system_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_temperature_flag_invalid ... ok
[INFO] [stdout] test cli::tests::test_temperature_flag_missing ... ok
[INFO] [stdout] test cli::tests::test_temperature_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_blame ... ok
[INFO] [stdout] test cli::tests::test_no_update_check_flag_parsed ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_docs ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_falls_through_on_empty_args ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_diff ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_falls_through_on_normal_flags ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_falls_through_on_unknown_flag ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_falls_through_on_unknown_subcommand ... ok
[INFO] [stdout] test cli::tests::test_parse_fallback_flag ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_help_bare ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_help_long ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_commit ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_find ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_help_short ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_init_bare ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_help_wins_over_other_flags ... ok
[INFO] [stdout] test cli::tests::test_parse_args_json_default ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_run_no_args ... ok
[INFO] [stdout] 
[INFO] [stdout]   [1mWelcome to yoyo! 🐙[0m
[INFO] [stdout] 
[INFO] [stdout]   Let's get you set up. This will only take a moment.
[INFO] [stdout] 
[INFO] [stdout]   [1mStep 1:[0m Choose your AI provider:
[INFO] [stdout] 
[INFO] [stdout]     [1m1[0m. Anthropic (Claude)
[INFO] [stdout]     [1m2[0m. OpenAI (GPT-4o)
[INFO] [stdout]     [1m3[0m. Google (Gemini)
[INFO] [stdout]     [1m4[0m. Ollama (local, no API key needed)
[INFO] [stdout]     [1m5[0m. OpenRouter (multi-provider gateway)
[INFO] [stdout]     [1m6[0m. DeepSeek
[INFO] [stdout]     [1m7[0m. Groq
[INFO] [stdout]     [1m8[0m. xAI (Grok)
[INFO] [stdout]     [1m9[0m. Mistral
[INFO] [stdout]     [1m10[0m. Cerebras
[INFO] [stdout]     [1m11[0m. MiniMax
[INFO] [stdout]     [1m12[0m. AWS Bedrock (Claude, Nova — uses AWS credentials)
[INFO] [stdout]     [1m13[0m. Custom (self-hosted OpenAI-compatible)
[INFO] [stdout] 
[INFO] [stdout]   Enter number or name [1]: 
[INFO] [stdout]   [32m✓[0m Provider: [1mAnthropic (Claude)[0m
[INFO] [stdout] 
[INFO] [stdout]   [1mStep 2:[0m Enter your API key
[INFO] [stdout]   [2m(or set ANTHROPIC_API_KEY in your shell and press Enter to skip)[0m
[INFO] [stdout] 
[INFO] [stdout]   API key:   [32m✓[0m Using key from [2mANTHROPIC_API_KEY[0m
[INFO] [stdout] 
[INFO] [stdout]   [1mStep 3:[0m Choose a model [2m(press Enter for default)[0m
[INFO] [stdout]   [2mPopular models for anthropic:[0m
[INFO] [stdout]     • claude-opus-4-6 [2m(default)[0m
[INFO] [stdout]     • claude-sonnet-4-20250514
[INFO] [stdout]     • claude-haiku-4-5-20250414
[INFO] [stdout] 
[INFO] [stdout]   Model [claude-opus-4-6]:   [32m✓[0m Model: [1mclaude-opus-4-6[0m
[INFO] [stdout] 
[INFO] [stdout]   [1mStep 4:[0m Save configuration?
[INFO] [stdout]   [2mThis saves your provider and model so you don't need flags next time.[0m
[INFO] [stdout] 
[INFO] [stdout]     [1m1[0m. Save to [36m.yoyo.toml[0m (current project only)
[INFO] [stdout]     [1m2[0m. Save to [36m/root/.config/yoyo/config.toml[0m (user-level, applies everywhere)
[INFO] [stdout]     [1m3[0m. Don't save
[INFO] [stdout] 
[INFO] [stdout]   Choice [1]:   [33mCould not save config: Read-only file system (os error 30)[0m
[INFO] [stdout] 
[INFO] [stdout]   [32m[1mAll set! Starting yoyo...[0m
[INFO] [stdout] 
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_setup_bare ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_status ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_test ... ignored
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_grep ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_tree ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_update ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_version_bare ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_version_long ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_version_short ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_watch ... ok
[INFO] [stdout] test cli::tests::test_verbose_flag_parsing ... ok
[INFO] [stdout] test cli::tests::test_version_constant_exists ... ok
[INFO] [stdout] test cli::tests::test_version_is_newer_basic ... ok
[INFO] [stdout] test cli::tests::test_version_is_newer_different_lengths ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_undo ... ok
[INFO] [stdout] test cli::tests::test_version_is_newer_major_dominates ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_index ... ok
[INFO] [stdout] test cli::tests::test_auto_commit_flag_parsed ... ok
[INFO] [stdout] test cli::tests::test_version_is_newer_same ... ok
[INFO] [stdout] test cli::tests::test_version_is_newer_numeric_comparison ... ok
[INFO] [stdout] test cli::tests::test_version_is_newer_older ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_bg_empty ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_bg_partial ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_case_insensitive ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_git_empty ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_git_partial ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_help_has_args ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_model_empty_prefix ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_model_gpt_prefix ... ok
[INFO] [stdout] test cli::tests::test_warn_unknown_flags_no_panic ... ok
[INFO] [stdout] test cli::tests::test_welcome_text_mentions_bedrock ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_model_no_match ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_model_partial_prefix ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_pr_empty ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_pr_partial ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_think_partial ... ok
[INFO] [stdout] test commands::tests::test_bare_model_command_is_recognized ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_think_empty ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_unknown_command ... ok
[INFO] [stdout] test commands::tests::test_command_help_recognized ... ok
[INFO] [stdout] test commands::tests::test_command_parsing_quit ... ok
[INFO] [stdout] test commands::tests::test_format_config_masks_secret_values ... ok
[INFO] [stdout] test commands::tests::test_format_config_no_file_loaded ... ok
[INFO] [stdout] test commands::tests::test_format_config_sorts_keys_deterministically ... ok
[INFO] [stdout] test commands::tests::test_model_switch_updates_variable ... ok
[INFO] [stdout] test commands::tests::test_command_parsing_model ... ok
[INFO] [stdout] test commands::tests::test_command_parsing_model_whitespace ... ok
[INFO] [stdout] test commands::tests::test_provider_arg_completions_empty ... ok
[INFO] [stdout] test commands::tests::test_provider_command_matching ... ok
[INFO] [stdout] test commands::tests::test_provider_arg_completions_partial ... ok
[INFO] [stdout] test commands::tests::test_provider_arg_completions_no_match ... ok
[INFO] [stdout] test commands::tests::test_provider_command_recognized ... ok
[INFO] [stdout] test commands::tests::test_provider_show_does_not_panic ... ok
[INFO] [stdout] test commands::tests::test_provider_switch_invalid ... ok
[INFO] [stdout] test commands::tests::test_provider_switch_sets_default_model ... ok
[INFO] [stdout] test commands::tests::test_thinking_level_name ... ok
[INFO] [stdout] test commands::tests::test_unknown_slash_command_detection ... ok
[INFO] [stdout] test commands::tests::test_provider_switch_valid ... ok
[INFO] [stdout] test commands_bg::tests::test_exists ... ok
[INFO] [stdout] test commands_bg::tests::test_format_elapsed ... ok
[INFO] [stdout] test commands_bg::tests::test_job_ids_increment ... ok
[INFO] [stdout] test cli::tests::test_parse_args_audit_default_false ... ok
[INFO] [stdout] test cli::tests::test_parse_args_json_flag ... ok
[INFO] [stdout] test commands_bg::tests::test_tail_lines ... ok
[INFO] [stdout] test commands_bg::tests::test_tail_lines_short ... ok
[INFO] [stdout] test commands_bg::tests::test_truncate_command ... ok
[INFO] [stdout] test commands_bg::tests::test_truncate_command_multibyte ... ok
[INFO] [stdout] test commands_config::tests::test_format_config_masks_secret_values ... ok
[INFO] [stdout] test commands_config::tests::test_format_config_no_file_loaded ... ok
[INFO] [stdout] test commands_config::tests::test_format_config_sorts_keys_deterministically ... ok
[INFO] [stdout] test commands_config::tests::test_handle_hooks_empty ... ok
[INFO] [stdout] test commands_config::tests::test_handle_hooks_with_hooks ... ok
[INFO] [stdout] test commands_config::tests::test_handle_mcp_no_servers ... ok
[INFO] [stdout] test commands_config::tests::test_handle_mcp_unknown_subcommand ... ok
[INFO] [stdout] test commands_config::tests::test_handle_mcp_with_configs ... ok
[INFO] [stdout] test commands_config::tests::test_handle_permissions_auto_approve ... ok
[INFO] [stdout] test commands_config::tests::test_handle_permissions_defaults ... ok
[INFO] [stdout] test commands_config::tests::test_handle_permissions_fully_configured ... ok
[INFO] [stdout] test commands_config::tests::test_handle_permissions_with_dir_restrictions ... ok
[INFO] [stdout] test commands_config::tests::test_handle_permissions_with_patterns ... ok
[INFO] [stdout] test commands_config::tests::test_hooks_command_recognized ... ok
[INFO] [stdout] test commands_config::tests::test_is_secret_key_matches_common_patterns ... ok
[INFO] [stdout] test commands_config::tests::test_mcp_help_mentions_collision_warning ... ok
[INFO] [stdout] test commands_config::tests::test_mcp_help_primary_example_is_not_filesystem ... ok
[INFO] [stdout] test commands_config::tests::test_mcp_help_text_no_coming_soon ... ok
[INFO] [stdout] test commands_config::tests::test_mcp_in_known_commands ... ok
[INFO] [stdout] test commands_config::tests::test_mcp_not_connected_message_no_coming_soon ... ok
[INFO] [stdout] test commands_config::tests::test_mcp_short_description_exists ... ok
[INFO] [stdout] test commands_config::tests::test_permissions_command_recognized ... ok
[INFO] [stdout] test commands::tests::test_arg_completions_save_load_json_files ... FAILED
[INFO] [stdout] test commands_config::tests::test_teach_command_help_exists ... ok
[INFO] [stdout] test commands_config::tests::test_teach_in_help_text ... ok
[INFO] [stdout] test commands_config::tests::test_teach_known_command ... ok
[INFO] [stdout] test commands_config::tests::test_teach_mode_default_off ... ok
[INFO] [stdout] test commands_config::tests::test_teach_mode_prompt_not_empty ... ok
[INFO] [stdout] test commands_config::tests::test_teach_mode_toggle ... ok
[INFO] [stdout] test commands_config::tests::test_teach_short_description_exists ... ok
[INFO] [stdout] test commands_dev::tests::build_fix_prompt_empty ... ok
[INFO] [stdout] test commands_dev::tests::build_fix_prompt_multiple_failures ... ok
[INFO] [stdout] test commands_dev::tests::build_fix_prompt_with_failures ... ok
[INFO] [stdout] test commands_dev::tests::detects_deny_attribute ... ok
[INFO] [stdout] test commands_dev::tests::detects_forbid_attribute ... ok
[INFO] [stdout] test commands_dev::tests::format_tree_basic ... ok
[INFO] [stdout] test commands_dev::tests::format_tree_depth_limit ... ok
[INFO] [stdout] test commands_dev::tests::format_tree_empty ... ok
[INFO] [stdout] test commands_dev::tests::format_tree_root_files ... ok
[INFO] [stdout] test commands_dev::tests::health_checks_rust_has_build ... ok
[INFO] [stdout] test commands_dev::tests::health_checks_unknown_empty ... ok
[INFO] [stdout] test commands_dev::tests::ignores_commented_attribute ... ok
[INFO] [stdout] test commands_dev::tests::lint_command_make_none ... ok
[INFO] [stdout] test commands_dev::tests::lint_command_rust ... ok
[INFO] [stdout] test commands_dev::tests::lint_command_unknown_none ... ok
[INFO] [stdout] test commands_dev::tests::lint_fix_prompt_asks_to_fix ... ok
[INFO] [stdout] test commands_dev::tests::lint_fix_prompt_contains_command_and_output ... ok
[INFO] [stdout] test commands_dev::tests::lint_fix_prompt_includes_structured_output ... ok
[INFO] [stdout] test commands_dev::tests::lint_unsafe_in_subcommands ... ok
[INFO] [stdout] test commands_dev::tests::no_attribute_returns_none ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_finds_blocks ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_finds_functions ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_finds_impl ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_finds_trait ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_ignores_comments ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_ignores_strings ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_multiple_occurrences ... ok
[INFO] [stdout] test commands_dev::tests::scan_for_unsafe_no_occurrences ... ok
[INFO] [stdout] test commands_dev::tests::test_bang_shortcut_matching ... ok
[INFO] [stdout] test commands_dev::tests::test_build_fix_prompt_empty_failures ... ok
[INFO] [stdout] test commands_dev::tests::test_build_fix_prompt_with_failures ... ok
[INFO] [stdout] test commands_dev::tests::test_command_rust ... ok
[INFO] [stdout] test commands_dev::tests::test_command_unknown ... ok
[INFO] [stdout] test commands_dev::tests::test_fix_command_recognized ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_dir_printed_once ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_from_paths_basic ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_from_paths_depth_limit ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_from_paths_depth_zero ... ok
[INFO] [stdout] test commands_dev::tests::test_build_project_tree_runs ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_from_paths_empty ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_from_paths_nested ... ok
[INFO] [stdout] test commands_dev::tests::test_format_tree_from_paths_root_files_only ... ok
[INFO] [stdout] test commands_dev::tests::test_health_checks_for_go_project ... ok
[INFO] [stdout] test commands_dev::tests::test_health_checks_for_node_project ... ok
[INFO] [stdout] test commands_dev::tests::test_health_checks_for_python_project ... ok
[INFO] [stdout] test commands_dev::tests::test_health_checks_for_rust_project ... ok
[INFO] [stdout] test commands_dev::tests::test_health_checks_for_unknown_returns_empty ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_for_go_project ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_for_make_project ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_for_node_project ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_for_python_project ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_for_rust_project ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_for_unknown_project ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_command_recognized ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_default_no_extra_flags ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_pedantic_adds_flag ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_strict_adds_both_flags ... ok
[INFO] [stdout] test commands_dev::tests::test_lint_strictness_ignored_for_non_rust ... ok
[INFO] [stdout] test commands_dev::tests::test_run_command_matching ... ok
[INFO] [stdout] test cli::tests::test_auto_commit_flag_default_false ... ok
[INFO] [stdout] test commands_dev::tests::test_run_command_recognized ... ok
[INFO] [stdout] test commands_dev::tests::test_run_shell_command_basic ... ok
[INFO] [stdout] test commands_dev::tests::test_run_shell_command_failing ... ok
[INFO] [stdout] test commands_dev::tests::test_run_shell_command_large_output ... ok
[INFO] [stdout] test commands_dev::tests::test_run_shell_command_mixed_stdout_stderr ... ok
[INFO] [stdout] test commands_dev::tests::test_run_shell_command_streams_multiline ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_for_go_project ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_for_make_project ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_for_node_project ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_for_python_project ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_for_rust_project ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_for_unknown_project ... ok
[INFO] [stdout] test commands_dev::tests::test_test_command_recognized ... ok
[INFO] [stdout] test commands_dev::tests::test_tree_command_recognized ... ok
[INFO] [stdout] test commands_dev::tests::update_find_asset_url_empty ... ok
[INFO] [stdout] test commands_dev::tests::update_find_asset_url_found ... ok
[INFO] [stdout] test commands_dev::tests::update_find_asset_url_not_found ... ok
[INFO] [stdout] test commands_dev::tests::update_is_cargo_dev_build_runs ... ok
[INFO] [stdout] test commands_dev::tests::update_platform_linux_x86_64 ... ok
[INFO] [stdout] test commands_dev::tests::update_platform_macos_arm ... ok
[INFO] [stdout] test commands_dev::tests::update_platform_macos_intel ... ok
[INFO] [stdout] test commands_dev::tests::update_platform_unsupported ... ok
[INFO] [stdout] test commands_dev::tests::update_platform_windows ... ok
[INFO] [stdout] test commands_dev::tests::update_version_comparison ... ok
[INFO] [stdout] test commands_file::tests::add_read_file_full ... ok
[INFO] [stdout] test commands_file::tests::add_read_file_not_found ... ok
[INFO] [stdout] test commands_file::tests::add_read_file_with_range ... ok
[INFO] [stdout] test commands_file::tests::add_result_image_fields_accessible ... ok
[INFO] [stdout] test commands_file::tests::add_result_partial_eq ... ok
[INFO] [stdout] test commands_file::tests::add_result_text_fields_accessible ... ok
[INFO] [stdout] test commands_file::tests::expand_add_globs_no_glob ... ok
[INFO] [stdout] test commands_file::tests::expand_add_globs_no_matches ... ok
[INFO] [stdout] test commands_file::tests::expand_add_globs_with_glob ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_at_end_of_string_no_path ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_at_followed_by_space ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_mixed_real_and_fake ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_multiple_mentions ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_no_mentions ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_nonexistent_file_unchanged ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_path_with_dirs ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_resolves_real_file ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_skips_email_like ... ok
[INFO] [stdout] test commands_file::tests::expand_file_mentions_with_line_range ... ok
[INFO] [stdout] test commands_file::tests::format_add_content_basic ... ok
[INFO] [stdout] test commands_file::tests::format_add_content_wraps_in_code_block ... ok
[INFO] [stdout] test commands_file::tests::invalid_urls ... ok
[INFO] [stdout] test commands_file::tests::is_image_extension_case_insensitive ... ok
[INFO] [stdout] test commands_file::tests::is_image_extension_no_extension ... ok
[INFO] [stdout] test commands_file::tests::is_image_extension_non_image_files ... ok
[INFO] [stdout] test commands_file::tests::is_image_extension_supported_formats ... ok
[INFO] [stdout] test commands_file::tests::is_image_extension_with_full_paths ... ok
[INFO] [stdout] test commands_file::tests::mime_type_bmp ... ok
[INFO] [stdout] test commands_file::tests::mime_type_case_insensitive ... ok
[INFO] [stdout] test commands_file::tests::mime_type_gif ... ok
[INFO] [stdout] test commands_file::tests::mime_type_jpg_and_jpeg ... ok
[INFO] [stdout] test commands_file::tests::mime_type_png ... ok
[INFO] [stdout] test commands_file::tests::mime_type_unknown_extension ... ok
[INFO] [stdout] test commands_file::tests::mime_type_webp ... ok
[INFO] [stdout] test commands_file::tests::parse_add_arg_simple_path ... ok
[INFO] [stdout] test commands_file::tests::parse_add_arg_windows_path_with_range ... ok
[INFO] [stdout] test commands_file::tests::parse_add_arg_with_colon_in_path_no_range ... ok
[INFO] [stdout] test commands_file::tests::parse_add_arg_with_line_range ... ok
[INFO] [stdout] test commands_file::tests::parse_add_arg_with_single_line ... ok
[INFO] [stdout] test commands_file::tests::read_image_for_add_jpg_mime_type ... ok
[INFO] [stdout] test commands_file::tests::read_image_for_add_nonexistent_file ... ok
[INFO] [stdout] test commands_file::tests::read_image_for_add_valid_png ... ok
[INFO] [stdout] test commands_file::tests::read_image_for_add_webp_mime_type ... ok
[INFO] [stdout] test commands_file::tests::strip_html_basic_paragraph ... ok
[INFO] [stdout] test commands_file::tests::strip_html_case_insensitive_tags ... ok
[INFO] [stdout] test commands_file::tests::strip_html_chinese_japanese ... ok
[INFO] [stdout] test commands_file::tests::strip_html_collapses_whitespace ... ok
[INFO] [stdout] test commands_file::tests::strip_html_converts_br_to_newline ... ok
[INFO] [stdout] test commands_file::tests::strip_html_converts_li_to_bullets ... ok
[INFO] [stdout] test commands_file::tests::strip_html_decodes_entities ... ok
[INFO] [stdout] test commands_file::tests::strip_html_decodes_numeric_entities ... ok
[INFO] [stdout] test commands_file::tests::strip_html_decodes_quotes_and_apostrophes ... ok
[INFO] [stdout] test commands_file::tests::strip_html_emoji_in_tags ... ok
[INFO] [stdout] test commands_file::tests::strip_html_empty_input ... ok
[INFO] [stdout] test commands_file::tests::strip_html_headings ... ok
[INFO] [stdout] test commands_file::tests::strip_html_mixed_multibyte ... ok
[INFO] [stdout] test commands_file::tests::strip_html_nbsp ... ok
[INFO] [stdout] test commands_file::tests::strip_html_nested_tags ... ok
[INFO] [stdout] test commands_file::tests::strip_html_no_tags ... ok
[INFO] [stdout] test commands_file::tests::strip_html_non_ascii_content ... ok
[INFO] [stdout] test commands_file::tests::strip_html_non_ascii_in_skip_tag ... ok
[INFO] [stdout] test commands_file::tests::strip_html_non_ascii_truncation ... ok
[INFO] [stdout] test commands_file::tests::strip_html_removes_nav_footer_header ... ok
[INFO] [stdout] test commands_file::tests::strip_html_removes_script_and_style ... ok
[INFO] [stdout] test commands_file::tests::strip_html_truncates_long_content ... ok
[INFO] [stdout] test commands_file::tests::test_add_command_recognized ... ok
[INFO] [stdout] test commands_file::tests::test_add_in_help_text ... ok
[INFO] [stdout] test commands_file::tests::test_apply_help_text_exists ... ok
[INFO] [stdout] test commands_file::tests::test_apply_in_help_text ... ok
[INFO] [stdout] test commands_file::tests::test_apply_in_known_commands ... ok
[INFO] [stdout] test commands_file::tests::test_apply_parse_args_check ... ok
[INFO] [stdout] test commands_file::tests::test_apply_parse_args_check_after_file ... ok
[INFO] [stdout] test commands_file::tests::test_apply_parse_args_empty ... ok
[INFO] [stdout] test commands_file::tests::test_apply_parse_args_empty_with_spaces ... ok
[INFO] [stdout] test commands_file::tests::test_apply_parse_args_file ... ok
[INFO] [stdout] test commands_file::tests::test_apply_patch_from_string_empty ... ok
[INFO] [stdout] test cli::tests::test_context_strategy_absent_defaults_to_compaction ... ok
[INFO] [stdout] test commands_file::tests::test_apply_patch_nonexistent_file ... ok
[INFO] [stdout] test commands_file::tests::test_apply_tab_completion ... ok
[INFO] [stdout] test commands_file::tests::test_apply_tab_completion_filters ... ok
[INFO] [stdout] test cli::tests::test_parse_fallback_case_insensitive ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_multiple_files ... ok
[INFO] [stdout] test cli::tests::test_print_system_prompt_flag_default_false ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_no_args_returns_empty ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_nonexistent_file ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_real_file ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_with_line_range ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_with_space_no_args_returns_empty ... ok
[INFO] [stdout] test commands_file::tests::valid_urls ... ok
[INFO] [stdout] test commands_git::tests::build_review_prompt_contains_content ... ok
[INFO] [stdout] test commands_git::tests::build_review_prompt_contains_label ... ok
[INFO] [stdout] test commands_git::tests::build_review_prompt_contains_review_criteria ... ok
[INFO] [stdout] test commands_git::tests::build_review_prompt_does_not_truncate_small_content ... ok
[INFO] [stdout] test cli::tests::test_parse_fallback_missing ... ok
[INFO] [stdout] test commands_git::tests::build_review_prompt_truncates_large_content ... ok
[INFO] [stdout] test commands_git::tests::build_review_prompt_wraps_in_code_block ... ok
[INFO] [stdout] test commands_git::tests::build_undo_context_includes_all_actions ... ok
[INFO] [stdout] test commands_git::tests::build_undo_context_recommends_rereading_files ... ok
[INFO] [stdout] test commands_git::tests::build_undo_context_single_action ... ok
[INFO] [stdout] test commands_git::tests::build_undo_context_warns_about_stale_references ... ok
[INFO] [stdout] test commands_git::tests::diff_stat_entry_equality ... ok
[INFO] [stdout] test commands_git::tests::diff_stat_summary_round_trip ... ok
[INFO] [stdout] test commands_git::tests::format_diff_stat_mixed_changes ... ok
[INFO] [stdout] test commands_git::tests::format_diff_stat_single_entry_insertions_only ... ok
[INFO] [stdout] test commands_git::tests::format_diff_stat_empty_entries ... ok
[INFO] [stdout] test commands_git::tests::format_diff_stat_single_entry_deletions_only ... ok
[INFO] [stdout] test commands_file::tests::test_apply_patch_from_string_valid_in_git_repo ... ok
[INFO] [stdout] test commands_git::tests::format_diff_stat_singular_file ... ok
[INFO] [stdout] test commands_git::tests::handle_undo_returns_none_on_bad_arg ... ok
[INFO] [stdout] test commands_git::tests::handle_undo_dispatches_last_commit ... ok
[INFO] [stdout] test commands_git::tests::handle_undo_returns_none_on_zero_count ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_binary_file ... ok
[INFO] [stdout] test cli::tests::test_no_update_check_default_false ... ok
[INFO] [stdout] test commands_git::tests::handle_undo_returns_some_when_files_reverted ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_deletions_only ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_insertions_only ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_empty_input ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_multiple_files ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_whitespace_only ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_comment_without_text_is_help ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_single_file ... ok
[INFO] [stdout] test commands_git::tests::parse_diff_stat_no_summary_line ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_create_case_insensitive ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_empty_is_list ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_create_draft ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_create ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_invalid_is_help ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_number_checkout ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_number_diff ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_number_is_view ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_unknown_subcommand_is_help ... ok
[INFO] [stdout] test commands_git::tests::handle_undo_returns_none_on_empty_history ... ok
[INFO] [stdout] test commands_git::tests::test_build_review_content_existing_file ... ok
[INFO] [stdout] test commands_git::tests::test_build_review_content_nonexistent_file ... ok
[INFO] [stdout] test commands_git::tests::parse_pr_args_number_comment ... ok
[INFO] [stdout] test commands_git::tests::test_build_review_prompt_contains_content ... ok
[INFO] [stdout] test commands_git::tests::test_colorize_blame_line_no_paren ... ok
[INFO] [stdout] test commands_file::tests::test_handle_add_glob_pattern ... ok
[INFO] [stdout] test commands_git::tests::test_build_review_prompt_truncates_large_content ... ok
[INFO] [stdout] test commands_git::tests::test_build_review_content_empty_arg_in_git_repo ... ok
[INFO] [stdout] test commands_git::tests::test_colorize_blame_line_typical ... ok
[INFO] [stdout] test commands_git::tests::test_colorize_blame_multiple_lines ... ok
[INFO] [stdout] test commands_git::tests::test_format_diff_stat_empty ... ok
[INFO] [stdout] test commands_git::tests::test_format_diff_stat_multiple_entries ... ok
[INFO] [stdout] test commands_git::tests::test_format_diff_stat_insertions_only_no_deletions_shown ... ok
[INFO] [stdout] test commands_git::tests::test_format_diff_stat_single_entry ... ok
[INFO] [stdout] test commands_git::tests::test_init_command_recognized ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_file_only ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_invalid_range_reversed ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_no_args_with_spaces ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_no_args ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_non_numeric_range_treated_as_file ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_single_line_range ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_with_range ... ok
[INFO] [stdout] test commands_git::tests::test_parse_blame_args_zero_start ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_all_flags ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_cached ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_empty ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_file ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_name_only ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_staged ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_args_staged_and_file ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_deletions_only ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_basic ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_empty ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_no_summary_line ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_multiple_files ... ok
[INFO] [stdout] test commands_git::tests::test_pr_command_matching ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_single_file ... ok
[INFO] [stdout] test commands_git::tests::test_parse_diff_stat_insertions_only ... ok
[INFO] [stdout] test commands_git::tests::test_pr_command_recognized ... ok
[INFO] [stdout] test commands_git::tests::test_pr_number_parsing ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_case_insensitive ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_checkout ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_comment ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_comment_requires_text ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_create_draft ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_create ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_create_no_flag ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_diff ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_invalid ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_list ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_recognized ... ok
[INFO] [stdout] test commands_git::tests::test_pr_subcommand_view ... ok
[INFO] [stdout] test commands_git::tests::test_review_command_matching ... ok
[INFO] [stdout] test commands_git::tests::test_review_command_recognized ... ok
[INFO] [stdout] test commands_git::tests::test_review_help_text_present ... ok
[INFO] [stdout] test commands_git::tests::undo_last_commit_context_format ... ok
[INFO] [stdout] test commands_info::tests::test_parse_changelog_count_clamped ... ok
[INFO] [stdout] test commands_info::tests::test_parse_changelog_count_custom ... ok
[INFO] [stdout] test commands_info::tests::test_parse_changelog_count_default ... ok
[INFO] [stdout] test commands_info::tests::test_parse_changelog_count_invalid ... ok
[INFO] [stdout] test commands_info::tests::test_tokens_display_labels ... ok
[INFO] [stdout] test commands_info::tests::test_tokens_display_with_large_values ... ok
[INFO] [stdout] test commands_map::tests::ast_grep_rule_exists_for_supported_languages ... ok
[INFO] [stdout] test commands_map::tests::ast_grep_rule_none_for_unknown_language ... ok
[INFO] [stdout] test commands_map::tests::detect_language_known_extensions ... ok
[INFO] [stdout] test commands_map::tests::detect_language_unknown_extension ... ok
[INFO] [stdout] test commands_info::tests::test_tokens_labels_are_clarified ... ok
[INFO] [stdout] test commands_info::tests::test_handle_status_with_timing ... ok
[INFO] [stdout] test commands_info::tests::test_handle_changelog_no_panic ... ok
[INFO] [stdout] test commands_bg::tests::test_kill_running ... ok
[INFO] [stdout] test commands_map::tests::extract_go_method ... ok
[INFO] [stdout] test commands_map::tests::extract_js_symbols ... ok
[INFO] [stdout] test commands_map::tests::extract_python_skips_indented ... ok
[INFO] [stdout] test commands_map::tests::extract_python_symbols ... ok
[INFO] [stdout] test commands_map::tests::extract_go_symbols ... ok
[INFO] [stdout] test commands_map::tests::extract_java_symbols ... ok
[INFO] [stdout] test commands_map::tests::extract_rust_pub_visibility ... ok
[INFO] [stdout] test commands_map::tests::format_repo_map_basic ... ok
[INFO] [stdout] test commands_map::tests::format_repo_map_empty_project ... ok
[INFO] [stdout] test commands_map::tests::extract_symbols_ast_grep_returns_none_when_sg_unavailable ... ok
[INFO] [stdout] test commands_map::tests::generate_repo_map_for_prompt_does_not_panic ... ok
[INFO] [stdout] test commands_map::tests::generate_repo_map_respects_size_limit ... ok
[INFO] [stdout] test cli::tests::test_print_system_prompt_flag_parsed ... ok
[INFO] [stdout] test cli::tests::test_parse_args_audit_flag ... ok
[INFO] [stdout] test commands_map::tests::handle_map_no_panic_empty ... ok
[INFO] [stdout] test commands_map::tests::handle_map_no_panic_with_all ... ok
[INFO] [stdout] test commands_map::tests::map_backend_display ... ok
[INFO] [stdout] test commands_map::tests::map_has_detailed_help ... ok
[INFO] [stdout] test commands_map::tests::map_in_help_text ... ok
[INFO] [stdout] test commands_map::tests::map_in_known_commands ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_empty_input ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_go ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_invalid_json ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_private_fn ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_python ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_rust_enum_and_trait ... ok
[INFO] [stdout] test commands_map::tests::handle_map_no_panic_with_regex_and_all ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_rust_function ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_rust_impl ... ok
[INFO] [stdout] test commands_map::tests::parse_ast_grep_symbols_rust_struct ... ok
[INFO] [stdout] test commands_map::tests::handle_map_no_panic_with_regex_flag ... ok
[INFO] [stdout] test commands_map::tests::parse_symbol_from_text_typescript ... ok
[INFO] [stdout] test commands_map::tests::parse_symbol_from_text_various_rust ... ok
[INFO] [stdout] test commands_map::tests::extract_rust_skips_test_module ... ok
[INFO] [stdout] test commands_memory::tests::test_forget_command_matching ... ok
[INFO] [stdout] test commands_memory::tests::test_forget_command_recognized ... ok
[INFO] [stdout] test commands_memory::tests::test_memories_command_recognized ... ok
[INFO] [stdout] test commands_memory::tests::test_memories_command_with_search_arg ... ok
[INFO] [stdout] test commands_memory::tests::test_memory_format_for_prompt_integration ... ok
[INFO] [stdout] test commands_memory::tests::test_remember_command_recognized ... ok
[INFO] [stdout] test commands_memory::tests::test_remember_command_matching ... ok
[INFO] [stdout] test commands_memory::tests::test_search_memories_from_command ... ok
[INFO] [stdout] test commands_project::tests::build_commands_go ... ok
[INFO] [stdout] test commands_project::tests::build_commands_python ... ok
[INFO] [stdout] test commands_project::tests::build_commands_node ... ok
[INFO] [stdout] test commands_project::tests::build_commands_rust ... ok
[INFO] [stdout] test commands_project::tests::build_commands_unknown_empty ... ok
[INFO] [stdout] test commands_project::tests::build_plan_prompt_contains_no_tools_instruction ... ok
[INFO] [stdout] test commands_project::tests::build_plan_prompt_contains_structure_sections ... ok
[INFO] [stdout] test commands_map::tests::handle_map_no_panic_with_path ... ok
[INFO] [stdout] test commands_project::tests::build_plan_prompt_contains_task ... ok
[INFO] [stdout] test commands_project::tests::cargo_toml_name_with_single_quotes ... ok
[INFO] [stdout] test commands_project::tests::cargo_toml_name_with_spaces_around_equals ... ok
[INFO] [stdout] test commands_project::tests::detect_project_name_cargo_over_readme ... ok
[INFO] [stdout] test commands_git::tests::undo_last_commit_in_real_repo ... ok
[INFO] [stdout] test commands_project::tests::detect_project_name_from_readme ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_go ... ok
[INFO] [stdout] test commands_project::tests::detect_project_name_from_package_json ... ok
[INFO] [stdout] test commands_project::tests::detect_project_name_fallback_to_dir_name ... ok
[INFO] [stdout] test commands_project::tests::detect_project_name_from_cargo_toml ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_make_lowercase ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_node ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_make ... ok
[INFO] [stdout] test commands_map::tests::extract_typescript_symbols ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_lint ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_python_pyproject ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_priority_rust_over_make ... ok
[INFO] [stdout] test commands_project::tests::extract_readme_empty_title_skipped ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_rust ... ok
[INFO] [stdout] test commands_project::tests::extract_readme_skips_blank_lines ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_python_setup_cfg ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_python_setup_py ... ok
[INFO] [stdout] test commands_project::tests::parse_plan_task_preserves_full_description ... ok
[INFO] [stdout] test commands_project::tests::parse_plan_task_whitespace_only ... ok
[INFO] [stdout] test commands_project::tests::parse_plan_task_empty ... ok
[INFO] [stdout] test commands_project::tests::detect_project_type_unknown_empty_dir ... ok
[INFO] [stdout] test commands_memory::tests::test_memory_crud_roundtrip ... ok
[INFO] [stdout] test commands_project::tests::parse_plan_task_with_description ... ok
[INFO] [stdout] test commands_project::tests::generate_init_content_unknown_project ... ok
[INFO] [stdout] test commands_project::tests::project_type_display ... ok
[INFO] [stdout] test commands_project::tests::scan_important_dirs_empty_dir ... ok
[INFO] [stdout] test commands_project::tests::generate_init_content_rust_project ... ok
[INFO] [stdout] test commands_project::tests::scan_important_dirs_ignores_files ... ok
[INFO] [stdout] test commands_project::tests::generate_init_content_includes_dirs_and_files ... ok
[INFO] [stdout] test commands_project::tests::test_build_commands_for_node ... ok
[INFO] [stdout] test commands_project::tests::scan_important_dirs_finds_known_dirs ... ok
[INFO] [stdout] test commands_project::tests::test_build_commands_for_rust ... ok
[INFO] [stdout] test commands_project::tests::scan_important_files_empty_dir ... ok
[INFO] [stdout] test commands_project::tests::test_build_commands_for_unknown ... ok
[INFO] [stdout] test commands_project::tests::test_build_plan_prompt_structure ... ok
[INFO] [stdout] test commands_project::tests::test_context_default_behavior ... ok
[INFO] [stdout] test commands_project::tests::scan_important_files_ignores_unknown ... ok
[INFO] [stdout] test commands_project::tests::test_context_subcommands_list ... ok
[INFO] [stdout] test commands_project::tests::scan_important_files_finds_known_files ... ok
[INFO] [stdout] test commands_project::tests::test_context_system_consecutive_headers ... ok
[INFO] [stdout] test commands_project::tests::test_context_system_empty_prompt ... ok
[INFO] [stdout] test commands_project::tests::test_context_system_no_headers ... ok
[INFO] [stdout] test commands_project::tests::test_context_system_preamble_before_header ... ok
[INFO] [stdout] test commands_project::tests::test_context_system_sections ... ok
[INFO] [stdout] test commands_project::tests::test_context_system_subcommand ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_name_fallback_to_dir ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_name_from_package_json ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_go ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_name_from_readme ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_makefile ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_python_pyproject ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_priority_rust_over_makefile ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_python_setup_py ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_rust ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_node ... ok
[INFO] [stdout] test commands_project::tests::test_docs_command_matching ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_type_unknown ... ok
[INFO] [stdout] test commands_project::tests::test_docs_command_recognized ... ok
[INFO] [stdout] test commands_project::tests::test_docs_crate_arg_extraction ... ok
[INFO] [stdout] test commands_project::tests::test_estimate_tokens ... ok
[INFO] [stdout] test commands_project::tests::test_format_todo_list_empty ... ok
[INFO] [stdout] test commands_project::tests::test_format_todo_list ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_add ... ok
[INFO] [stdout] test commands_project::tests::test_generate_init_content_empty_dir ... ok
[INFO] [stdout] test commands_project::tests::test_detect_project_name_rust ... FAILED
[INFO] [stdout] test commands_project::tests::test_generate_init_content_rust_project ... ok
[INFO] [stdout] test commands_map::tests::extract_rust_symbols_basic ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_add_empty_description ... ok
[INFO] [stdout] test commands_project::tests::test_generate_init_content_node_project ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_show_empty ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_unknown_subcommand ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_clear_via_command ... ok
[INFO] [stdout] test commands_project::tests::test_parse_plan_task_empty_returns_none ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_done ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_wip ... ok
[INFO] [stdout] test commands_project::tests::test_parse_plan_task_extracts_task ... ok
[INFO] [stdout] test commands_project::tests::test_plan_in_help_text ... ok
[INFO] [stdout] test commands_project::tests::test_handle_todo_remove_via_command ... ok
[INFO] [stdout] test commands_project::tests::test_plan_in_known_commands ... ok
[INFO] [stdout] test commands_project::tests::test_scan_important_dirs_in_current_project ... ok
[INFO] [stdout] test commands_project::tests::test_scan_important_dirs_empty_dir ... ok
[INFO] [stdout] test commands_project::tests::test_skill_in_known_commands ... ok
[INFO] [stdout] test commands_project::tests::test_skill_in_help_text ... ok
[INFO] [stdout] test commands_project::tests::test_scan_important_files_in_current_project ... ok
[INFO] [stdout] test commands_project::tests::test_scan_important_files_empty_dir ... ok
[INFO] [stdout] test commands_project::tests::test_scan_important_dirs_with_subdirs ... ok
[INFO] [stdout] test commands_project::tests::test_skill_list_empty ... ok
[INFO] [stdout] test commands_project::tests::test_project_type_display ... ok
[INFO] [stdout] test commands_project::tests::test_scan_important_files_with_readme ... ok
[INFO] [stdout] test commands_project::tests::test_skill_path_empty ... ok
[INFO] [stdout] test commands_project::tests::test_skill_show_bare ... ok
[INFO] [stdout] test commands_project::tests::test_skill_unknown_subcommand ... ok
[INFO] [stdout] test commands_project::tests::test_skill_list_with_real_skills ... ok
[INFO] [stdout] test commands_project::tests::test_skill_show_existing ... ok
[INFO] [stdout] test commands_project::tests::test_skill_with_temp_dir ... ok
[INFO] [stdout] test commands_project::tests::test_skill_show_nonexistent ... ok
[INFO] [stdout] test commands_project::tests::test_todo_clear ... ok
[INFO] [stdout] test commands_project::tests::test_todo_help_exists ... ok
[INFO] [stdout] test commands_project::tests::test_todo_in_help_text ... ok
[INFO] [stdout] test commands_project::tests::test_todo_in_known_commands ... ok
[INFO] [stdout] test commands_project::tests::test_todo_add_returns_incrementing_ids ... ok
[INFO] [stdout] test commands_project::tests::test_todo_list_empty ... ok
[INFO] [stdout] test commands_project::tests::test_todo_remove ... ok
[INFO] [stdout] test commands_project::tests::test_skill_path ... ok
[INFO] [stdout] test commands_project::tests::test_todo_remove_invalid_id ... ok
[INFO] [stdout] test commands_refactor::tests::apply_rename_empty_matches ... ok
[INFO] [stdout] test commands_project::tests::test_todo_update_status ... ok
[INFO] [stdout] test commands_project::tests::test_todo_update_invalid_id ... ok
[INFO] [stdout] test commands_refactor::tests::extract_command_in_known_commands ... ok
[INFO] [stdout] test commands_refactor::tests::apply_rename_modifies_files ... ok
[INFO] [stdout] test commands_refactor::tests::apply_rename_no_partial_replace ... ok
[INFO] [stdout] test commands_refactor::tests::apply_rename_preserves_non_matching_lines ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_source_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_creates_target_if_missing ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_moves_const ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_among_multiple ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_const ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_async_fn ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_moves_function ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_const_with_doc ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_moves_static ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_impl ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_nested_braces ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_const_multiline ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_no_partial_match ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_moves_type_alias ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_enum ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_pub_fn ... ok
[INFO] [stdout] test commands_refactor::tests::extract_symbol_with_doc_comments_moves_docs ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_static ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_static_mut ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_pub_const_crate ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_simple_fn ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_struct ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_trait ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_type_alias ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_unit_struct ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_type_alias_simple ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_at_start_of_line ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_with_attributes ... ok
[INFO] [stdout] test commands_refactor::tests::find_symbol_block_with_doc_comments ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_at_end_of_line ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_empty_pattern ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_exact_match ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_dots_are_boundaries ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_empty_text ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_parens_are_boundaries ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_no_match_substring ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_simple_match ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_multiple_matches ... ok
[INFO] [stdout] test commands_refactor::tests::format_rename_preview_multiple_files ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_with_underscore ... ok
[INFO] [stdout] test commands_refactor::tests::format_rename_preview_no_matches ... ok
[INFO] [stdout] test commands_refactor::tests::find_word_boundary_no_match_prefix ... ok
[INFO] [stdout] test commands_refactor::tests::parse_extract_args_too_many ... ok
[INFO] [stdout] test commands_refactor::tests::format_rename_preview_shows_file_and_line ... ok
[INFO] [stdout] test commands_refactor::tests::parse_extract_args_valid ... ok
[INFO] [stdout] test commands_refactor::tests::parse_extract_args_missing_target ... ok
[INFO] [stdout] test commands_refactor::tests::parse_extract_args_empty ... ok
[INFO] [stdout] test commands_refactor::tests::parse_rename_args_no_args ... ok
[INFO] [stdout] test commands_refactor::tests::parse_rename_args_too_many_args ... ok
[INFO] [stdout] test commands_refactor::tests::parse_rename_args_extra_whitespace ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_empty_pattern ... ok
[INFO] [stdout] test commands_refactor::tests::parse_rename_args_one_arg ... ok
[INFO] [stdout] test commands_refactor::tests::parse_rename_args_valid ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_no_matches ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_multiple ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_no_partial ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_with_longer_replacement ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_simple ... ok
[INFO] [stdout] test commands_refactor::tests::replace_word_boundary_with_shorter_replacement ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_impl_blocks_single ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_impl_blocks_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_method_in_impl_basic ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_impl_blocks_multiple ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_method_in_impl_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_method_in_impl_with_self_ref ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_method_with_attributes ... ok
[INFO] [stdout] test commands_refactor::tests::test_find_method_with_doc_comments ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_in_help_text ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_in_known_commands ... ok
[INFO] [stdout] test commands_refactor::tests::test_parse_move_args_basic ... ok
[INFO] [stdout] test commands_refactor::tests::test_parse_move_args_cross_file ... ok
[INFO] [stdout] test commands_refactor::tests::test_parse_move_args_empty ... ok
[INFO] [stdout] test commands_refactor::tests::test_parse_move_args_missing_method ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_method_same_file ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_source_impl_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_method_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_method_self_reference_warning ... ok
[INFO] [stdout] test commands_refactor::tests::test_parse_move_args_too_many ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_method_cross_file ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_help_exists ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_method_with_doc_comments ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_in_help_text ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_in_known_commands ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_no_args_shows_help ... ok
[INFO] [stdout] test commands_refactor::tests::test_move_method_target_impl_not_found ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_unknown_subcommand ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_tab_completion_filters ... ok
[INFO] [stdout] test commands_refactor::tests::test_reindent_method ... ok
[INFO] [stdout] test commands_refactor::tests::test_rename_in_project_empty_new_name ... ok
[INFO] [stdout] test commands_refactor::tests::test_refactor_tab_completion ... ok
[INFO] [stdout] test commands_refactor::tests::test_rename_in_project_empty_old_name ... ok
[INFO] [stdout] test commands_refactor::tests::test_rename_in_project_same_name ... ok
[INFO] [stdout] test commands_refactor::tests::test_rename_result_fields ... ok
[INFO] [stdout] test commands_retry::tests::test_changes_command_not_confused_with_other_commands ... ok
[INFO] [stdout] test commands_retry::tests::test_format_exit_summary_empty_returns_none ... ok
[INFO] [stdout] test commands_retry::tests::test_format_exit_summary_all_writes ... ok
[INFO] [stdout] test commands_retry::tests::test_format_exit_summary_mixed ... ok
[INFO] [stdout] test commands_retry::tests::test_format_exit_summary_single_write ... ok
[INFO] [stdout] test commands_retry::tests::test_format_exit_summary_single_edit ... ok
[INFO] [stdout] test commands_retry::tests::test_handle_changes_diff_flag_does_not_panic ... ok
[INFO] [stdout] test commands_retry::tests::test_changes_command_recognized ... ok
[INFO] [stdout] test commands_search::tests::extract_first_meaningful_line_all_blank ... ok
[INFO] [stdout] test commands_retry::tests::test_handle_changes_empty_does_not_panic ... ok
[INFO] [stdout] test commands_retry::tests::test_handle_changes_with_entries_does_not_panic ... ok
[INFO] [stdout] test commands_retry::tests::test_wants_diff_flag_parsing ... ok
[INFO] [stdout] test commands_search::tests::extract_first_meaningful_line_basic ... ok
[INFO] [stdout] test commands_search::tests::extract_first_meaningful_line_skips_blanks ... ok
[INFO] [stdout] test commands_search::tests::extract_first_meaningful_line_truncates_long ... ok
[INFO] [stdout] test commands_search::tests::extract_first_meaningful_line_empty ... ok
[INFO] [stdout] test commands_search::tests::find_match_equality ... ok
[INFO] [stdout] test commands_search::tests::find_match_debug ... ok
[INFO] [stdout] test commands_search::tests::format_grep_results_single_match ... ok
[INFO] [stdout] test commands_search::tests::format_grep_results_empty ... ok
[INFO] [stdout] test commands_search::tests::format_grep_results_with_matches ... ok
[INFO] [stdout] test commands_search::tests::format_grep_results_truncation ... ok
[INFO] [stdout] test commands_search::tests::format_project_index_long_path_truncated ... ok
[INFO] [stdout] test commands_search::tests::format_project_index_multiple_files ... ok
[INFO] [stdout] test commands_refactor::tests::test_rename_in_project_scoped_no_match ... ok
[INFO] [stdout] test commands_search::tests::format_project_index_single_file ... ok
[INFO] [stdout] test commands_search::tests::format_project_index_empty ... ok
[INFO] [stdout] test commands_search::tests::fuzzy_score_exact_filename ... ok
[INFO] [stdout] test commands_search::tests::fuzzy_score_extension_match ... ok
[INFO] [stdout] test commands_search::tests::fuzzy_score_no_match ... ok
[INFO] [stdout] test commands_search::tests::fuzzy_score_case_insensitive ... ok
[INFO] [stdout] test commands_search::tests::fuzzy_score_directory_match_lower_than_filename ... ok
[INFO] [stdout] test commands_search::tests::fuzzy_score_shorter_path_preferred ... ok
[INFO] [stdout] test commands_search::tests::grep_in_help_text ... ok
[INFO] [stdout] test commands_search::tests::grep_in_known_commands ... ok
[INFO] [stdout] test commands_search::tests::highlight_match_case_insensitive ... ok
[INFO] [stdout] test commands_search::tests::highlight_match_contains_pattern ... ok
[INFO] [stdout] test commands_search::tests::highlight_match_no_match_returns_plain ... ok
[INFO] [stdout] test commands_search::tests::is_binary_extension_case_insensitive ... ok
[INFO] [stdout] test commands_search::tests::is_binary_extension_images ... ok
[INFO] [stdout] test commands_search::tests::is_binary_extension_lock_files ... ok
[INFO] [stdout] test commands_search::tests::is_binary_extension_source_files ... ok
[INFO] [stdout] test commands_search::tests::is_binary_extension_archives ... ok
[INFO] [stdout] test commands_search::tests::is_binary_extension_compiled ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_basic_pattern ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_case_sensitive_flag ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_case_long_flag ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_only_flag_returns_none ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_empty_returns_none ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_quoted_pattern ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_backward_compat_single_word ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_with_path ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_quoted_pattern_with_path ... ok
[INFO] [stdout] test commands_search::tests::parse_grep_args_quoted_pattern_case_sensitive ... ok
[INFO] [stdout] test commands_search::tests::test_ast_in_help_text ... ok
[INFO] [stdout] test commands_retry::tests::test_handle_changes_diff_flag_with_entries_does_not_panic ... ok
[INFO] [stdout] test commands_search::tests::test_ast_in_known_commands ... ok
[INFO] [stdout] test commands_search::tests::test_ast_tab_completion ... ok
[INFO] [stdout] test commands_search::tests::test_ast_tab_completion_filters ... ok
[INFO] [stdout] test commands_search::tests::test_extract_first_meaningful_line_skips_blanks ... ok
[INFO] [stdout] test commands_search::tests::test_find_command_matching ... ok
[INFO] [stdout] test commands_search::tests::test_find_command_recognized ... ok
[INFO] [stdout] test commands_search::tests::test_extract_first_meaningful_line_truncates_long_lines ... ok
[INFO] [stdout] test commands_search::tests::test_extract_first_meaningful_line_empty ... ok
[INFO] [stdout] test commands_search::tests::test_format_project_index_empty ... ok
[INFO] [stdout] test commands_search::tests::test_build_project_index_tempdir ... ok
[INFO] [stdout] test commands_search::tests::test_format_project_index_single_file ... ok
[INFO] [stdout] test commands_search::tests::list_project_files_returns_known_file ... ok
[INFO] [stdout] test commands_search::tests::test_format_project_index_with_entries ... ok
[INFO] [stdout] test commands_search::tests::test_fuzzy_score_basic_match ... ok
[INFO] [stdout] test commands_search::tests::test_fuzzy_score_filename_match_higher ... ok
[INFO] [stdout] test commands_search::tests::test_fuzzy_score_case_insensitive ... ok
[INFO] [stdout] test commands_search::tests::test_fuzzy_score_start_of_filename_bonus ... ok
[INFO] [stdout] test commands_search::tests::test_fuzzy_score_no_match ... ok
[INFO] [stdout] test commands_search::tests::test_handle_ast_grep_no_panic_empty ... ok
[INFO] [stdout] test commands_search::tests::test_index_entry_construction ... ok
[INFO] [stdout] test commands_search::tests::test_highlight_match_basic ... ok
[INFO] [stdout] test commands_search::tests::test_is_binary_extension ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_empty ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_flags_before_pattern ... ok
[INFO] [stdout] test commands_search::tests::test_ast_grep_search_no_sg ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_missing_in_value ... ok
[INFO] [stdout] test commands_search::tests::handle_grep_finds_real_matches ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_with_lang ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_with_lang_and_path ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_missing_lang_value ... ok
[INFO] [stdout] test commands_search::tests::test_parse_ast_grep_args_simple_pattern ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_adjacent_to_text ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_double_quoted_group ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_empty ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_empty_quotes ... ok
[INFO] [stdout] test commands_search::tests::test_handle_ast_grep_no_panic_with_pattern ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_mixed ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_simple_words ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_multiple_spaces ... ok
[INFO] [stdout] test commands_search::tests::tokenize_quoted_no_quotes ... ok
[INFO] [stdout] test commands_search::tests::test_is_ast_grep_available_no_panic ... ok
[INFO] [stdout] test commands_search::tests::walk_directory_skips_hidden ... ok
[INFO] [stdout] test commands_search::tests::walk_directory_finds_files ... ok
[INFO] [stdout] test commands_session::tests::test_bookmarks_create_and_list ... ok
[INFO] [stdout] test commands_session::tests::test_auto_save_session_path_constant ... ok
[INFO] [stdout] test commands_session::tests::test_bookmarks_multiple_entries ... ok
[INFO] [stdout] test commands_session::tests::test_auto_save_creates_directory_and_file ... ok
[INFO] [stdout] test commands_session::tests::test_bookmarks_nonexistent_returns_none ... ok
[INFO] [stdout] test commands_session::tests::test_clear_confirmation_above_threshold_contains_count ... ok
[INFO] [stdout] test commands_session::tests::test_bookmarks_overwrite_same_name ... ok
[INFO] [stdout] test commands_search::tests::test_find_files_returns_sorted ... ok
[INFO] [stdout] test commands_search::tests::walk_directory_respects_max_depth ... ok
[INFO] [stdout] test commands_session::tests::test_clear_confirmation_above_threshold_contains_tokens ... ok
[INFO] [stdout] test commands_session::tests::test_clear_confirmation_at_threshold ... ok
[INFO] [stdout] test commands_search::tests::walk_directory_skips_node_modules ... ok
[INFO] [stdout] test commands_session::tests::test_clear_confirmation_just_above_threshold ... ok
[INFO] [stdout] test commands_session::tests::test_clear_force_in_known_commands ... ok
[INFO] [stdout] test commands_session::tests::test_clear_confirmation_empty_conversation ... ok
[INFO] [stdout] test commands_search::tests::test_find_files_no_results ... ok
[INFO] [stdout] test commands_session::tests::test_continue_session_path_fallback ... ok
[INFO] [stdout] test commands_session::tests::test_compact_thrash_detection_increments_on_low_reduction ... ok
[INFO] [stdout] test commands_session::tests::test_format_conversation_as_markdown_empty ... ok
[INFO] [stdout] test commands_session::tests::test_compact_thrash_constants ... ok
[INFO] [stdout] test commands_session::tests::test_format_conversation_as_markdown_skips_tool_calls ... ok
[INFO] [stdout] test commands_session::tests::test_format_conversation_as_markdown_mixed_messages ... ok
[INFO] [stdout] test commands_session::tests::test_continue_session_path_falls_back_to_default ... ok
[INFO] [stdout] test commands_session::tests::test_compact_thrash_detection_resets_on_meaningful_reduction ... ok
[INFO] [stdout] test commands_session::tests::test_is_compact_thrashing_boundary ... ok
[INFO] [stdout] test commands_session::tests::test_format_conversation_as_markdown_thinking_block ... ok
[INFO] [stdout] test commands_session::tests::test_handle_marks_empty_does_not_panic ... ok
[INFO] [stdout] test commands_session::tests::test_continue_session_path_prefers_auto_save ... ok
[INFO] [stdout] test commands_session::tests::test_format_conversation_as_markdown_user_message ... ok
[INFO] [stdout] test commands_session::tests::test_handle_marks_with_entries_does_not_panic ... ok
[INFO] [stdout] test commands_session::tests::test_jump_command_matching ... ok
[INFO] [stdout] test commands_session::tests::test_jump_command_recognized ... ok
[INFO] [stdout] test commands_session::tests::test_mark_command_recognized ... ok
[INFO] [stdout] test commands_session::tests::test_mark_command_matching ... ok
[INFO] [stdout] test commands_session::tests::test_last_session_exists_returns_bool ... ok
[INFO] [stdout] test commands_session::tests::test_marks_command_recognized ... ok
[INFO] [stdout] test commands_session::tests::test_parse_bookmark_name_with_name ... ok
[INFO] [stdout] test commands_session::tests::test_parse_bookmark_name_with_spaces ... ok
[INFO] [stdout] test commands_session::tests::test_parse_bookmark_name_empty ... ok
[INFO] [stdout] test commands_session::tests::test_parse_export_path_custom ... ok
[INFO] [stdout] test commands_session::tests::test_parse_bookmark_name_for_jump ... ok
[INFO] [stdout] test commands_session::tests::test_parse_export_path_whitespace ... ok
[INFO] [stdout] test commands_session::tests::test_parse_export_path_default ... ok
[INFO] [stdout] test commands_session::tests::test_parse_bookmark_name_whitespace_only ... ok
[INFO] [stdout] test commands_session::tests::test_parse_export_path_with_directory ... ok
[INFO] [stdout] test commands_session::tests::test_parse_stash_subcommand_default ... ok
[INFO] [stdout] test commands_session::tests::test_parse_stash_subcommand_drop ... ok
[INFO] [stdout] test commands_session::tests::test_parse_stash_subcommand_implicit_push_with_description ... ok
[INFO] [stdout] test commands_session::tests::test_parse_stash_subcommand_push ... ok
[INFO] [stdout] test commands_session::tests::test_proactive_compact_threshold_in_valid_range ... ok
[INFO] [stdout] test commands_session::tests::test_parse_stash_subcommand_list ... ok
[INFO] [stdout] test commands_session::tests::test_proactive_compact_threshold_is_lower_than_auto ... ok
[INFO] [stdout] test commands_session::tests::test_reset_compact_thrash ... ok
[INFO] [stdout] test commands_session::tests::test_parse_stash_subcommand_pop ... ok
[INFO] [stdout] test commands_session::tests::test_save_load_command_matching ... ok
[INFO] [stdout] test commands_session::tests::test_stash_drop_empty ... ok
[INFO] [stdout] test commands_session::tests::test_stash_drop_invalid_index ... ok
[INFO] [stdout] test commands_session::tests::test_stash_drop_out_of_range ... ok
[INFO] [stdout] test commands_session::tests::test_stash_entry_description_default ... ok
[INFO] [stdout] test commands_spawn::tests::test_format_spawn_result_empty_output ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_basic ... ok
[INFO] [stdout] test commands_spawn::tests::test_format_spawn_result_includes_id ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_basic_task ... ok
[INFO] [stdout] test commands_session::tests::test_stash_list_empty ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_empty ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_status ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_output_with_complex_path ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_with_output ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_status_returns_none ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_args_with_output_flag ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_task_empty ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_task_preserves_full_task ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_task_with_task ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_command_matching ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_command_recognized ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_context_prompt_with_messages ... ok
[INFO] [stdout] test commands_spawn::tests::test_parse_spawn_task_whitespace_only ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_context_prompt_without_context ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_complete_updates_status ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_context_prompt_truncates_large_context ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_status_display ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_count_by_status ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_new_is_empty ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_get_nonexistent ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_context_prompt_with_project_context ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_snapshot ... ok
[INFO] [stdout] test commands_spawn::tests::test_summarize_conversation_empty ... ok
[INFO] [stdout] test commands_spawn::tests::test_summarize_conversation_includes_roles ... ok
[INFO] [stdout] test config::tests::test_config_module_glob_match ... ok
[INFO] [stdout] test config::tests::test_config_module_parse_inline_table_empty ... ok
[INFO] [stdout] test config::tests::test_config_module_parse_directories ... ok
[INFO] [stdout] test config::tests::test_config_module_parse_inline_table ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_register_returns_sequential_ids ... ok
[INFO] [stdout] test config::tests::test_config_module_parse_mcp_servers ... ok
[INFO] [stdout] test config::tests::test_config_module_parse_permissions ... ok
[INFO] [stdout] test config::tests::test_config_module_parse_toml_array ... ok
[INFO] [stdout] test commands_spawn::tests::test_summarize_conversation_limits_messages ... ok
[INFO] [stdout] test config::tests::test_config_module_path_is_under_basic ... ok
[INFO] [stdout] test config::tests::test_config_module_permission_check ... ok
[INFO] [stdout] test config::tests::test_config_module_resolve_path_absolute ... ok
[INFO] [stdout] test config::tests::test_config_module_strip_quotes ... ok
[INFO] [stdout] test config::tests::test_config_module_resolve_path_normalizes_parent_dir ... ok
[INFO] [stdout] test context::tests::test_list_project_context_files_returns_vec ... ok
[INFO] [stdout] test commands_spawn::tests::test_spawn_tracker_fail_updates_status ... ok
[INFO] [stdout] test context::tests::test_get_project_file_listing_no_panic ... ok
[INFO] [stdout] test context::tests::test_get_recently_changed_files_no_duplicates ... ok
[INFO] [stdout] test context::tests::test_max_project_files_constant ... ok
[INFO] [stdout] test context::tests::test_get_recently_changed_files_respects_limit ... ok
[INFO] [stdout] test context::tests::test_get_recently_changed_files_in_git_repo ... ok
[INFO] [stdout] test context::tests::test_project_context_file_names_not_empty ... ok
[INFO] [stdout] test context::tests::test_yoyo_md_is_primary_context_file ... ok
[INFO] [stdout] test context::tests::test_max_recent_files_constant ... ok
[INFO] [stdout] test docs::tests::test_build_docs_display_no_desc_no_items ... ok
[INFO] [stdout] test docs::tests::test_build_docs_display_no_desc_with_items ... ok
[INFO] [stdout] test docs::tests::test_build_docs_display_with_desc_and_items ... ok
[INFO] [stdout] test docs::tests::test_extract_meta_description_basic ... ok
[INFO] [stdout] test docs::tests::test_build_docs_display_with_desc_no_items ... ok
[INFO] [stdout] test docs::tests::test_extract_meta_description_empty ... ok
[INFO] [stdout] test docs::tests::test_extract_meta_description_missing ... ok
[INFO] [stdout] test docs::tests::test_extract_meta_description_with_entities ... ok
[INFO] [stdout] test docs::tests::test_fetch_docs_item_invalid_crate ... ok
[INFO] [stdout] test docs::tests::test_fetch_docs_summary_invalid_crate_name ... ok
[INFO] [stdout] test docs::tests::test_format_docs_items_basic ... ok
[INFO] [stdout] test docs::tests::test_format_docs_items_capped_with_more ... ok
[INFO] [stdout] test context::tests::test_get_git_status_context_in_repo ... FAILED
[INFO] [stdout] test docs::tests::test_format_docs_items_empty ... ok
[INFO] [stdout] test docs::tests::test_format_docs_items_ordering ... ok
[INFO] [stdout] test docs::tests::test_is_valid_crate_name ... ok
[INFO] [stdout] test docs::tests::test_parse_docs_items_deduplication ... ok
[INFO] [stdout] test docs::tests::test_parse_docs_items_empty_html ... ok
[INFO] [stdout] test docs::tests::test_parse_docs_items_mixed_kinds ... ok
[INFO] [stdout] test docs::tests::test_parse_docs_items_modules ... ok
[INFO] [stdout] test docs::tests::test_parse_docs_items_no_matching_classes ... ok
[INFO] [stdout] test docs::tests::test_parse_docs_items_structs_enums_fns ... ok
[INFO] [stdout] test format::cost::tests::context_bar_normal_usage_unchanged ... ok
[INFO] [stdout] test format::cost::tests::context_bar_shows_less_than_one_percent_for_tiny_usage ... ok
[INFO] [stdout] test format::cost::tests::context_bar_zero_usage_still_shows_zero ... ok
[INFO] [stdout] test format::cost::tests::test_context_bar ... ok
[INFO] [stdout] test format::cost::tests::test_cost_breakdown_opus ... ok
[INFO] [stdout] test format::cost::tests::test_cost_breakdown_unknown_model ... ok
[INFO] [stdout] test context::tests::test_get_git_status_context_contains_branch ... FAILED
[INFO] [stdout] test context::tests::test_git_status_context_format ... FAILED
[INFO] [stdout] test format::cost::tests::test_estimate_cost_deepseek_chat ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_codestral ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_deepseek_reasoner ... ok
[INFO] [stdout] test context::tests::test_load_project_context_includes_file_listing ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gemini_20_flash ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gemini_25_flash ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_glm4_air ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gemini_25_pro ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_glm4_flash ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_glm4_plus ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gpt41 ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_glm5 ... ok
[INFO] [stdout] test context::tests::test_load_project_context_includes_git_status ... ok
[INFO] [stdout] test context::tests::test_load_project_context_includes_recently_changed ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gpt41_mini ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gpt4o_mini ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_gpt4o ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_grok3_mini ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_grok3 ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_groq_llama70b ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_groq_llama8b ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_haiku ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_mistral_large ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_mistral_small ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_o3 ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_o4_mini ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_openrouter_anthropic_prefix ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_openrouter_google_prefix ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_openrouter_openai_prefix ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_sonnet ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_unknown_model ... ok
[INFO] [stdout] test format::cost::tests::test_estimate_cost_opus ... ok
[INFO] [stdout] test format::cost::tests::test_extract_turn_costs_multiple ... ok
[INFO] [stdout] test format::cost::tests::test_format_cost ... ok
[INFO] [stdout] test format::cost::tests::test_extract_turn_costs_single_assistant ... ok
[INFO] [stdout] test format::cost::tests::test_extract_turn_costs_empty ... ok
[INFO] [stdout] test format::cost::tests::test_format_duration_ms ... ok
[INFO] [stdout] test format::cost::tests::test_format_duration_minutes ... ok
[INFO] [stdout] test format::cost::tests::test_format_duration_seconds ... ok
[INFO] [stdout] test format::cost::tests::test_format_token_count ... ok
[INFO] [stdout] test format::cost::tests::test_extract_turn_costs_skips_non_assistant ... ok
[INFO] [stdout] test format::cost::tests::test_format_turn_costs_empty ... ok
[INFO] [stdout] test format::cost::tests::test_format_turn_costs_single ... ok
[INFO] [stdout] test format::cost::tests::test_format_turn_costs_multiple ... ok
[INFO] [stdout] test format::cost::tests::test_pluralize_singular ... ok
[INFO] [stdout] test format::cost::tests::test_non_anthropic_providers_zero_cache_costs ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_c_keywords ... ok
[INFO] [stdout] test docs::tests::test_fetch_docs_item_empty_item_delegates_to_summary ... ok
[INFO] [stdout] test format::cost::tests::test_format_turn_costs_unknown_model ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_c_through_markdown ... ok
[INFO] [stdout] test format::cost::tests::test_pluralize_plural ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_c_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_go_keywords ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_empty_line ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_c_string ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_c_types ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_cpp_keywords ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_go_string_type ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_go_types ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_hpp_recognized ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_inline_comment_after_code ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_js_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_js_function_declaration ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_js_keywords ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_js_null_undefined ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_js_string_template ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_json_boolean ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_json_braces ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_json_null ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_json_key_value ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_no_false_keyword_in_identifier ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_jsonc_recognized ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_boolean_none ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_class_def ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_json_number ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_json_through_markdown ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_import ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_number_float ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_inline_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_single_quote_string ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_string ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_python_keywords ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_renders_through_markdown ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_fn ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_full_line_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_keywords ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_primitive_types ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_self_type ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_option_result ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_string ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_rust_types ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_shell_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_shell_export ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_shell_keywords ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_shell_for_loop ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_shell_string ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_string_with_escape ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_array_section ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_boolean ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_key_number ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_key_string ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_through_markdown ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_tsx_recognized ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_toml_section ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_unknown_lang_falls_back_to_dim ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_boolean ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_ts_alias ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_comment ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_document_separator ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_key_value ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_number ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_string_value ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yaml_through_markdown ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_yml_alias ... ok
[INFO] [stdout] test format::highlight::tests::test_highlight_zsh_recognized ... ok
[INFO] [stdout] test format::highlight::tests::test_normalize_lang_aliases ... ok
[INFO] [stdout] test format::highlight::tests::test_normalize_lang_c_family ... ok
[INFO] [stdout] test format::highlight::tests::test_normalize_lang_data_formats ... ok
[INFO] [stdout] test format::markdown::tests::test_color_struct_display_consistency ... ok
[INFO] [stdout] test format::markdown::tests::test_md_blockquote ... ok
[INFO] [stdout] test format::markdown::tests::test_md_blockquote_with_inline_formatting ... ok
[INFO] [stdout] test format::markdown::tests::test_md_bold_italic_text ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_backtick_start_buffers_correctly ... ok
[INFO] [stdout] test format::markdown::tests::test_md_bold_still_works ... ok
[INFO] [stdout] test format::markdown::tests::test_md_bold_text ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_detection ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_fence_detection_still_works ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_preserves_content ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_indented_line_resolves_immediately ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_space_only_token_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_mid_line_emitted_immediately ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_mid_line_multiple_tokens ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_mid_line_with_newline ... ok
[INFO] [stdout] test format::markdown::tests::test_md_default_trait ... ok
[INFO] [stdout] test format::markdown::tests::test_md_empty_delta ... ok
[INFO] [stdout] test format::markdown::tests::test_md_code_block_with_language ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_at_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_each_token_produces_output ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_no_trailing_space ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_in_code_block ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_only_whitespace ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_preserves_fence_detection ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_not_at_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_partial_line ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_with_word_boundary ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_with_inline_formatting ... ok
[INFO] [stdout] test format::markdown::tests::test_md_header_h2 ... ok
[INFO] [stdout] test format::markdown::tests::test_md_header_rendering ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_on_whitespace_preserves_header_detection ... ok
[INFO] [stdout] test format::markdown::tests::test_md_flush_produces_output_for_buffered_content ... ok
[INFO] [stdout] test format::markdown::tests::test_md_horizontal_rule_dashes ... ok
[INFO] [stdout] test format::markdown::tests::test_md_horizontal_rule_long ... ok
[INFO] [stdout] test format::markdown::tests::test_md_horizontal_rule_stars ... ok
[INFO] [stdout] test format::markdown::tests::test_md_horizontal_rule_underscores ... ok
[INFO] [stdout] test format::markdown::tests::test_md_indented_list_item ... ok
[INFO] [stdout] test format::markdown::tests::test_md_inline_code ... ok
[INFO] [stdout] test format::markdown::tests::test_md_italic_text ... ok
[INFO] [stdout] test format::markdown::tests::test_md_inline_code_inside_bold ... ok
[INFO] [stdout] test format::markdown::tests::test_md_mixed_inline_formatting ... ok
[INFO] [stdout] test format::markdown::tests::test_md_multiple_code_blocks ... ok
[INFO] [stdout] test format::markdown::tests::test_md_multiple_inline_codes_one_line ... ok
[INFO] [stdout] test format::markdown::tests::test_md_not_a_list_in_code_block ... ok
[INFO] [stdout] test format::markdown::tests::test_md_ordered_list ... ok
[INFO] [stdout] test format::markdown::tests::test_md_ordered_list_larger_number ... ok
[INFO] [stdout] test format::markdown::tests::test_md_partial_delta_fence ... ok
[INFO] [stdout] test format::markdown::tests::test_md_plain_text_unchanged ... ok
[INFO] [stdout] test format::markdown::tests::test_md_render_delta_every_call_produces_or_buffers_minimally ... ok
[INFO] [stdout] test format::markdown::tests::test_md_render_delta_latency_budget_mid_line ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_blockquote_content_not_buffered ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_bold_mid_line ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_code_fence_detected_at_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_code_fence_opener_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_digit_with_space_stays_buffered ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_existing_tests_still_pass ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_header_content_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_header_detected_at_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_in_code_block_immediate ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_inline_code_mid_line ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_inline_formatting_on_partial_lines ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_line_start_buffer_short_text ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_line_start_resolves_normal ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_list_item_content_not_buffered ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_list_renders_correctly_on_newline ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_mid_line_immediate_output ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_newline_resets_to_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_no_regression_full_render ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_ordered_list_content_not_buffered ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_single_char_non_special_at_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_single_token_produces_output ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_space_prefixed_token_at_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_whitespace_flush_integration ... ok
[INFO] [stdout] test format::markdown::tests::test_md_streaming_word_by_word_paragraph ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unclosed_italic_no_format ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unmatched_backtick ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unmatched_bold ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unordered_list_dash ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unordered_list_plus ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unordered_list_star ... ok
[INFO] [stdout] test format::markdown::tests::test_md_unordered_list_with_inline_formatting ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_blockquote_detection ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_code_block_passthrough ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_code_fence_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_consecutive_code_blocks ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_dash_word_flushes ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_digit_dot_non_space_flushes ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_digit_word_flushes ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_empty_delta ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_flush_final ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_heading_buffers_then_resolves ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_heading_detection ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_inline_formatting_mid_line ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_mid_line_immediate ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_multi_digit_numbered_list_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_nested_formatting_in_list ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_newline_resets_line_start ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_numbered_list_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_plain_text_immediate_flush ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_plain_text_no_buffering ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_contract_unordered_list_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_dash_hr_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_dash_list_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_dash_nonlist_flushes_early ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_digit_nonlist_flushes_early ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_digit_paren_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_fence_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_mid_line_always_immediate ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_multi_digit_nonlist_flushes ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_numbered_list_still_buffers ... ok
[INFO] [stdout] test format::markdown::tests::test_streaming_plain_text_immediate ... ok
[INFO] [stdout] test format::tests::context_usage_label_full_usage ... ok
[INFO] [stdout] test format::tests::context_usage_label_normal_usage_unchanged ... ok
[INFO] [stdout] test format::tests::context_usage_label_tiny_usage_shows_less_than_one_percent ... ok
[INFO] [stdout] test format::tests::context_usage_label_zero_max_safe ... ok
[INFO] [stdout] test format::tests::context_usage_label_zero_usage_is_zero_percent ... ok
[INFO] [stdout] test format::tests::test_bell_enabled_default ... ok
[INFO] [stdout] test format::tests::test_collapse_repetitive_multibyte_lines ... ok
[INFO] [stdout] test format::tests::test_color_struct_display_outputs_ansi ... ok
[INFO] [stdout] test format::tests::test_compress_collapses_repetitive_lines ... ok
[INFO] [stdout] test format::tests::test_compress_empty_input ... ok
[INFO] [stdout] test format::tests::test_compress_exact_threshold_four_lines ... ok
[INFO] [stdout] test format::tests::test_compress_mixed_repetitive_blocks ... ok
[INFO] [stdout] test format::tests::test_compress_multibyte_content ... ok
[INFO] [stdout] test format::tests::test_compress_preserves_non_repetitive_output ... ok
[INFO] [stdout] test format::tests::test_compress_pip_install_pattern ... ok
[INFO] [stdout] test format::tests::test_compress_short_output_unchanged ... ok
[INFO] [stdout] test format::tests::test_compress_strips_ansi_codes ... ok
[INFO] [stdout] test format::tests::test_compress_strips_various_ansi_sequences ... ok
[INFO] [stdout] test format::tests::test_compress_tool_output_integrates_test_filter ... ok
[INFO] [stdout] test format::tests::test_context_usage_color_green_at_50 ... ok
[INFO] [stdout] test format::tests::test_context_usage_color_green_at_zero ... ok
[INFO] [stdout] test format::tests::test_context_usage_color_red_at_100 ... ok
[INFO] [stdout] test format::tests::test_context_usage_color_red_at_81 ... ok
[INFO] [stdout] test format::tests::test_context_usage_color_yellow_at_51 ... ok
[INFO] [stdout] test format::tests::test_context_usage_color_yellow_at_80 ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_incomplete ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_invalid_numeric ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_mixed ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_named ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_no_entities ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_numeric_decimal ... ok
[INFO] [stdout] test format::tests::test_decode_html_entities_numeric_hex ... ok
[INFO] [stdout] test format::tests::test_filter_cargo_test_all_passing ... ok
[INFO] [stdout] test format::tests::test_filter_cargo_test_failure_details_preserved ... ok
[INFO] [stdout] test format::tests::test_filter_go_test_output ... ok
[INFO] [stdout] test format::tests::test_filter_cargo_test_with_failures ... ok
[INFO] [stdout] test format::tests::test_filter_mixed_content ... ok
[INFO] [stdout] test format::tests::test_filter_jest_output ... ok
[INFO] [stdout] test format::tests::test_filter_non_test_output_unchanged ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_addition_only ... ok
[INFO] [stdout] test format::tests::test_filter_pytest_output ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_adjacent_changes_grouped ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_context_lines_around_change ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_deletion_only ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_empty_both ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_empty_old_text_new_file_section ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_identical_texts ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_long_diff_truncation ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_multi_line_change ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_nonadjacent_changes_get_separator ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_short_diff_not_truncated ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_single_line_change ... ok
[INFO] [stdout] test format::tests::test_format_edit_diff_single_line_change_with_context ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_bash ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_bash_long_command ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_bash_multiline_shows_first_line ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_edit_file ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_edit_file_no_text ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_edit_file_same_lines ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_edit_file_with_text ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_list_files ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_list_files_no_path ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_list_files_pattern_no_path ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_read_file ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_list_files_with_pattern ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_read_file_no_extras ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_read_file_with_limit_only ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_read_file_with_offset_and_limit ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_read_file_with_offset_only ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_search ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_search_with_include ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_search_with_path ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_unknown_tool ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_write_file_no_content ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_search_with_path_and_include ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_write_file ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_search_pattern_only ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_write_file_single_line ... ok
[INFO] [stdout] test format::tests::test_format_tool_summary_write_file_with_content ... ok
[INFO] [stdout] test format::tests::test_format_usage_compact ... ok
[INFO] [stdout] test format::tests::test_format_usage_compact_includes_cost ... ok
[INFO] [stdout] test format::tests::test_format_usage_compact_unknown_model_no_cost ... ok
[INFO] [stdout] test format::tests::test_format_usage_verbose ... ok
[INFO] [stdout] test format::tests::test_format_usage_verbose_with_cache ... ok
[INFO] [stdout] test format::tests::test_indent_tool_output_empty ... ok
[INFO] [stdout] test format::tests::test_indent_tool_output_multiline ... ok
[INFO] [stdout] test format::tests::test_indent_tool_output_single_line ... ok
[INFO] [stdout] test format::tests::test_format_usage_zero_tokens_returns_none ... ok
[INFO] [stdout] test format::tests::test_line_category_multibyte_short_word ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_all_multibyte ... ok
[INFO] [stdout] test format::tests::test_line_category_multibyte_prefix ... ok
[INFO] [stdout] test format::tests::test_maybe_ring_bell_short_duration_no_bell ... ok
[INFO] [stdout] test format::tests::test_maybe_ring_bell_long_duration_no_panic ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_ascii_longer_than_max ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_ascii_shorter_than_max ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_empty_string ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_exact_boundary ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_multibyte_no_panic ... ok
[INFO] [stdout] test format::tests::test_safe_truncate_zero_max ... ok
[INFO] [stdout] test format::tests::test_section_divider_no_color ... ok
[INFO] [stdout] test format::tests::test_section_divider_nonempty_with_line_chars ... ok
[INFO] [stdout] test format::tests::test_section_header_contains_label_and_line_chars ... ok
[INFO] [stdout] test format::tests::test_section_header_empty_label_produces_divider ... ok
[INFO] [stdout] test format::tests::test_section_header_no_color ... ok
[INFO] [stdout] test format::tests::test_section_header_with_various_labels ... ok
[INFO] [stdout] test format::tests::test_strip_ansi_preserves_accented_chars ... ok
[INFO] [stdout] test format::tests::test_strip_ansi_preserves_emoji ... ok
[INFO] [stdout] test format::tests::test_strip_ansi_preserves_multibyte_utf8 ... ok
[INFO] [stdout] test format::tests::test_terminal_width_default ... ok
[INFO] [stdout] test format::tests::test_tool_batch_summary_all_succeed ... ok
[INFO] [stdout] test format::tests::test_tool_batch_summary_single_tool_returns_empty ... ok
[INFO] [stdout] test format::tests::test_tool_batch_summary_two_tools_plural ... ok
[INFO] [stdout] test format::tests::test_tool_batch_summary_with_failures ... ok
[INFO] [stdout] test format::tests::test_tool_batch_summary_zero_tools_returns_empty ... ok
[INFO] [stdout] test format::tests::test_tool_output_max_chars_piped_smaller ... ok
[INFO] [stdout] test format::tests::test_tool_output_max_chars_piped_value ... ok
[INFO] [stdout] test format::tests::test_truncate_adds_ellipsis ... ok
[INFO] [stdout] test format::tests::test_truncate_empty ... ok
[INFO] [stdout] test format::tests::test_truncate_exact_length ... ok
[INFO] [stdout] test format::tests::test_truncate_long_string ... ok
[INFO] [stdout] test format::tests::test_truncate_short_string ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_default_threshold_constant ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_empty_string ... ok
[INFO] [stdout] test docs::tests::test_fetch_docs_summary_valid_crate_name_accepted ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_under_threshold_unchanged ... ok
[INFO] [stdout] test format::tests::test_truncate_unicode ... ok
[INFO] [stdout] test format::tests::test_truncate_uses_compression ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_respects_limit_parameter ... ok
[INFO] [stdout] test format::tests::test_turn_boundary_contains_number ... ok
[INFO] [stdout] test format::tests::test_turn_boundary_has_fill_characters ... ok
[INFO] [stdout] test format::tests::test_turn_boundary_different_numbers ... ok
[INFO] [stdout] test format::tools::tests::test_count_result_lines ... ok
[INFO] [stdout] test format::tools::tests::test_count_result_lines_empty ... ok
[INFO] [stdout] test format::tools::tests::test_extract_result_text ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_with_custom_limit ... ok
[INFO] [stdout] test format::tools::tests::test_extract_result_text_empty ... ok
[INFO] [stdout] test format::tools::tests::test_format_duration_live_minutes ... ok
[INFO] [stdout] test format::tools::tests::test_format_duration_live_hours ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_over_threshold_has_marker ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_single_truncated_line_in_marker ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_few_long_lines_not_truncated ... ok
[INFO] [stdout] test format::tools::tests::test_format_duration_live_seconds ... ok
[INFO] [stdout] test format::tools::tests::test_format_partial_tail_empty ... ok
[INFO] [stdout] test format::tools::tests::test_format_partial_tail_fewer_lines_than_max ... ok
[INFO] [stdout] test format::tools::tests::test_format_partial_tail_more_lines_than_max ... ok
[INFO] [stdout] test format::tools::tests::test_format_partial_tail_uses_pipe_indent ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_exactly_at_threshold ... ok
[INFO] [stdout] test format::tools::tests::test_format_partial_tail_zero_lines ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_empty_label_ignored ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_label_truncation ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_no_lines ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_single_line ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_with_label ... ok
[INFO] [stdout] test format::tools::tests::test_spinner_frame_cycling ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_with_lines ... ok
[INFO] [stdout] test format::tools::tests::test_spinner_frame_large_index ... ok
[INFO] [stdout] test format::tools::tests::test_spinner_frame_wraps_around ... ok
[INFO] [stdout] test format::tools::tests::test_spinner_frames_all_unique ... ok
[INFO] [stdout] test format::tools::tests::test_spinner_frames_are_braille ... ok
[INFO] [stdout] test format::tools::tests::test_spinner_frames_not_empty ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_block_at_start ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_block_at_end ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_empty_input ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_char_by_char ... ok
[INFO] [stdout] test format::tools::tests::test_format_tool_progress_zero_lines_hidden ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_flush_inside_block ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_nested_or_repeated ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_no_block ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_partial_at_end ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_simple_block ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_split_closing_tag ... ok
[INFO] [stdout] test format::tests::test_truncate_tool_output_preserves_head_and_tail_count ... ok
[INFO] [stdout] test format::tools::tests::test_think_filter_streaming_split ... ok
[INFO] [stdout] test git::tests::co_authored_trailer_already_present ... ok
[INFO] [stdout] test git::tests::co_authored_trailer_empty_message ... ok
[INFO] [stdout] test git::tests::co_authored_trailer_multiline_message ... ok
[INFO] [stdout] test git::tests::co_authored_trailer_normal_message ... ok
[INFO] [stdout] test git::tests::colorize_diff_bold_for_file_headers ... ok
[INFO] [stdout] test git::tests::colorize_diff_context_lines_unchanged ... ok
[INFO] [stdout] test git::tests::colorize_diff_empty_input ... ok
[INFO] [stdout] test git::tests::colorize_diff_cyan_for_hunk_headers ... ok
[INFO] [stdout] test git::tests::colorize_diff_green_for_additions ... ok
[INFO] [stdout] test git::tests::colorize_diff_red_for_deletions ... ok
[INFO] [stdout] test git::tests::destructive_guard_allows_destructive_in_temp_dir ... ok
[INFO] [stdout] test git::tests::destructive_guard_allows_safe_commands ... ok
[INFO] [stdout] test git::tests::destructive_guard_empty_args ... ok
[INFO] [stdout] test git::tests::destructive_guard_list_covers_original_incident ... ok
[INFO] [stdout] test git::tests::test_build_pr_description_prompt_contains_info ... ok
[INFO] [stdout] test git::tests::destructive_guard_blocks_known_bad_commands_in_project_root ... ok
[INFO] [stdout] test git::tests::test_build_pr_description_prompt_truncates_large_diff ... ok
[INFO] [stdout] test git::tests::test_format_stash_list_empty ... ok
[INFO] [stdout] test git::tests::test_format_stash_list_multiple_entries ... ok
[INFO] [stdout] test git::tests::test_format_stash_list_single_entry ... ok
[INFO] [stdout] test git::tests::test_generate_commit_message_basic ... ok
[INFO] [stdout] test git::tests::test_generate_commit_message_deletions_only ... ok
[INFO] [stdout] test git::tests::test_format_stash_list_uses_ansi_colors ... ok
[INFO] [stdout] test git::tests::test_generate_commit_message_docs ... ok
[INFO] [stdout] test git::tests::test_generate_commit_message_multiple_files ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_branch ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_add ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_diff ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_help ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_log ... ok
[INFO] [stdout] test git::tests::run_git_safe_command_passes_guard ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_stash_list ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_stash ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_stash_drop ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_stash_pop ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_stash_show ... ok
[INFO] [stdout] test git::tests::test_git_branch_returns_something_in_repo ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_stash_push ... ok
[INFO] [stdout] test git::tests::test_git_subcommand_status ... ok
[INFO] [stdout] test git::tests::test_parse_pr_description_empty_title ... ok
[INFO] [stdout] test git::tests::test_parse_pr_description_missing_separator ... ok
[INFO] [stdout] test git::tests::test_parse_pr_description_missing_title ... ok
[INFO] [stdout] test git::tests::test_parse_pr_description_with_extra_whitespace ... ok
[INFO] [stdout] test git::tests::test_parse_pr_description_valid ... ok
[INFO] [stdout] test help::tests::test_arg_completions_help_filters_by_prefix ... ok
[INFO] [stdout] test git::tests::test_get_staged_diff_runs ... ok
[INFO] [stdout] test help::tests::test_arg_completions_help_returns_command_names ... ok
[INFO] [stdout] test help::tests::test_command_help_exhaustive_for_known_commands ... ok
[INFO] [stdout] test help::tests::test_command_help_add_returns_some ... ok
[INFO] [stdout] test git::tests::test_run_git_invalid_args_returns_err ... ok
[INFO] [stdout] test help::tests::test_command_help_strips_leading_slash ... ok
[INFO] [stdout] test help::tests::test_command_help_nonexistent_returns_none ... ok
[INFO] [stdout] test help::tests::test_command_short_description_coverage ... ok
[INFO] [stdout] test git::tests::test_run_git_trims_output ... ok
[INFO] [stdout] test help::tests::test_command_short_description_unknown_returns_none ... ok
[INFO] [stdout] test help::tests::test_diff_help_mentions_staged ... ok
[INFO] [stdout] test git::tests::test_detect_base_branch_returns_valid_name ... ok
[INFO] [stdout] test help::tests::test_help_still_in_known_commands ... ok
[INFO] [stdout] test help::tests::test_help_text_ai_commands_under_ai_header ... ok
[INFO] [stdout] test help::tests::test_help_text_has_category_headers ... ok
[INFO] [stdout] test help::tests::test_help_text_git_commands_under_git_header ... ok
[INFO] [stdout] test git::tests::test_get_branch_diff_runs ... ok
[INFO] [stdout] test help::tests::test_help_text_project_commands_under_project_header ... ok
[INFO] [stdout] test git::tests::run_git_panics_on_destructive_from_project_root - should panic ... ok
[INFO] [stdout] test hooks::tests::test_audit_hook_implements_trait ... ok
[INFO] [stdout] test hooks::tests::test_blocking_pre_hook_returns_err ... ok
[INFO] [stdout] test help::tests::test_help_text_contains_all_commands ... ok
[INFO] [stdout] test help::tests::test_help_text_input_section ... ok
[INFO] [stdout] test git::tests::test_run_git_valid_args ... ok
[INFO] [stdout] test hooks::tests::test_build_tools_with_audit_preserves_tool_count ... ok
[INFO] [stdout] test help::tests::test_help_text_session_commands_under_session_header ... ok
[INFO] [stdout] test hooks::tests::test_build_tools_with_audit_preserves_tool_names ... ok
[INFO] [stdout] test hooks::tests::test_hook_ordering_post_hooks_chain_first_to_last ... ok
[INFO] [stdout] test hooks::tests::test_hook_ordering_pre_hooks_run_first_to_last ... ok
[INFO] [stdout] test hooks::tests::test_hook_registry_default_is_empty ... ok
[INFO] [stdout] test git::tests::test_get_branch_commits_runs ... ok
[INFO] [stdout] test hooks::tests::test_hook_registry_new_is_empty ... ok
[INFO] [stdout] test hooks::tests::test_hook_registry_register_increases_len ... ok
[INFO] [stdout] test hooks::tests::test_maybe_hook_skips_wrap_when_empty ... ok
[INFO] [stdout] test hooks::tests::test_parse_hooks_from_config_empty ... ok
[INFO] [stdout] test hooks::tests::test_parse_hooks_from_config_ignores_invalid ... ok
[INFO] [stdout] test hooks::tests::test_parse_hooks_from_config_multiple ... ok
[INFO] [stdout] test hooks::tests::test_parse_hooks_from_config_post_wildcard ... ok
[INFO] [stdout] test hooks::tests::test_parse_hooks_from_config_pre_bash ... ok
[INFO] [stdout] test hooks::tests::test_post_hook_can_modify_output ... ok
[INFO] [stdout] test hooks::tests::test_pre_hooks_with_no_hooks_returns_none ... ok
[INFO] [stdout] test hooks::tests::test_post_hooks_with_no_hooks_passes_through ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_post_non_matching_passes_through ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_pre_phase_skips_post_tool ... ok
[INFO] [stdout] test hooks::tests::test_short_circuit_pre_hook_returns_cached_result ... ok
[INFO] [stdout] test hooks::tests::test_short_circuit_pre_hook_stops_later_hooks ... ok
[INFO] [stdout] test memory::tests::test_format_memories_for_prompt_empty ... ok
[INFO] [stdout] test memory::tests::test_format_memories_for_prompt_with_entries ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_post_passthrough ... ok
[INFO] [stdout] test memory::tests::test_load_memories_nonexistent_file ... ok
[INFO] [stdout] test memory::tests::test_memory_entry_serialize_deserialize ... ok
[INFO] [stdout] test memory::tests::test_memory_file_path ... ok
[INFO] [stdout] test memory::tests::test_project_memory_serialize_deserialize ... ok
[INFO] [stdout] test memory::tests::test_load_memories_invalid_json ... ok
[INFO] [stdout] test memory::tests::test_remove_memory_empty ... ok
[INFO] [stdout] test memory::tests::test_remove_memory_invalid_index ... ok
[INFO] [stdout] test memory::tests::test_remove_memory_valid_index ... ok
[INFO] [stdout] test memory::tests::test_save_and_load_memories ... ok
[INFO] [stdout] test memory::tests::test_search_memories_case_insensitive ... ok
[INFO] [stdout] test memory::tests::test_search_memories_empty_query ... ok
[INFO] [stdout] test memory::tests::test_add_memory ... ok
[INFO] [stdout] test memory::tests::test_save_creates_directory ... ok
[INFO] [stdout] test memory::tests::test_search_memories_multiple_matches ... ok
[INFO] [stdout] test memory::tests::test_search_memories_no_match ... ok
[INFO] [stdout] test prompt::tests::test_auto_retry_prompt_with_file_mention_context ... ok
[INFO] [stdout] test memory::tests::test_search_memories_basic ... ok
[INFO] [stdout] test prompt::tests::test_build_auto_retry_prompt_includes_error_and_input ... ok
[INFO] [stdout] test prompt::tests::test_build_auto_retry_prompt_attempt_number ... ok
[INFO] [stdout] test prompt::tests::test_build_auto_retry_prompt_preserves_short_errors ... ok
[INFO] [stdout] test prompt::tests::test_build_overflow_retry_prompt ... ok
[INFO] [stdout] test prompt::tests::test_build_auto_retry_prompt_truncates_long_errors ... ok
[INFO] [stdout] test prompt::tests::agent_messages_empty_until_finish_is_called ... ok
[INFO] [stdout] test prompt::tests::test_build_watch_fix_prompt ... ok
[INFO] [stdout] test prompt::tests::test_change_kind_display ... ok
[INFO] [stdout] test prompt::tests::test_deferred_bash_timer_denied_command_cleanup ... ok
[INFO] [stdout] test prompt::tests::test_build_watch_fix_prompt_truncates_long_output ... ok
[INFO] [stdout] test prompt::tests::test_deferred_bash_timer_set_lifecycle ... ok
[INFO] [stdout] test prompt::tests::test_diagnose_broken_pipe ... ok
[INFO] [stdout] test prompt::tests::test_diagnose_stream_closed ... ok
[INFO] [stdout] test prompt::tests::test_diagnose_incomplete ... ok
[INFO] [stdout] test prompt::tests::test_diagnose_stream_ended ... ok
[INFO] [stdout] test prompt::tests::test_diagnose_unexpected_eof ... ok
[INFO] [stdout] test prompt::tests::test_format_changes_empty ... ok
[INFO] [stdout] test prompt::tests::test_format_changes_multiple_files ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_basic ... ok
[INFO] [stdout] test prompt::tests::test_format_changes_single_write ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_case_insensitive ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_empty_text ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_empty_query ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_multiple_occurrences ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_entire_string ... ok
[INFO] [stdout] test prompt::tests::test_image_content_block_construction ... ok
[INFO] [stdout] test prompt::tests::test_is_not_retriable_auth_errors ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_preserves_original_case ... ok
[INFO] [stdout] test prompt::tests::test_highlight_matches_no_match ... ok
[INFO] [stdout] test prompt::tests::test_is_not_overflow_error ... ok
[INFO] [stdout] test prompt::tests::test_is_not_retriable_client_errors ... ok
[INFO] [stdout] test memory::tests::test_full_crud_workflow ... ok
[INFO] [stdout] test prompt::tests::test_is_not_retriable_unknown_error ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_anthropic ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_bedrock ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_context_length_exceeded ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_case_insensitive ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_google ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_generic_too_many_tokens ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_groq ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_max_token_exceeded ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_openai ... ok
[INFO] [stdout] test prompt::tests::test_is_overflow_error_xai ... ok
[INFO] [stdout] test prompt::tests::test_is_retriable_network_errors ... ok
[INFO] [stdout] test prompt::tests::test_is_retriable_rate_limit ... ok
[INFO] [stdout] test prompt::tests::test_max_auto_retries_constant ... ok
[INFO] [stdout] test prompt::tests::test_is_retriable_server_errors ... ok
[INFO] [stdout] test prompt::tests::test_max_watch_fix_attempts_constant ... ok
[INFO] [stdout] test prompt::tests::test_message_text_tool_result ... ok
[INFO] [stdout] test prompt::tests::test_message_text_user ... ok
[INFO] [stdout] test prompt::tests::test_is_retriable_stream_errors ... ok
[INFO] [stdout] test prompt::tests::test_prompt_outcome_has_api_error_field ... ok
[INFO] [stdout] test prompt::tests::test_non_bash_tools_not_deferred ... ok
[INFO] [stdout] test prompt::tests::test_retry_delay_capped_at_60s ... ok
[INFO] [stdout] test prompt::tests::test_retry_delay_exponential_backoff_ranges ... ok
[INFO] [stdout] test prompt::tests::test_retry_delay_zero_attempt_floor ... ok
[INFO] [stdout] test prompt::tests::test_run_watch_command_captures_stderr ... ok
[INFO] [stdout] test prompt::tests::test_run_watch_command_invalid_command ... ok
[INFO] [stdout] test prompt::tests::test_run_watch_command_combines_stdout_stderr ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_basic_match ... ok
[INFO] [stdout] test prompt::tests::test_run_watch_command_failure ... ok
[INFO] [stdout] test prompt::tests::test_run_watch_command_captures_all_output ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_empty_messages ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_no_match ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_case_insensitive ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_multiple_matches ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_results_are_highlighted ... ok
[INFO] [stdout] test prompt::tests::test_search_messages_tool_result ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_clone_is_independent ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_clear ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_deduplicates_same_path ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_multiple_files ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_new_is_empty ... ok
[INFO] [stdout] test prompt::tests::test_run_watch_command_success ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_record_edit ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_record_write ... ok
[INFO] [stdout] test prompt::tests::test_session_changes_shared_across_content_prompts ... ok
[INFO] [stdout] test prompt::tests::test_stream_ended_not_retriable ... ok
[INFO] [stdout] test prompt::tests::test_summarize_message_tool_result ... ok
[INFO] [stdout] test prompt::tests::test_summarize_message_tool_result_error ... ok
[INFO] [stdout] test prompt::tests::test_tool_result_preview_empty ... ok
[INFO] [stdout] test prompt::tests::test_summarize_message_user ... ok
[INFO] [stdout] test prompt::tests::test_tool_result_preview_multiline ... ok
[INFO] [stdout] test prompt::tests::test_tool_result_preview_text ... ok
[INFO] [stdout] test prompt::tests::test_tool_result_preview_truncated ... ok
[INFO] [stdout] test prompt::tests::test_turn_history_new_is_empty ... ok
[INFO] [stdout] test prompt::tests::test_turn_history_skips_empty_snapshots ... ok
[INFO] [stdout] test prompt::tests::test_turn_history_clear ... ok
[INFO] [stdout] test prompt::tests::test_turn_history_push_pop ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_created_not_duplicated ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_new_is_empty ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_created_files_deleted ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_created_ignores_existing ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_nonexistent_file ... ok
[INFO] [stdout] test prompt::tests::test_user_message_with_image_content ... ok
[INFO] [stdout] test prompt::tests::test_write_output_file_none ... ok
[INFO] [stdout] test prompt::tests::test_turn_history_undo_more_than_available ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_no_duplicate_snapshots ... ok
[INFO] [stdout] test prompt_budget::tests::test_aaa_session_budget_set_path_live_end_to_end ... ok
[INFO] [stdout] test prompt::tests::test_turn_history_undo_last_n ... ok
[INFO] [stdout] test prompt_budget::tests::test_days_from_epoch_known_date ... ok
[INFO] [stdout] test prompt::tests::test_write_output_file_some ... ok
[INFO] [stdout] test prompt_budget::tests::test_days_from_epoch_leap_year ... ok
[INFO] [stdout] test prompt_budget::tests::test_audit_enabled_default_false ... ok
[INFO] [stdout] test prompt_budget::tests::test_parse_session_budget_default_is_45_min ... ok
[INFO] [stdout] test prompt_budget::tests::test_days_from_epoch_unix_epoch ... ok
[INFO] [stdout] test prompt::tests::test_turn_snapshot_save_and_restore ... ok
[INFO] [stdout] test prompt_budget::tests::test_days_from_epoch_y2k ... ok
[INFO] [stdout] test prompt_budget::tests::test_parse_session_budget_garbage_falls_back_to_default ... ok
[INFO] [stdout] test prompt_budget::tests::test_parse_session_budget_unset ... ok
[INFO] [stdout] test prompt_budget::tests::test_parse_session_budget_valid ... ok
[INFO] [stdout] test prompt_budget::tests::test_parse_session_budget_empty ... ok
[INFO] [stdout] test prompt_budget::tests::test_read_audit_log_missing_file ... ok
[INFO] [stdout] test prompt_budget::tests::test_session_budget_exhausted_unset_returns_false ... ok
[INFO] [stdout] test prompt_budget::tests::test_session_budget_exhausted_with_headroom_returns_false ... ok
[INFO] [stdout] test prompt_budget::tests::test_session_budget_remaining_returns_zero_after_expiry ... ok
[INFO] [stdout] test prompt_budget::tests::test_session_budget_remaining_unset_returns_none ... ok
[INFO] [stdout] test prompt_budget::tests::test_truncate_audit_args_201 ... ok
[INFO] [stdout] test prompt_budget::tests::test_truncate_audit_args_exactly_200 ... ok
[INFO] [stdout] test prompt_budget::tests::test_truncate_audit_args_long_values ... ok
[INFO] [stdout] test prompt_budget::tests::test_truncate_audit_args_nested_object ... ok
[INFO] [stdout] test prompt_budget::tests::test_truncate_audit_args_non_string ... ok
[INFO] [stdout] test providers::tests::test_bedrock_default_model ... ok
[INFO] [stdout] test prompt_budget::tests::test_truncate_audit_args_short_values ... ok
[INFO] [stdout] test providers::tests::test_bedrock_in_known_providers ... ok
[INFO] [stdout] test providers::tests::test_bedrock_known_models ... ok
[INFO] [stdout] test providers::tests::test_bedrock_provider_api_key_env ... ok
[INFO] [stdout] test providers::tests::test_every_provider_has_default_model ... ok
[INFO] [stdout] test providers::tests::test_every_non_custom_provider_has_known_models ... ok
[INFO] [stdout] test providers::tests::test_known_providers_has_at_least_10 ... ok
[INFO] [stdout] test providers::tests::test_minimax_default_model ... ok
[INFO] [stdout] test providers::tests::test_minimax_in_known_providers ... ok
[INFO] [stdout] test providers::tests::test_minimax_known_models ... ok
[INFO] [stdout] test providers::tests::test_minimax_provider_api_key_env ... ok
[INFO] [stdout] test repl::tests::add_content_blocks_empty_input ... ok
[INFO] [stdout] test repl::tests::add_content_blocks_image_only_has_intro_and_label ... ok
[INFO] [stdout] test repl::tests::add_content_blocks_mixed_text_and_image ... ok
[INFO] [stdout] test repl::tests::add_content_blocks_multiple_images_each_has_label ... ok
[INFO] [stdout] test repl::tests::add_content_blocks_text_only_no_intro ... ok
[INFO] [stdout] test repl::tests::extract_image_label_fallback ... ok
[INFO] [stdout] test repl::tests::extract_image_label_parses_ansi_summary ... ok
[INFO] [stdout] test repl::tests::test_arg_completion_falls_through_to_file_path ... ok
[INFO] [stdout] test repl::tests::test_arg_completion_git_subcommands ... ok
[INFO] [stdout] test repl::tests::test_arg_completion_no_nested_spaces ... ok
[INFO] [stdout] test repl::tests::test_arg_completion_pr_subcommands ... ok
[INFO] [stdout] test repl::tests::test_arg_completion_provider_names ... ok
[INFO] [stdout] test repl::tests::test_arg_completion_think_levels ... ok
[INFO] [stdout] test repl::tests::test_file_path_completion_after_text ... ok
[INFO] [stdout] test repl::tests::test_file_path_completion_current_dir ... ok
[INFO] [stdout] test repl::tests::test_file_path_completion_no_completions_for_empty ... ok
[INFO] [stdout] test repl::tests::test_file_path_completion_directories_have_slash ... ok
[INFO] [stdout] test repl::tests::test_file_path_completion_with_directory_prefix ... ok
[INFO] [stdout] test repl::tests::test_file_path_slash_commands_still_work ... ok
[INFO] [stdout] test repl::tests::test_hinter_no_hint_for_bare_slash ... ok
[INFO] [stdout] test repl::tests::test_hinter_no_hint_for_arguments ... ok
[INFO] [stdout] test repl::tests::test_hinter_no_hint_for_non_slash ... ok
[INFO] [stdout] test repl::tests::test_hinter_no_hint_when_cursor_not_at_end ... ok
[INFO] [stdout] test repl::tests::test_hinter_shows_command_completion ... ok
[INFO] [stdout] test repl::tests::test_needs_continuation_backslash ... ok
[INFO] [stdout] test repl::tests::test_hinter_shows_description_for_complete_command ... ok
[INFO] [stdout] test repl::tests::test_needs_continuation_code_fence ... ok
[INFO] [stdout] test repl::tests::test_prompt_has_octopus ... ok
[INFO] [stdout] test repl::tests::test_subcommand_pairs_have_matching_display_and_replacement ... ok
[INFO] [stdout] test repl::tests::test_slash_completion_display_is_padded ... ok
[INFO] [stdout] test repl::tests::test_slash_completion_pairs_include_descriptions ... ok
[INFO] [stdout] test setup::tests::test_bedrock_in_wizard_providers ... ok
[INFO] [stdout] test setup::tests::test_generate_config_bedrock ... ok
[INFO] [stdout] test repl::tests::test_yoyo_helper_completes_slash_commands ... ok
[INFO] [stdout] test setup::tests::test_generate_config_contents ... ok
[INFO] [stdout] test setup::tests::test_generate_config_custom_with_base_url ... ok
[INFO] [stdout] test setup::tests::test_generate_config_openai ... ok
[INFO] [stdout] test setup::tests::test_parse_provider_choice_by_name ... ok
[INFO] [stdout] test setup::tests::test_parse_provider_choice_invalid ... ok
[INFO] [stdout] test setup::tests::test_parse_provider_choice_by_number ... ok
[INFO] [stdout] test setup::tests::test_parse_provider_choice_whitespace ... ok
[INFO] [stdout] test setup::tests::test_parse_save_choice_defaults_to_project ... ok
[INFO] [stdout] test setup::tests::test_parse_save_choice_skip ... ok
[INFO] [stdout] test setup::tests::test_parse_save_choice_unknown_defaults_to_project ... ok
[INFO] [stdout] test setup::tests::test_parse_save_choice_user ... ok
[INFO] [stdout] test setup::tests::test_save_config_to_file ... ok
[INFO] [stdout] test setup::tests::test_user_config_display_path ... ok
[INFO] [stdout] test setup::tests::test_save_config_to_user_file ... ok
[INFO] [stdout] test setup::tests::test_save_config_to_user_file_creates_parent_dirs ... ok
[INFO] [stdout] test setup::tests::test_wizard_anthropic_with_key ... ok
[INFO] [stdout] test setup::tests::test_wizard_bedrock_custom_region ... ok
[INFO] [stdout] test setup::tests::test_wizard_bedrock_with_credentials ... ok
[INFO] [stdout] test setup::tests::test_wizard_cerebras_flow ... ok
[INFO] [stdout] test setup::tests::test_wizard_custom_model ... ok
[INFO] [stdout] test setup::tests::test_wizard_custom_provider_flow ... ok
[INFO] [stdout] test setup::tests::test_wizard_custom_provider_no_base_url_returns_none ... ok
[INFO] [stdout] test setup::tests::test_wizard_default_provider_on_enter ... ok
[INFO] [stdout] test setup::tests::test_wizard_minimax_flow ... ok
[INFO] [stdout] test setup::tests::test_wizard_no_key_no_env_returns_none ... ok
[INFO] [stdout] test setup::tests::test_wizard_ollama_skips_api_key ... ok
[INFO] [stdout] test setup::tests::test_wizard_provider_by_name ... ok
[INFO] [stdout] test setup::tests::test_wizard_providers_are_known ... ok
[INFO] [stdout] test setup::tests::test_wizard_result_fields ... ok
[INFO] [stdout] test tests::looks_like_slash_command_detects_leading_slash ... ok
[INFO] [stdout] test setup::tests::test_wizard_step4_shows_three_choices ... ok
[INFO] [stdout] test tests::looks_like_slash_command_handles_leading_whitespace ... ok
[INFO] [stdout] test tests::looks_like_slash_command_rejects_mid_string_slash ... ok
[INFO] [stdout] test setup::tests::test_wizard_save_to_user_level ... ok
[INFO] [stdout] test tests::looks_like_slash_command_rejects_non_slash_input ... ok
[INFO] [stdout] test tests::mcp_builtin_collision_detection ... ok
[INFO] [stdout] test tests::mcp_collision_detection_against_real_builtins ... ok
[INFO] [stdout] test tests::mcp_collision_detection_empty_inputs ... ok
[INFO] [stdout] test tests::mcp_collision_detection_multiple_collisions_preserves_order ... ok
[INFO] [stdout] test tests::mcp_collision_detection_no_collisions ... ok
[INFO] [stdout] test tests::test_agent_config_build_agent_anthropic ... ok
[INFO] [stdout] test tests::test_agent_config_build_agent_google ... ok
[INFO] [stdout] test tests::test_agent_config_build_agent_minimax ... ok
[INFO] [stdout] test tests::test_agent_config_build_agent_openai ... ok
[INFO] [stdout] test tests::test_agent_config_build_agent_with_base_url ... ok
[INFO] [stdout] test tests::test_agent_config_build_agent_zai ... ok
[INFO] [stdout] test tests::test_agent_config_mutable_thinking_switch ... ok
[INFO] [stdout] test tests::test_agent_config_mutable_model_switch ... ok
[INFO] [stdout] test tests::test_agent_config_struct_fields ... ok
[INFO] [stdout] test tests::test_agent_config_rebuild_produces_fresh_agent ... ok
[INFO] [stdout] test tests::test_always_approve_flag_persists_across_clones ... ok
[INFO] [stdout] test tests::test_always_approve_flag_starts_false ... ok
[INFO] [stdout] test tests::test_always_approve_flag_used_in_confirm_simulation ... ok
[INFO] [stdout] test tests::test_always_approve_only_on_a_or_always ... ok
[INFO] [stdout] test tests::test_always_approve_response_matching ... ok
[INFO] [stdout] test tests::test_bedrock_model_config ... ok
[INFO] [stdout] test tests::test_bedrock_model_config_custom_url ... ok
[INFO] [stdout] test tests::test_build_agent_anthropic_with_base_url_uses_openai_compat ... ok
[INFO] [stdout] test tests::test_build_agent_all_providers_build_cleanly ... ok
[INFO] [stdout] test tests::test_build_agent_bedrock ... ok
[INFO] [stdout] test tests::test_build_json_output_error_mode ... ok
[INFO] [stdout] test tests::test_build_json_output_valid_json_with_expected_keys ... ok
[INFO] [stdout] test tests::test_checkpoint_triggered_flag_starts_false ... ok
[INFO] [stdout] test tests::test_client_headers_anthropic ... ok
[INFO] [stdout] test tests::test_client_headers_google ... ok
[INFO] [stdout] test tests::test_client_headers_openai ... ok
[INFO] [stdout] test tests::test_client_headers_openrouter ... ok
[INFO] [stdout] test tests::test_client_headers_on_anthropic_build_agent ... ok
[INFO] [stdout] test tests::test_configure_agent_applies_all_settings ... ok
[INFO] [stdout] test tests::test_configure_agent_sets_context_config ... ok
[INFO] [stdout] test tests::test_create_model_config_minimax_custom_base_url ... ok
[INFO] [stdout] test tests::test_create_model_config_minimax_defaults ... ok
[INFO] [stdout] test tests::test_create_model_config_unknown_provider_falls_through ... ok
[INFO] [stdout] test tests::test_create_model_config_unknown_provider_with_base_url ... ok
[INFO] [stdout] test tests::test_create_model_config_zai_custom_base_url ... ok
[INFO] [stdout] test tests::test_create_model_config_zai_defaults ... ok
[INFO] [stdout] test tests::test_execution_limits_always_set ... ok
[INFO] [stdout] test tests::test_fallback_prompt_api_error_no_fallback_configured ... ok
[INFO] [stdout] test tests::test_fallback_prompt_api_error_with_fallback_switches ... ok
[INFO] [stdout] test tests::test_fallback_prompt_no_api_error_passthrough ... ok
[INFO] [stdout] test tests::test_fallback_switch_already_on_fallback ... ok
[INFO] [stdout] test tests::test_fallback_switch_derives_default_model ... ok
[INFO] [stdout] test tests::test_fallback_switch_idempotent ... ok
[INFO] [stdout] test tests::test_fallback_switch_keeps_api_key_when_env_missing ... ok
[INFO] [stdout] test tests::test_fallback_switch_no_fallback_configured ... ok
[INFO] [stdout] test tests::test_fallback_switch_resolves_api_key ... ok
[INFO] [stdout] test tests::test_fallback_switch_uses_explicit_model ... ok
[INFO] [stdout] test tests::test_fallback_switch_success ... ok
[INFO] [stdout] test tests::test_yoyo_user_agent_format ... ok
[INFO] [stdout] test tools::tests::test_always_approved_shared_between_bash_and_file_tools ... ok
[INFO] [stdout] test tools::tests::test_analyze_chmod_recursive ... ok
[INFO] [stdout] test tools::tests::test_analyze_curl_pipe_bash ... ok
[INFO] [stdout] test tools::tests::test_analyze_dd_if ... ok
[INFO] [stdout] test tools::tests::test_analyze_drop_table ... ok
[INFO] [stdout] test tools::tests::test_analyze_fdisk_parted ... ok
[INFO] [stdout] test tools::tests::test_analyze_file_overwrites ... ok
[INFO] [stdout] test tools::tests::test_analyze_git_force_push ... ok
[INFO] [stdout] test tools::tests::test_analyze_git_clean ... ok
[INFO] [stdout] test tools::tests::test_analyze_git_push_normal ... ok
[INFO] [stdout] test tools::tests::test_analyze_git_reset_hard ... ok
[INFO] [stdout] test tools::tests::test_analyze_kill_init ... ok
[INFO] [stdout] test tools::tests::test_analyze_killall ... ok
[INFO] [stdout] test tools::tests::test_analyze_returns_descriptive_reason ... ok
[INFO] [stdout] test tools::tests::test_analyze_pipe_not_from_curl ... ok
[INFO] [stdout] test tools::tests::test_analyze_rm_rf_home ... ok
[INFO] [stdout] test tools::tests::test_analyze_rm_rf_root ... ok
[INFO] [stdout] test tools::tests::test_analyze_rm_safe_usage ... ok
[INFO] [stdout] test tools::tests::test_analyze_safe_commands ... ok
[INFO] [stdout] test tools::tests::test_analyze_shutdown ... ok
[INFO] [stdout] test tools::tests::test_analyze_system_commands_word_boundary ... ok
[INFO] [stdout] test tools::tests::test_ask_user_tool_not_in_non_terminal_mode ... ok
[INFO] [stdout] test tools::tests::test_ask_user_tool_schema ... ok
[INFO] [stdout] test tools::tests::test_build_sub_agent_tool_all_providers ... ok
[INFO] [stdout] test tools::tests::test_build_sub_agent_tool_has_task_parameter ... ok
[INFO] [stdout] test tools::tests::test_build_sub_agent_tool_inherits_dir_restrictions ... ok
[INFO] [stdout] test tools::tests::test_build_sub_agent_tool_no_restrictions_still_works ... ok
[INFO] [stdout] test tools::tests::test_build_sub_agent_tool_returns_correct_name ... ok
[INFO] [stdout] test tools::tests::test_build_tools_auto_approve_skips_confirmation ... ok
[INFO] [stdout] test tools::tests::test_build_tools_count_unchanged_with_sub_agent ... ok
[INFO] [stdout] test tools::tests::test_build_tools_no_approve_includes_confirmation ... ok
[INFO] [stdout] test tools::tests::test_build_tools_returns_eight_tools ... ok
[INFO] [stdout] test tools::tests::test_build_tools_with_piped_limit ... ok
[INFO] [stdout] test tools::tests::test_confirm_file_operation_allow_src_pattern ... ok
[INFO] [stdout] test tools::tests::test_confirm_file_operation_auto_approved_flag ... ok
[INFO] [stdout] test tools::tests::test_confirm_file_operation_deny_overrides_allow ... ok
[INFO] [stdout] test tools::tests::test_confirm_file_operation_with_allow_pattern ... ok
[INFO] [stdout] test tools::tests::test_confirm_file_operation_with_deny_pattern ... ok
[INFO] [stdout] test tools::tests::test_describe_edit_file_missing_params ... ok
[INFO] [stdout] test tools::tests::test_describe_edit_file_operation ... ok
[INFO] [stdout] test tools::tests::test_describe_rename_symbol_no_path ... ok
[INFO] [stdout] test tools::tests::test_describe_rename_symbol_operation ... ok
[INFO] [stdout] test tools::tests::test_describe_write_file_empty_content ... ok
[INFO] [stdout] test tools::tests::test_describe_unknown_tool ... ok
[INFO] [stdout] test tools::tests::test_describe_write_file_missing_content ... ok
[INFO] [stdout] test tools::tests::test_describe_write_file_normal_content ... ok
[INFO] [stdout] test tools::tests::test_describe_write_file_operation ... ok
[INFO] [stdout] test tools::tests::test_rename_result_struct ... ok
[INFO] [stdout] test tools::tests::test_rename_symbol_tool_in_build_tools ... ok
[INFO] [stdout] test tools::tests::test_rename_symbol_tool_name ... ok
[INFO] [stdout] test tools::tests::test_rename_symbol_tool_schema ... ok
[INFO] [stdout] test tools::tests::test_rename_symbol_tool_label ... ok
[INFO] [stdout] test prompt_budget::tests::test_session_budget_exhausted_after_expiry_returns_true ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_basic_execution ... ok
[INFO] [stdout] test prompt_budget::tests::test_session_budget_remaining_decreases_over_time ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_captures_exit_code ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_captures_stderr ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_confirm_rejection ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_custom_timeout_default ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_deny_pattern_fork_bomb ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_deny_patterns ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_missing_command_param ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_confirm_approval ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_custom_timeout_clamped ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_add_and_list ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_done ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_in_build_tools ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_output_truncation ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_invalid_action ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_list_empty ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_missing_description ... ok
[INFO] [stdout] test tools::tests::test_todo_tool_schema ... ok
[INFO] [stdout] test tools::tests::test_truncate_result_preserves_under_limit ... ok
[INFO] [stdout] test tools::tests::test_truncate_result_with_custom_limit ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_pre_matching ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_env_vars_available ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_pre_blocking ... ok
[INFO] [stdout] test commands_bg::tests::test_failed_command ... ok
[INFO] [stdout] test commands_bg::tests::test_launch_and_list ... ok
[INFO] [stdout] test commands_bg::tests::test_output_capture ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_emits_updates ... ok
[INFO] [stdout] test hooks::tests::test_shell_hook_wildcard_matches_all ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_timeout ... ok
[INFO] [stdout] test commands_dev::tests::test_run_health_checks_full_output_returns_results ... ok
[INFO] [stdout] test commands_dev::tests::test_health_check_function ... ok
[INFO] [stdout] test commands_map::tests::build_repo_map_with_regex_backend ... ok
[INFO] [stdout] test cli::tests::test_try_dispatch_subcommand_map ... ok
[INFO] [stdout] test tools::tests::test_streaming_bash_custom_timeout ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- commands::tests::test_arg_completions_save_load_json_files stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'commands::tests::test_arg_completions_save_load_json_files' (349) panicked at src/commands.rs:862:41:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::trace_unsynchronized::<std[128c3efe2914e152]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b48d2cfaa4a - std[128c3efe2914e152]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5b48d2cfaa4a - <<std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6771d259883166e6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5b48d2d1428a - <core[6771d259883166e6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5b48d2d1428a - core[6771d259883166e6]::fmt::write
[INFO] [stdout]    6:     0x5b48d2d00002 - std[128c3efe2914e152]::io::default_write_fmt::<alloc[fef50e8eecedd288]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5b48d2d00002 - <alloc[fef50e8eecedd288]::vec::Vec<u8> as std[128c3efe2914e152]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5b48d2cd459f - <std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5b48d2cd459f - std[128c3efe2914e152]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5b48d2cf04c9 - std[128c3efe2914e152]::panicking::default_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5b48d23a913c - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   12:     0x5b48d23a913c - test[b137923399915ecf]::test_main_with_exit_callback::<test[b137923399915ecf]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b48d2cf0742 - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   14:     0x5b48d2cf0742 - std[128c3efe2914e152]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5b48d2cd4658 - std[128c3efe2914e152]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5b48d2cc9289 - std[128c3efe2914e152]::sys::backtrace::__rust_end_short_backtrace::<std[128c3efe2914e152]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5b48d2cd57fd - __rustc[752cc74e29381ccc]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5b48d2d14afc - core[6771d259883166e6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5b48d2d14842 - core[6771d259883166e6]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5b48d22a8385 - core::result::Result<T,E>::unwrap::h3b74b29a74d4b22a
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5b48d22a8385 - yoyo::commands::tests::test_arg_completions_save_load_json_files::h6bc87413a87d709e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/commands.rs:862:41
[INFO] [stdout]   22:     0x5b48d22a87a7 - yoyo::commands::tests::test_arg_completions_save_load_json_files::{{closure}}::ha634c6ca543b939c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/commands.rs:859:51
[INFO] [stdout]   23:     0x5b48d2346406 - core::ops::function::FnOnce::call_once::h27255484aa7fb40b
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5b48d239d23b - <fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5b48d239d23b - test[b137923399915ecf]::__rust_begin_short_backtrace::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x5b48d23a9c0b - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5b48d23a9c0b - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x5b48d23a4064 - test[b137923399915ecf]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x5b48d23a4064 - std[128c3efe2914e152]::sys::backtrace::__rust_begin_short_backtrace::<test[b137923399915ecf]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x5b48d23ac812 - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::<(), core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5b48d23ac812 - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x5b48d23ac812 - <std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1} as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5b48d2cf988f - <alloc[fef50e8eecedd288]::boxed::Box<dyn core[6771d259883166e6]::ops::function::FnOnce<(), Output = ()> + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2249:9
[INFO] [stdout]   43:     0x5b48d2cf988f - <std[128c3efe2914e152]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x72e4369c2aa4 - <unknown>
[INFO] [stdout]   45:     0x72e436a4fa64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- commands_project::tests::test_detect_project_name_rust stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'commands_project::tests::test_detect_project_name_rust' (1036) panicked at src/commands_project.rs:1765:9:
[INFO] [stdout] assertion `left == right` failed: Should detect project name 'yoyo-agent' from Cargo.toml
[INFO] [stdout]   left: "yoyo"
[INFO] [stdout]  right: "yoyo-agent"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::trace_unsynchronized::<std[128c3efe2914e152]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b48d2cfaa4a - std[128c3efe2914e152]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5b48d2cfaa4a - <<std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6771d259883166e6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5b48d2d1428a - <core[6771d259883166e6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5b48d2d1428a - core[6771d259883166e6]::fmt::write
[INFO] [stdout]    6:     0x5b48d2d00002 - std[128c3efe2914e152]::io::default_write_fmt::<alloc[fef50e8eecedd288]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5b48d2d00002 - <alloc[fef50e8eecedd288]::vec::Vec<u8> as std[128c3efe2914e152]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5b48d2cd459f - <std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5b48d2cd459f - std[128c3efe2914e152]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5b48d2cf04c9 - std[128c3efe2914e152]::panicking::default_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5b48d23a913c - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   12:     0x5b48d23a913c - test[b137923399915ecf]::test_main_with_exit_callback::<test[b137923399915ecf]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b48d2cf0742 - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   14:     0x5b48d2cf0742 - std[128c3efe2914e152]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5b48d2cd4658 - std[128c3efe2914e152]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5b48d2cc9289 - std[128c3efe2914e152]::sys::backtrace::__rust_end_short_backtrace::<std[128c3efe2914e152]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5b48d2cd57fd - __rustc[752cc74e29381ccc]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5b48d2d14afc - core[6771d259883166e6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5b48d2d149e3 - core[6771d259883166e6]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:434:23
[INFO] [stdout]   20:     0x5b48d2261d06 - core::panicking::assert_failed::hf1a8907670ea83e0
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x5b48d2295247 - yoyo::commands_project::tests::test_detect_project_name_rust::h6a12debc6e33d633
[INFO] [stdout]                                at /opt/rustwide/workdir/src/commands_project.rs:1765:9
[INFO] [stdout]   22:     0x5b48d2295287 - yoyo::commands_project::tests::test_detect_project_name_rust::{{closure}}::h99085b162ca511f1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/commands_project.rs:1761:39
[INFO] [stdout]   23:     0x5b48d23585d6 - core::ops::function::FnOnce::call_once::hb7cf4bee96e8d409
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5b48d239d23b - <fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5b48d239d23b - test[b137923399915ecf]::__rust_begin_short_backtrace::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x5b48d23a9c0b - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5b48d23a9c0b - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x5b48d23a4064 - test[b137923399915ecf]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x5b48d23a4064 - std[128c3efe2914e152]::sys::backtrace::__rust_begin_short_backtrace::<test[b137923399915ecf]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x5b48d23ac812 - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::<(), core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5b48d23ac812 - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x5b48d23ac812 - <std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1} as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5b48d2cf988f - <alloc[fef50e8eecedd288]::boxed::Box<dyn core[6771d259883166e6]::ops::function::FnOnce<(), Output = ()> + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2249:9
[INFO] [stdout]   43:     0x5b48d2cf988f - <std[128c3efe2914e152]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x72e4369c2aa4 - <unknown>
[INFO] [stdout]   45:     0x72e436a4fa64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- context::tests::test_get_git_status_context_in_repo stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'context::tests::test_get_git_status_context_in_repo' (1422) panicked at src/context.rs:335:9:
[INFO] [stdout] Should return Some when in a git repo
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::trace_unsynchronized::<std[128c3efe2914e152]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b48d2cfaa4a - std[128c3efe2914e152]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5b48d2cfaa4a - <<std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6771d259883166e6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5b48d2d1428a - <core[6771d259883166e6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5b48d2d1428a - core[6771d259883166e6]::fmt::write
[INFO] [stdout]    6:     0x5b48d2d00002 - std[128c3efe2914e152]::io::default_write_fmt::<alloc[fef50e8eecedd288]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5b48d2d00002 - <alloc[fef50e8eecedd288]::vec::Vec<u8> as std[128c3efe2914e152]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5b48d2cd459f - <std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5b48d2cd459f - std[128c3efe2914e152]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5b48d2cf04c9 - std[128c3efe2914e152]::panicking::default_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5b48d23a913c - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   12:     0x5b48d23a913c - test[b137923399915ecf]::test_main_with_exit_callback::<test[b137923399915ecf]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b48d2cf0742 - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   14:     0x5b48d2cf0742 - std[128c3efe2914e152]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5b48d2cd468a - std[128c3efe2914e152]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x5b48d2cc9289 - std[128c3efe2914e152]::sys::backtrace::__rust_end_short_backtrace::<std[128c3efe2914e152]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5b48d2cd57fd - __rustc[752cc74e29381ccc]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5b48d2d14afc - core[6771d259883166e6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5b48d2214a76 - yoyo::context::tests::test_get_git_status_context_in_repo::h0fc8c5c9a4f3a193
[INFO] [stdout]                                at /opt/rustwide/workdir/src/context.rs:335:9
[INFO] [stdout]   20:     0x5b48d2214b97 - yoyo::context::tests::test_get_git_status_context_in_repo::{{closure}}::h02bdbd99bd2213dd
[INFO] [stdout]                                at /opt/rustwide/workdir/src/context.rs:332:45
[INFO] [stdout]   21:     0x5b48d2346826 - core::ops::function::FnOnce::call_once::h28e494f53da216bd
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x5b48d239d23b - <fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5b48d239d23b - test[b137923399915ecf]::__rust_begin_short_backtrace::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x5b48d23a9c0b - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   26:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x5b48d23a9c0b - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x5b48d23a4064 - test[b137923399915ecf]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x5b48d23a4064 - std[128c3efe2914e152]::sys::backtrace::__rust_begin_short_backtrace::<test[b137923399915ecf]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x5b48d23ac812 - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   35:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::<(), core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x5b48d23ac812 - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x5b48d23ac812 - <std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1} as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x5b48d2cf988f - <alloc[fef50e8eecedd288]::boxed::Box<dyn core[6771d259883166e6]::ops::function::FnOnce<(), Output = ()> + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2249:9
[INFO] [stdout]   41:     0x5b48d2cf988f - <std[128c3efe2914e152]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x72e4369c2aa4 - <unknown>
[INFO] [stdout]   43:     0x72e436a4fa64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- context::tests::test_get_git_status_context_contains_branch stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'context::tests::test_get_git_status_context_contains_branch' (1421) panicked at src/context.rs:344:47:
[INFO] [stdout] Should be in a git repo
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::trace_unsynchronized::<std[128c3efe2914e152]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b48d2cfaa4a - std[128c3efe2914e152]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5b48d2cfaa4a - <<std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6771d259883166e6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5b48d2d1428a - <core[6771d259883166e6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5b48d2d1428a - core[6771d259883166e6]::fmt::write
[INFO] [stdout]    6:     0x5b48d2d00002 - std[128c3efe2914e152]::io::default_write_fmt::<alloc[fef50e8eecedd288]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5b48d2d00002 - <alloc[fef50e8eecedd288]::vec::Vec<u8> as std[128c3efe2914e152]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5b48d2cd459f - <std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5b48d2cd459f - std[128c3efe2914e152]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5b48d2cf04c9 - std[128c3efe2914e152]::panicking::default_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5b48d23a913c - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   12:     0x5b48d23a913c - test[b137923399915ecf]::test_main_with_exit_callback::<test[b137923399915ecf]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b48d2cf0742 - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   14:     0x5b48d2cf0742 - std[128c3efe2914e152]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5b48d2cd4658 - std[128c3efe2914e152]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5b48d2cc9289 - std[128c3efe2914e152]::sys::backtrace::__rust_end_short_backtrace::<std[128c3efe2914e152]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5b48d2cd57fd - __rustc[752cc74e29381ccc]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5b48d2d14afc - core[6771d259883166e6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5b48d2d147c4 - core[6771d259883166e6]::panicking::panic_display::<&str>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x5b48d2d147c4 - core[6771d259883166e6]::option::expect_failed
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/option.rs:2260:5
[INFO] [stdout]   21:     0x5b48d27d8dab - core::option::Option<T>::expect::h0e3d9020faac5e2a
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/option.rs:971:21
[INFO] [stdout]   22:     0x5b48d221522c - yoyo::context::tests::test_get_git_status_context_contains_branch::h38c0006a6f41aa6b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/context.rs:344:47
[INFO] [stdout]   23:     0x5b48d22154c7 - yoyo::context::tests::test_get_git_status_context_contains_branch::{{closure}}::h56c46e72e2fd6ccc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/context.rs:343:53
[INFO] [stdout]   24:     0x5b48d235fc76 - core::ops::function::FnOnce::call_once::hf06658f13d00a3cb
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5b48d239d23b - <fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5b48d239d23b - test[b137923399915ecf]::__rust_begin_short_backtrace::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x5b48d23a9c0b - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   29:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x5b48d23a9c0b - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x5b48d23a4064 - test[b137923399915ecf]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x5b48d23a4064 - std[128c3efe2914e152]::sys::backtrace::__rust_begin_short_backtrace::<test[b137923399915ecf]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x5b48d23ac812 - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   38:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::<(), core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x5b48d23ac812 - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x5b48d23ac812 - <std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1} as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5b48d2cf988f - <alloc[fef50e8eecedd288]::boxed::Box<dyn core[6771d259883166e6]::ops::function::FnOnce<(), Output = ()> + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2249:9
[INFO] [stdout]   44:     0x5b48d2cf988f - <std[128c3efe2914e152]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   45:     0x72e4369c2aa4 - <unknown>
[INFO] [stdout]   46:     0x72e436a4fa64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- context::tests::test_git_status_context_format stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'context::tests::test_git_status_context_format' (1428) panicked at src/context.rs:355:47:
[INFO] [stdout] Should be in a git repo
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b48d2cfaa4a - std[128c3efe2914e152]::backtrace_rs::backtrace::trace_unsynchronized::<std[128c3efe2914e152]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b48d2cfaa4a - std[128c3efe2914e152]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5b48d2cfaa4a - <<std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6771d259883166e6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5b48d2d1428a - <core[6771d259883166e6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5b48d2d1428a - core[6771d259883166e6]::fmt::write
[INFO] [stdout]    6:     0x5b48d2d00002 - std[128c3efe2914e152]::io::default_write_fmt::<alloc[fef50e8eecedd288]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5b48d2d00002 - <alloc[fef50e8eecedd288]::vec::Vec<u8> as std[128c3efe2914e152]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5b48d2cd459f - <std[128c3efe2914e152]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5b48d2cd459f - std[128c3efe2914e152]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5b48d2cf04c9 - std[128c3efe2914e152]::panicking::default_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5b48d23a913c - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   12:     0x5b48d23a913c - test[b137923399915ecf]::test_main_with_exit_callback::<test[b137923399915ecf]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b48d2cf0742 - <alloc[fef50e8eecedd288]::boxed::Box<dyn for<'a, 'b> core[6771d259883166e6]::ops::function::Fn<(&'a std[128c3efe2914e152]::panic::PanicHookInfo<'b>,), Output = ()> + core[6771d259883166e6]::marker::Sync + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::Fn<(&std[128c3efe2914e152]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2263:9
[INFO] [stdout]   14:     0x5b48d2cf0742 - std[128c3efe2914e152]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5b48d2cd4658 - std[128c3efe2914e152]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5b48d2cc9289 - std[128c3efe2914e152]::sys::backtrace::__rust_end_short_backtrace::<std[128c3efe2914e152]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5b48d2cd57fd - __rustc[752cc74e29381ccc]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5b48d2d14afc - core[6771d259883166e6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5b48d2d147c4 - core[6771d259883166e6]::panicking::panic_display::<&str>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panicking.rs:259:5
[INFO] [stdout]   20:     0x5b48d2d147c4 - core[6771d259883166e6]::option::expect_failed
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/option.rs:2260:5
[INFO] [stdout]   21:     0x5b48d27d8dab - core::option::Option<T>::expect::h0e3d9020faac5e2a
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/option.rs:971:21
[INFO] [stdout]   22:     0x5b48d22147be - yoyo::context::tests::test_git_status_context_format::h05bce3a6b89404a1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/context.rs:355:47
[INFO] [stdout]   23:     0x5b48d2214897 - yoyo::context::tests::test_git_status_context_format::{{closure}}::hc6d954333c4db998
[INFO] [stdout]                                at /opt/rustwide/workdir/src/context.rs:354:40
[INFO] [stdout]   24:     0x5b48d23576e6 - core::ops::function::FnOnce::call_once::hafe6cf3186f5f6bb
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5b48d239d23b - <fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5b48d239d23b - test[b137923399915ecf]::__rust_begin_short_backtrace::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, fn() -> core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x5b48d23a9c0b - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   29:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x5b48d23a9c0b - std[128c3efe2914e152]::panicking::catch_unwind::<core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>, core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x5b48d23a9c0b - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<test[b137923399915ecf]::run_test_in_process::{closure#0}>, core[6771d259883166e6]::result::Result<(), alloc[fef50e8eecedd288]::string::String>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test_in_process
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x5b48d23a9c0b - test[b137923399915ecf]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x5b48d23a4064 - test[b137923399915ecf]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x5b48d23a4064 - std[128c3efe2914e152]::sys::backtrace::__rust_begin_short_backtrace::<test[b137923399915ecf]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x5b48d23ac812 - <core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   38:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::do_call::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x5b48d23ac812 - std[128c3efe2914e152]::panicking::catch_unwind::<(), core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x5b48d23ac812 - std[128c3efe2914e152]::panic::catch_unwind::<core[6771d259883166e6]::panic::unwind_safe::AssertUnwindSafe<std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x5b48d23ac812 - std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked::<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x5b48d23ac812 - <std[128c3efe2914e152]::thread::lifecycle::spawn_unchecked<test[b137923399915ecf]::run_test::{closure#1}, ()>::{closure#1} as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5b48d2cf988f - <alloc[fef50e8eecedd288]::boxed::Box<dyn core[6771d259883166e6]::ops::function::FnOnce<(), Output = ()> + core[6771d259883166e6]::marker::Send> as core[6771d259883166e6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/alloc/src/boxed.rs:2249:9
[INFO] [stdout]   44:     0x5b48d2cf988f - <std[128c3efe2914e152]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   45:     0x72e4369c2aa4 - <unknown>
[INFO] [stdout]   46:     0x72e436a4fa64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     commands::tests::test_arg_completions_save_load_json_files
[INFO] [stdout]     commands_project::tests::test_detect_project_name_rust
[INFO] [stdout]     context::tests::test_get_git_status_context_contains_branch
[INFO] [stdout]     context::tests::test_get_git_status_context_in_repo
[INFO] [stdout]     context::tests::test_git_status_context_format
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1893 passed; 5 failed; 1 ignored; 0 measured; 0 filtered out; finished in 3.33s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin yoyo`
[INFO] running `Command { std: "docker" "inspect" "9a6fdfff6336e0821c35f1fc52ba613ee02a5423254f19679b677cb4dc2e9725", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9a6fdfff6336e0821c35f1fc52ba613ee02a5423254f19679b677cb4dc2e9725", kill_on_drop: false }`
[INFO] [stdout] 9a6fdfff6336e0821c35f1fc52ba613ee02a5423254f19679b677cb4dc2e9725
