[INFO] fetching crate whet 0.1.0... [INFO] testing whet-0.1.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate whet 0.1.0 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate whet 0.1.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate whet 0.1.0 [INFO] tweaked toml for crates.io crate whet 0.1.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate whet 0.1.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate whet 0.1.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8b6cf8e3f0a6522db5c1e07586ec7f46d766662ecdbea07715a3a8a7804b261e [INFO] running `Command { std: "docker" "start" "-a" "8b6cf8e3f0a6522db5c1e07586ec7f46d766662ecdbea07715a3a8a7804b261e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8b6cf8e3f0a6522db5c1e07586ec7f46d766662ecdbea07715a3a8a7804b261e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8b6cf8e3f0a6522db5c1e07586ec7f46d766662ecdbea07715a3a8a7804b261e", kill_on_drop: false }` [INFO] [stdout] 8b6cf8e3f0a6522db5c1e07586ec7f46d766662ecdbea07715a3a8a7804b261e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f69cecf8bebebc156e7f26098e8057cd20fea1f8cbd4fe2c9d8aa283fb516c50 [INFO] running `Command { std: "docker" "start" "-a" "f69cecf8bebebc156e7f26098e8057cd20fea1f8cbd4fe2c9d8aa283fb516c50", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling zerocopy v0.8.39 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling linux-raw-sys v0.11.0 [INFO] [stderr] Compiling getrandom v0.4.1 [INFO] [stderr] Compiling rustls v0.23.36 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling syn v2.0.116 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling nibble_vec v0.1.0 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling radix_trie v0.2.1 [INFO] [stderr] Compiling clap_builder v4.5.59 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling home v0.5.12 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling uuid v1.21.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling colored v3.1.1 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling fd-lock v4.0.4 [INFO] [stderr] Compiling tempfile v3.25.0 [INFO] [stderr] Compiling rustyline v15.0.0 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling dialoguer v0.11.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling clap v4.5.59 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling whet v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 09s [INFO] running `Command { std: "docker" "inspect" "f69cecf8bebebc156e7f26098e8057cd20fea1f8cbd4fe2c9d8aa283fb516c50", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f69cecf8bebebc156e7f26098e8057cd20fea1f8cbd4fe2c9d8aa283fb516c50", kill_on_drop: false }` [INFO] [stdout] f69cecf8bebebc156e7f26098e8057cd20fea1f8cbd4fe2c9d8aa283fb516c50 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1ac97d2e28f42daf9720a5c5e4ec04f99142bfe988c5e5d1515f452fb5f806bb [INFO] running `Command { std: "docker" "start" "-a" "1ac97d2e28f42daf9720a5c5e4ec04f99142bfe988c5e5d1515f452fb5f806bb", kill_on_drop: false }` [INFO] [stderr] Compiling whet v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 16.61s [INFO] running `Command { std: "docker" "inspect" "1ac97d2e28f42daf9720a5c5e4ec04f99142bfe988c5e5d1515f452fb5f806bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1ac97d2e28f42daf9720a5c5e4ec04f99142bfe988c5e5d1515f452fb5f806bb", kill_on_drop: false }` [INFO] [stdout] 1ac97d2e28f42daf9720a5c5e4ec04f99142bfe988c5e5d1515f452fb5f806bb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c4999e647bf39e8270a78c9bdb392f413f56f221de34de18d5f9170ab2271fd0 [INFO] running `Command { std: "docker" "start" "-a" "c4999e647bf39e8270a78c9bdb392f413f56f221de34de18d5f9170ab2271fd0", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/whet-455e86dfd87fb442) [INFO] [stdout] [INFO] [stdout] running 557 tests [INFO] [stdout] test agent::prompt::tests::test_load_project_instructions_finds_file ... ok [INFO] [stdout] test agent::prompt::tests::test_load_project_instructions_none_when_missing ... ok [INFO] [stdout] test agent::prompt::tests::test_load_project_instructions_dotfile ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_has_core_rules_section ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_all_sections_present ... ok [INFO] [stdout] test agent::prompt::tests::test_load_project_instructions_searches_parent ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_has_error_recovery ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_be_concise_rule ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_has_editing_rules ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_has_tool_selection_table ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_identifies_as_whet ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_has_vague_request_handling ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_language_rule_is_first_and_mandatory ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_language_rule_appears_twice ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_language_reminder_at_end ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_no_skills_means_no_skills_section ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_no_old_project_names ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_has_workflow_examples ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_no_generic_advice_rule ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_workflow_read_file_before_repo_map ... ok [INFO] [stdout] test agent::prompt::tests::test_system_prompt_contains_whet ... ok [INFO] [stdout] test agent::prompt::tests::test_system_prompt_with_skills ... ok [INFO] [stdout] test agent::tests::test_apply_diff_without_read_returns_warning ... ok [INFO] [stdout] test agent::tests::test_accept_edits_allows_write_file ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_readme_mentioned_in_tool_selection ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_read_before_editing_rule ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_tool_selection_correct_vs_wrong ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_vague_requests_mention_cargo_test ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_chain_tools_rule ... ok [INFO] [stdout] test agent::tests::test_empty_content_response ... ok [INFO] [stdout] test agent::tests::test_needs_approval_default_mode ... ok [INFO] [stdout] test agent::tests::test_edit_file_path_normalization ... ok [INFO] [stdout] test agent::tests::test_needs_approval_yolo_mode ... ok [INFO] [stdout] test agent::tests::test_edit_file_without_read_returns_warning ... ok [INFO] [stdout] test agent::tests::test_memory_accumulates_across_messages ... ok [INFO] [stdout] test agent::tests::test_needs_approval_accept_edits_mode ... ok [INFO] [stdout] test agent::tests::test_llm_error_returns_error_message ... ok [INFO] [stdout] test agent::tests::test_max_iterations_reached ... ok [INFO] [stdout] test agent::tests::test_multiple_tool_calls_in_one_response ... ok [INFO] [stdout] test agent::tests::test_edit_file_after_read_succeeds ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_skills_appended_after_base ... ok [INFO] [stdout] test agent::tests::test_plan_mode_allows_safe_tools ... ok [INFO] [stdout] test agent::tests::test_plan_mode_blocks_dangerous_tools ... ok [INFO] [stdout] test agent::tests::test_safe_tool_never_needs_approval ... ok [INFO] [stdout] test agent::tests::test_resumed_session_still_tracks_read_paths ... ok [INFO] [stdout] test agent::tests::test_plan_mode_blocks_moderate_tools ... ok [INFO] [stdout] test agent::tests::test_simple_text_response ... ok [INFO] [stdout] test agent::tests::test_system_prompt_is_first_message ... ok [INFO] [stdout] test agent::tests::test_process_message_with_callback_receives_tokens ... ok [INFO] [stdout] test agent::prompt::tests::test_prompt_act_dont_ask_rule ... ok [INFO] [stdout] test agent::tests::test_process_message_with_callback_tool_calls ... ok [INFO] [stdout] test agent::tests::test_process_message_with_callback_empty_callback ... ok [INFO] [stdout] test agent::tests::test_process_message_delegates_to_callback_version ... ok [INFO] [stdout] test agent::tests::test_process_message_with_callback_error ... ok [INFO] [stdout] test agent::tests::test_process_message_with_callback_multiple_turns ... ok [INFO] [stdout] test agent::tests::test_tool_call_then_response ... ok [INFO] [stdout] test config::tests::test_config_default_new_fields ... ok [INFO] [stdout] test agent::tests::test_tool_denied_by_approval_callback ... ok [INFO] [stdout] test config::tests::test_config_extra_unknown_fields_ignored ... ok [INFO] [stdout] test config::tests::test_config_backward_compat_without_api_key ... ok [INFO] [stdout] test agent::tests::test_resumed_edit_file_skips_read_before_edit_warning ... ok [INFO] [stdout] test agent::tests::test_tool_execution_error_handled ... ok [INFO] [stdout] test config::tests::test_config_backward_compat_without_streaming ... ok [INFO] [stdout] test agent::tests::test_tool_output_exceeding_limit_is_truncated ... ok [INFO] [stdout] test agent::tests::test_unknown_tool_handled_gracefully ... ok [INFO] [stdout] test agent::tests::test_tool_output_within_limit_not_truncated ... ok [INFO] [stdout] test config::tests::test_config_load_returns_defaults_when_no_file ... ok [INFO] [stdout] test config::tests::test_config_parse_missing_section ... ok [INFO] [stdout] test agent::tests::test_write_file_without_read_succeeds ... ok [INFO] [stdout] test agent::tests::test_tool_call_with_content_alongside ... ok [INFO] [stdout] test agent::tests::test_yolo_mode_skips_approval ... ok [INFO] [stdout] test config::tests::test_config_roundtrip_toml ... ok [INFO] [stdout] test config::tests::test_config_parse_invalid_toml ... ok [INFO] [stdout] test config::tests::test_config_backward_compat_without_mcp ... ok [INFO] [stdout] test config::tests::test_config_mcp_server_without_args ... ok [INFO] [stdout] test agent::tests::test_tool_output_exactly_at_limit_not_truncated ... ok [INFO] [stdout] test agent::tests::test_tool_approved_by_callback ... ok [INFO] [stdout] test config::tests::test_config_with_api_key ... ok [INFO] [stdout] test config::tests::test_config_with_all_new_fields ... ok [INFO] [stdout] test config::tests::test_config_parse_wrong_type ... ok [INFO] [stdout] test config::tests::test_config_parse_custom_values ... ok [INFO] [stdout] test agent::tests::test_tool_output_truncation_utf8_safe ... ok [INFO] [stdout] test config::tests::test_default_permission_mode ... ok [INFO] [stdout] test config::tests::test_config_with_streaming_enabled ... ok [INFO] [stdout] test config::tests::test_permission_mode_backward_compat ... ok [INFO] [stdout] test config::tests::test_config_with_mcp_servers ... ok [INFO] [stdout] test config::tests::test_permission_mode_display ... ok [INFO] [stdout] test config::tests::test_permission_mode_accept_edits ... ok [INFO] [stdout] test config::tests::test_permission_mode_roundtrip ... ok [INFO] [stdout] test config::tests::test_config_roundtrip_with_new_fields ... ok [INFO] [stdout] test config::tests::test_permission_mode_yolo ... ok [INFO] [stdout] test llm::anthropic::tests::test_client_stores_config ... ok [INFO] [stdout] test llm::anthropic::tests::test_client_trims_trailing_slash ... ok [INFO] [stdout] test config::tests::test_default_config_values ... ok [INFO] [stdout] test llm::anthropic::tests::test_convert_multiple_system_messages ... ok [INFO] [stdout] test llm::anthropic::tests::test_parse_response_text ... ok [INFO] [stdout] test llm::anthropic::tests::test_sse_content_block_start_tool_use ... ok [INFO] [stdout] test llm::anthropic::tests::test_sse_content_block_delta_text ... ok [INFO] [stdout] test llm::anthropic::tests::test_sse_input_json_delta ... ok [INFO] [stdout] test llm::anthropic::tests::test_convert_tools ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_messages_system ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_messages_user ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_multiple_system_messages ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_tools ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_messages_tool_result ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_messages_assistant_with_tool_calls ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_tools_empty ... ok [INFO] [stdout] test llm::gemini::tests::test_parse_response_no_candidates ... ok [INFO] [stdout] test llm::gemini::tests::test_streaming_sse_function_call_chunk ... ok [INFO] [stdout] test llm::gemini::tests::test_streaming_sse_text_chunk ... ok [INFO] [stdout] test llm::gemini::tests::test_convert_messages_assistant ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_system_message ... ok [INFO] [stdout] test llm::anthropic::tests::test_convert_messages_assistant_with_tool_calls ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_mixed_conversation ... ok [INFO] [stdout] test llm::anthropic::tests::test_convert_messages_system ... ok [INFO] [stdout] test llm::anthropic::tests::test_convert_messages_tool_result ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_tool_result_message ... ok [INFO] [stdout] test llm::anthropic::tests::test_convert_messages_user ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_tools_empty ... ok [INFO] [stdout] test llm::anthropic::tests::test_parse_response_tool_use ... ok [INFO] [stdout] test llm::anthropic::tests::test_request_serialization ... ok [INFO] [stdout] test llm::gemini::tests::test_client_stores_config ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_user_message ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_tools_single ... ok [INFO] [stdout] test llm::ollama::tests::test_message_constructors ... ok [INFO] [stdout] test llm::ollama::tests::test_request_serialization_no_tools ... ok [INFO] [stdout] test llm::ollama::tests::test_request_serialization_with_tools ... ok [INFO] [stdout] test llm::ollama::tests::test_response_parse_text_only ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_chunk_parse_done ... ok [INFO] [stdout] test llm::ollama::tests::test_response_parse_with_tool_calls ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_chunk_parse_no_done_field ... ok [INFO] [stdout] test llm::ollama::tests::test_response_parse_multiple_tool_calls ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_chunk_with_tool_calls ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_chunk_parse_content ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_empty_lines_skipped ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_tool_calls_accumulated ... ok [INFO] [stdout] test llm::ollama::tests::test_streaming_content_accumulation_simulation ... ok [INFO] [stdout] test llm::gemini::tests::test_request_serialization ... ok [INFO] [stdout] test llm::gemini::tests::test_parse_response_function_call ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_mixed_conversation ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_tool_result_message ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_system_message ... ok [INFO] [stdout] test llm::openai_compat::tests::test_request_serialization ... ok [INFO] [stdout] test llm::gemini::tests::test_client_trims_trailing_slash ... ok [INFO] [stdout] test llm::ollama::tests::test_client_stores_config ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_tools ... ok [INFO] [stdout] test llm::ollama::tests::test_response_parse_empty_content_becomes_none ... ok [INFO] [stdout] test llm::openai_compat::tests::test_client_stores_config ... ok [INFO] [stdout] test llm::openai_compat::tests::test_response_parse_empty_content_becomes_none ... ok [INFO] [stdout] test llm::openai_compat::tests::test_response_parse_text_only ... ok [INFO] [stdout] test llm::openai_compat::tests::test_response_parse_multiple_tool_calls ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_assistant_with_tool_calls ... ok [INFO] [stdout] test llm::openai_compat::tests::test_client_no_api_key ... ok [INFO] [stdout] test llm::openai_compat::tests::test_client_trims_trailing_slash ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_assistant_with_tool_calls ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_empty_tools ... ok [INFO] [stdout] test llm::openai_compat::tests::test_convert_user_message ... ok [INFO] [stdout] test llm::openai_compat::tests::test_request_serialization_with_stream_true ... ok [INFO] [stdout] test llm::openai_compat::tests::test_response_parse_with_tool_calls ... ok [INFO] [stdout] test llm::openai_compat::tests::test_response_parse_null_content ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_malformed_json_skipped ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_non_data_lines_skipped ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_line_parsing_done ... ok [INFO] [stdout] test llm::openai_compat::tests::test_tool_call_arguments_json_string_parsing ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_error_display ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_line_parsing_content_delta ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_tool_call_delta_assembly ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_empty_content_delta_skipped ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_multiple_tool_calls_delta ... ok [INFO] [stdout] test llm::openai_compat::tests::test_tool_call_arguments_invalid_json_fallback ... ok [INFO] [stdout] test llm::openai_compat::tests::test_sse_content_accumulation_simulation ... ok [INFO] [stdout] test mcp::protocol::tests::test_json_rpc_error_negative_code ... ok [INFO] [stdout] test mcp::protocol::tests::test_request_serialization ... ok [INFO] [stdout] test mcp::protocol::tests::test_request_large_id ... ok [INFO] [stdout] test mcp::client::tests::test_spawn_nonexistent_command ... ok [INFO] [stdout] test mcp::protocol::tests::test_request_with_nested_params ... ok [INFO] [stdout] test mcp::protocol::tests::test_response_deserialization_error ... ok [INFO] [stdout] test mcp::protocol::tests::test_request_no_params ... ok [INFO] [stdout] test mcp::protocol::tests::test_response_deserialization_success ... ok [INFO] [stdout] test mcp::protocol::tests::test_response_with_null_id ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_call_result_default_is_error ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_call_result_error ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_call_result_multiple_content ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_info_deserialization ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_call_result_deserialization ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_info_list_parsing ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_info_minimal ... ok [INFO] [stdout] test mcp::protocol::tests::test_tool_info_with_empty_description ... ok [INFO] [stdout] test mcp::tests::test_register_mcp_tools_empty_servers ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_server_closes_connection ... ok [INFO] [stdout] test mcp::tests::test_register_mcp_tools_nonexistent_server ... ok [INFO] [stdout] test mcp::tests::test_register_mcp_tools_mixed_success_failure ... ok [INFO] [stdout] test mcp::tool_wrapper::tests::test_tool_wrapper_description ... ok [INFO] [stdout] test mcp::tool_wrapper::tests::test_tool_wrapper_name_format ... ok [INFO] [stdout] test memory::store::tests::test_backward_compat_null_working_dir ... ok [INFO] [stdout] test memory::store::tests::test_duplicate_conversation_id_fails ... ok [INFO] [stdout] test memory::store::tests::test_get_latest_conversation ... ok [INFO] [stdout] test mcp::protocol::tests::test_notification_serialization ... ok [INFO] [stdout] test mcp::protocol::tests::test_notification_with_params ... ok [INFO] [stdout] test memory::store::tests::test_latest_conversation_updated_on_message ... ok [INFO] [stdout] test memory::store::tests::test_large_content_stored ... ok [INFO] [stdout] test memory::store::tests::test_create_and_load_conversation ... ok [INFO] [stdout] test memory::store::tests::test_list_conversations_empty_dir ... ok [INFO] [stdout] test memory::store::tests::test_list_conversations ... ok [INFO] [stdout] test memory::store::tests::test_load_nonexistent_conversation ... ok [INFO] [stdout] test memory::store::tests::test_get_latest_conversation_filters_by_dir ... ok [INFO] [stdout] test memory::store::tests::test_load_empty_conversation ... ok [INFO] [stdout] test memory::store::tests::test_special_characters_in_content ... ok [INFO] [stdout] test llm::gemini::tests::test_parse_response_text ... ok [INFO] [stdout] test llm::ollama::tests::test_convert_empty_messages ... ok [INFO] [stdout] test memory::store::tests::test_tool_call_id_stored ... ok [INFO] [stdout] test memory::store::tests::test_tool_calls_null_backward_compat ... ok [INFO] [stdout] test security::path::tests::test_command_allows_awk_safe ... ok [INFO] [stdout] test memory::store::tests::test_tool_calls_json_stored_and_loaded ... ok [INFO] [stdout] test memory::store::tests::test_message_ordering_preserved ... ok [INFO] [stdout] test memory::store::tests::test_multiple_conversations_isolated ... ok [INFO] [stdout] test memory::store::tests::test_update_conversation_title ... ok [INFO] [stdout] test security::path::tests::test_command_allows_chmod_safe ... ok [INFO] [stdout] test security::path::tests::test_command_allows_diff_safe ... ok [INFO] [stdout] test security::path::tests::test_command_allows_grep_safe ... ok [INFO] [stdout] test security::path::tests::test_command_allows_redirect_to_safe_path ... ok [INFO] [stdout] test security::path::tests::test_command_allows_sed_safe ... ok [INFO] [stdout] test security::path::tests::test_command_allows_safe_find ... ok [INFO] [stdout] test security::path::tests::test_command_allows_safe_chains ... ok [INFO] [stdout] test security::path::tests::test_command_allows_normal_commands ... ok [INFO] [stdout] test memory::store::tests::test_file_based_store ... ok [INFO] [stdout] test security::path::tests::test_command_allows_tee_to_safe_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_awk_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_allows_xargs_safe ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_bash_c ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_cat_dollar_home_ssh ... ok [INFO] [stdout] test security::path::tests::test_command_allows_safe_script_execution ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_cat_etc_shadow ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_chain_and ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_dd_to_dev ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_cat_via_symlink ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_chain_or ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_cp_mv_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_chain_semicolon ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_diff_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_curl_pipe_bash ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_env_dump ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_chmod_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_eval_curl ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_mkfs ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_grep_sensitive_file ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_find_exec_cat_shadow ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_fork_bomb ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_pipe_segment_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_proc_environ ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_node_sensitive_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_redirect_all_to_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_redirect_stderr_to_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_nested_subshell ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_redirect_to_sensitive_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_perl_sensitive_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_redirect_in_chain ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_redirect_to_ssh_key ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_redirect_with_traversal ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_rm_rf_root ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_script_with_ssh_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_ruby_sensitive_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_sensitive_path_with_traversal ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_su_doas_pkexec ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_sudo ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_subshell_backtick ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_subshell_dollar_paren ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_python_sensitive_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_sed_sensitive ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_xargs_sudo ... ok [INFO] [stdout] test security::path::tests::test_dot_dot_in_safe_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_xargs_rm ... ok [INFO] [stdout] test security::path::tests::test_normalize_path_resolves_dot_dot ... ok [INFO] [stdout] test security::path::tests::test_path_safety_allows_etc_other ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_tee_to_sensitive_path ... ok [INFO] [stdout] test security::path::tests::test_command_blocks_xargs_cat ... ok [INFO] [stdout] test security::path::tests::test_normalize_path_root ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_aws ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_etc_shadow ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_docker_config ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_kube_config ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_etc_sudoers ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_etc_gshadow ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_gnupg ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_ssh_dir ... ok [INFO] [stdout] test security::path::tests::test_path_traversal_blocked ... ok [INFO] [stdout] test security::path::tests::test_path_traversal_home_sensitive ... ok [INFO] [stdout] test security::path::tests::test_symlink_to_sensitive_path_blocked ... ok [INFO] [stdout] test security::path::tests::test_symlink_to_safe_path_allowed ... ok [INFO] [stdout] test skills::tests::test_expand_tilde ... ok [INFO] [stdout] test skills::tests::test_load_skills_missing_dir ... ok [INFO] [stdout] test security::path::tests::test_path_safety_blocks_dollar_home_ssh ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_blocked_path ... ok [INFO] [stdout] test skills::tests::test_load_skills_empty_dir ... ok [INFO] [stdout] test security::path::tests::test_path_safety_safe_paths ... ok [INFO] [stdout] test security::path::tests::test_symlink_to_ssh_dir_blocked ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_missing_args ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_add_lines_only ... ok [INFO] [stdout] test skills::tests::test_load_skills_with_md_files ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_add_lines ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_malformed_hunk_header ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_no_hunks ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_old_start_zero_rejected ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_nonexistent_file ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_preserves_original_whitespace ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_remove_lines ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_no_trailing_newline_preserved ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_remove_lines_only ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_trailing_newline_preserved ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_context_mismatch ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_with_context ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_with_file_headers ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_with_file_headers_replace ... ok [INFO] [stdout] test tools::apply_diff::tests::test_parse_hunk_header_with_context_text ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_multi_hunk_diff ... ok [INFO] [stdout] test tools::apply_diff::tests::test_parse_hunk_header_without_count ... ok [INFO] [stdout] test tools::apply_diff::tests::test_parse_hunk_header_with_count ... ok [INFO] [stdout] test tools::apply_diff::tests::test_risk_level_is_moderate ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_blocked_path ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_multi_hunk_with_gap ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_simple_diff ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_missing_args ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_context_output ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_nonexistent_file ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_basic_replacement ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_multiple_matches ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_empty_replacement ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_old_text_not_found ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_preserves_rest ... ok [INFO] [stdout] test tools::edit_file::tests::test_get_context_beginning_of_file ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_unicode_content ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_via_symlink_to_sensitive_blocked ... ok [INFO] [stdout] test tools::edit_file::tests::test_get_context_end_of_file ... ok [INFO] [stdout] test tools::git::tests::test_git_checkout_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_cherry_pick_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_clean_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_command_risk_level_moderate ... ok [INFO] [stdout] test tools::git::tests::test_git_commit_with_long_form_m_flag ... ok [INFO] [stdout] test tools::git::tests::test_git_branch ... ok [INFO] [stdout] test tools::git::tests::test_git_commit_without_m_false_positive_rejected ... ok [INFO] [stdout] test tools::git::tests::test_git_commit_without_m_flag ... ok [INFO] [stdout] test tools::git::tests::test_git_command_risk_level_safe ... ok [INFO] [stdout] test tools::git::tests::test_git_commit_with_m_flag_is_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_error_messages_contain_allowed_list ... ok [INFO] [stdout] test tools::git::tests::test_git_fetch_accepted ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_via_symlink_to_safe_allowed ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_multiline_replacement ... ok [INFO] [stdout] test tools::git::tests::test_git_merge_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_missing_command_arg ... ok [INFO] [stdout] test tools::git::tests::test_git_push_force_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_push_force_with_lease_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_push_is_approval_required ... ok [INFO] [stdout] test tools::git::tests::test_git_rebase_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_diff ... ok [INFO] [stdout] test tools::git::tests::test_git_rebase_interactive_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_remote_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_reset_hard_with_extra_args ... ok [INFO] [stdout] test tools::git::tests::test_git_reset_hard_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_risk_level_unknown_command ... ok [INFO] [stdout] test tools::git::tests::test_git_reset_soft_allowed ... ok [INFO] [stdout] test tools::git::tests::test_git_show ... ok [INFO] [stdout] test tools::git::tests::test_git_push_force_f_blocked ... ok [INFO] [stdout] test tools::git::tests::test_git_log ... ok [INFO] [stdout] test tools::git::tests::test_git_status ... ok [INFO] [stdout] test tools::git::tests::test_git_tag_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_switch_accepted ... ok [INFO] [stdout] test tools::git::tests::test_git_unknown_command ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_basic ... ok [INFO] [stdout] test tools::edit_file::tests::test_edit_file_size_limit ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_mixed_quotes ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_multiple_spaces ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_only_whitespace ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_quoted ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_single_arg ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_tab_separator ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_empty ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_double_quoted ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_unclosed_double_quote ... ok [INFO] [stdout] test tools::git::tests::test_git_stash_list ... ok [INFO] [stdout] test tools::git::tests::test_shell_split_unclosed_single_quote ... ok [INFO] [stdout] test tools::grep::tests::test_grep_blocked_path ... ok [INFO] [stdout] test tools::grep::tests::test_grep_case_sensitive_no_match ... ok [INFO] [stdout] test tools::grep::tests::test_grep_case_insensitive ... ok [INFO] [stdout] test tools::apply_diff::tests::test_apply_diff_file_size_limit ... ok [INFO] [stdout] test tools::grep::tests::test_grep_empty_pattern ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_call_unknown_tool ... ok [INFO] [stdout] test tools::grep::tests::test_grep_finds_pattern_in_file ... ok [INFO] [stdout] test tools::grep::tests::test_grep_missing_pattern ... ok [INFO] [stdout] test tools::grep::tests::test_grep_line_numbers_start_at_one ... ok [INFO] [stdout] test tools::grep::tests::test_grep_nonexistent_path ... ok [INFO] [stdout] test tools::grep::tests::test_grep_no_matches ... ok [INFO] [stdout] test tools::grep::tests::test_grep_max_results_truncation ... ok [INFO] [stdout] test tools::grep::tests::test_grep_skips_binary_files ... ok [INFO] [stdout] test tools::grep::tests::test_grep_single_file_search ... ok [INFO] [stdout] test tools::grep::tests::test_grep_skips_git_directory ... ok [INFO] [stdout] test tools::grep::tests::test_grep_default_path ... ok [INFO] [stdout] test tools::grep::tests::test_grep_finds_pattern_in_directory ... ok [INFO] [stdout] test tools::grep::tests::test_grep_unicode_pattern ... ok [INFO] [stdout] test tools::grep::tests::test_is_binary_nonexistent_file ... ok [INFO] [stdout] test tools::grep::tests::test_is_binary_null_at_start ... ok [INFO] [stdout] test tools::grep::tests::test_is_binary_with_null_bytes ... ok [INFO] [stdout] test tools::grep::tests::test_is_binary_with_text_file ... ok [INFO] [stdout] test tools::grep::tests::test_is_binary_null_after_check_boundary ... ok [INFO] [stdout] test tools::grep::tests::test_grep_line_numbers ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_blocked_sensitive_path ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_directories_have_trailing_slash ... ok [INFO] [stdout] test tools::grep::tests::test_grep_file_exactly_at_size_limit ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_empty_directory ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_missing_path_arg ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_non_recursive_default ... ok [INFO] [stdout] test mcp::tool_wrapper::tests::test_tool_wrapper_multiple_calls_shared_client ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_nonexistent_directory ... ok [INFO] [stdout] test tools::grep::tests::test_grep_skips_large_files ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_file_instead_of_dir ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_hidden_files_shown ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_src_directory ... ok [INFO] [stdout] test tools::grep::tests::test_grep_special_regex_chars_treated_literally ... ok [INFO] [stdout] test tools::list_dir::tests::test_non_recursive_unaffected_by_skip_dirs ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_symlink_dir_not_followed_recursively ... ok [INFO] [stdout] test tools::read_file::tests::test_read_blocked_etc_shadow ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_recursive ... ok [INFO] [stdout] test tools::list_dir::tests::test_recursive_skips_skip_dirs_contents ... ok [INFO] [stdout] test tools::read_file::tests::test_read_blocked_sudoers ... ok [INFO] [stdout] test tools::read_file::tests::test_read_existing_file ... ok [INFO] [stdout] test tools::read_file::tests::test_read_directory_fails ... ok [INFO] [stdout] test tools::read_file::tests::test_read_path_traversal_blocked ... ok [INFO] [stdout] test tools::read_file::tests::test_read_blocked_etc_gshadow ... ok [INFO] [stdout] test tools::read_file::tests::test_read_missing_path_arg ... ok [INFO] [stdout] test tools::read_file::tests::test_read_nonexistent_file ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_list_tools ... ok [INFO] [stdout] test tools::read_file::tests::test_read_ssh_via_absolute_home_path ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_client_drop_kills_process ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_c_symbols ... ok [INFO] [stdout] test tools::read_file::tests::test_read_via_symlink_to_sensitive_blocked ... ok [INFO] [stdout] test tools::read_file::tests::test_read_write_roundtrip ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_java_symbols ... ok [INFO] [stdout] test tools::read_file::tests::test_read_path_traversal_deep ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_kotlin_symbols ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_ruby_symbols ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_rust_advanced_symbols ... ok [INFO] [stdout] test tools::read_file::tests::test_read_via_symlink_to_safe_allowed ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_rust_enum_and_trait ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_rust_symbols ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_go_symbols ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_signature_no_brace ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_js_ts_symbols ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_js_ts_type_and_interface ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_signature_with_semicolon ... ok [INFO] [stdout] test tools::repo_map::tests::test_is_source_file_edge_cases ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_blocked_path ... ok [INFO] [stdout] test tools::list_dir::tests::test_list_recursive_depth_limit ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_signature_truncation ... ok [INFO] [stdout] test mcp::tests::test_register_mcp_tools_with_mock_server ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_no_source_files ... ok [INFO] [stdout] test tools::grep::tests::test_grep_skips_target_directory ... ok [INFO] [stdout] test tools::repo_map::tests::test_is_source_file ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_nonexistent_dir ... ok [INFO] [stdout] test tools::read_file::tests::test_read_file_size_limit ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_file_instead_of_dir ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_skips_node_modules ... ok [INFO] [stdout] test tools::shell::tests::test_shell_blocks_dangerous_command ... ok [INFO] [stdout] test tools::shell::tests::test_shell_blocks_redirect_to_sensitive ... ok [INFO] [stdout] test tools::shell::tests::test_shell_blocks_chmod_sensitive ... ok [INFO] [stdout] test tools::shell::tests::test_shell_blocks_xargs_cat ... ok [INFO] [stdout] test tools::shell::tests::test_shell_blocks_tee_to_sensitive ... ok [INFO] [stdout] test tools::repo_map::tests::test_symbols_include_line_numbers ... ok [INFO] [stdout] test tools::shell::tests::test_shell_binary_output_handled ... ok [INFO] [stdout] test tools::shell::tests::test_shell_empty_command ... ok [INFO] [stdout] test tools::repo_map::tests::test_extract_python_symbols ... ok [INFO] [stdout] test tools::shell::tests::test_shell_invalid_working_dir ... ok [INFO] [stdout] test tools::shell::tests::test_shell_failing_command_reports_exit_code ... ok [INFO] [stdout] test tools::shell::tests::test_shell_missing_command_arg ... ok [INFO] [stdout] test tools::shell::tests::test_shell_success_no_exit_code_shown ... ok [INFO] [stdout] test tools::shell::tests::test_shell_working_dir ... ok [INFO] [stdout] test tools::tests::test_all_tool_names_are_unique ... ok [INFO] [stdout] test tools::tests::test_list_dir_tool ... ok [INFO] [stdout] test tools::tests::test_list_dir_tool_missing ... ok [INFO] [stdout] test tools::tests::test_read_file_tool ... ok [INFO] [stdout] test tools::tests::test_read_file_tool_missing ... ok [INFO] [stdout] test tools::tests::test_registry_default_is_empty ... ok [INFO] [stdout] test tools::tests::test_registry_definitions ... ok [INFO] [stdout] test tools::tests::test_all_tools_have_valid_schemas ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_call_tool ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_multiple_tool_calls ... ok [INFO] [stdout] test tools::tests::test_safe_definitions_only_safe_tools ... ok [INFO] [stdout] test tools::tests::test_tool_error_display_messages ... ok [INFO] [stdout] test tools::tests::test_registry_get_by_name ... ok [INFO] [stdout] test tools::tests::test_registry_register_and_list ... ok [INFO] [stdout] test tools::shell::tests::test_shell_mixed_stdout_stderr ... ok [INFO] [stdout] test tools::shell::tests::test_shell_multiline_output ... ok [INFO] [stdout] test tools::tests::test_registry_empty ... ok [INFO] [stdout] test tools::tests::test_tool_error_is_std_error ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_entities ... ok [INFO] [stdout] test mcp::client::tests::test_mcp_initialize_handshake ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_basic ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_comment_handling ... ok [INFO] [stdout] test tools::tests::test_tool_risk_levels ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_apos_entity ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_line_breaks ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_multiple_blank_lines_collapsed ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_nbsp_entity ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_nested_tags ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_empty_input ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_self_closing_br ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_strips_script ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_unknown_entity ... ok [INFO] [stdout] test tools::shell::tests::test_shell_echo ... ok [INFO] [stdout] test tools::web_fetch::tests::test_web_fetch_invalid_url ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_strips_style ... ok [INFO] [stdout] test tools::web_fetch::tests::test_web_fetch_ftp_url_rejected ... ok [INFO] [stdout] test tools::web_fetch::tests::test_web_fetch_missing_url ... ok [INFO] [stdout] test tools::web_fetch::tests::test_web_fetch_schemeless_url_rejected ... ok [INFO] [stdout] test tools::shell::tests::test_shell_stderr_output ... ok [INFO] [stdout] test tools::web_search::tests::test_parse_ddg_results_empty_html ... ok [INFO] [stdout] test tools::web_search::tests::test_decode_entities ... ok [INFO] [stdout] test tools::web_search::tests::test_extract_attr ... ok [INFO] [stdout] test tools::web_search::tests::test_extract_attr_missing_value ... ok [INFO] [stdout] test tools::web_search::tests::test_parse_ddg_results_extracts_fields ... ok [INFO] [stdout] test tools::web_search::tests::test_decode_entities_numeric ... ok [INFO] [stdout] test tools::web_search::tests::test_parse_ddg_results_respects_max ... ok [INFO] [stdout] test tools::web_fetch::tests::test_html_to_text_unicode_content ... ok [INFO] [stdout] test tools::web_search::tests::test_url_decode ... ok [INFO] [stdout] test tools::web_search::tests::test_parse_ddg_results_no_results ... ok [INFO] [stdout] test tools::web_search::tests::test_url_decode_incomplete_percent ... ok [INFO] [stdout] test tools::web_search::tests::test_strip_tags ... ok [INFO] [stdout] test tools::web_search::tests::test_strip_tags_nested_same_type ... ok [INFO] [stdout] test tools::web_search::tests::test_url_decode_no_encoding ... ok [INFO] [stdout] test tools::web_search::tests::test_urlencoding ... ok [INFO] [stdout] test tools::web_search::tests::test_urlencoding_special_chars ... ok [INFO] [stdout] test tools::web_search::tests::test_urlencoding_safe_chars_pass_through ... ok [INFO] [stdout] test tools::web_search::tests::test_url_decode_invalid_percent ... ok [INFO] [stdout] test tools::web_search::tests::test_web_search_missing_query ... ok [INFO] [stdout] test tools::web_search::tests::test_urlencoding_unicode ... ok [INFO] [stdout] test tools::web_search::tests::test_strip_tags_malformed ... ok [INFO] [stdout] test tools::write_file::tests::test_write_allows_empty_new_file ... ok [INFO] [stdout] test tools::write_file::tests::test_write_allows_overwrite_with_content ... ok [INFO] [stdout] test tools::web_search::tests::test_extract_attr_single_quotes ... ok [INFO] [stdout] test tools::shell::tests::test_shell_timeout_kills_slow_command ... ok [INFO] [stdout] test mcp::tool_wrapper::tests::test_tool_wrapper_execute ... ok [INFO] [stdout] test tools::web_fetch::tests::test_web_fetch_connection_refused ... ok [INFO] [stdout] test tools::shell::tests::test_shell_large_output ... ok [INFO] [stdout] test tools::write_file::tests::test_write_blocks_emptying_existing_file ... ok [INFO] [stdout] test tools::write_file::tests::test_write_and_verify ... ok [INFO] [stdout] test tools::write_file::tests::test_write_blocked_sensitive_path ... ok [INFO] [stdout] test tools::write_file::tests::test_write_path_traversal_blocked ... ok [INFO] [stdout] test tools::write_file::tests::test_write_ssh_key_blocked ... ok [INFO] [stdout] test tools::write_file::tests::test_write_via_symlink_to_sensitive_blocked ... ok [INFO] [stdout] test tools::write_file::tests::test_write_unicode_content ... ok [INFO] [stdout] test tools::write_file::tests::test_write_via_symlink_to_safe_allowed ... ok [INFO] [stdout] test tools::write_file::tests::test_write_overwrites_existing ... ok [INFO] [stdout] test tools::write_file::tests::test_write_missing_content_arg ... ok [INFO] [stdout] test tools::write_file::tests::test_write_missing_path_arg ... ok [INFO] [stdout] test tools::write_file::tests::test_write_nonexistent_parent_dir ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_src_dir ... ok [INFO] [stdout] test tools::repo_map::tests::test_repo_map_current_dir ... ok [INFO] [stdout] test tools::git::tests::test_git_empty_output_shows_no_output ... FAILED [INFO] [stdout] test tools::list_dir::tests::test_list_max_entries_truncated ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- tools::git::tests::test_git_empty_output_shows_no_output stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'tools::git::tests::test_git_empty_output_shows_no_output' (401) panicked at src/tools/git.rs:536:9: [INFO] [stdout] assertion `left == right` failed [INFO] [stdout] left: "[stderr] error: Could not access 'HEAD'\n" [INFO] [stdout] right: "(no output)" [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b52de1d885a - std[e72de78501789eb0]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b52de1d885a - std[e72de78501789eb0]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b52de1d885a - std[e72de78501789eb0]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b52de1d885a - <::print::DisplayBacktrace as core[6aaeda2c7ad07a48]::fmt::Display>::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b52de1f01aa - ::fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b52de1f01aa - core[6aaeda2c7ad07a48]::fmt::write [INFO] [stdout] 6: 0x5b52de1dd8f2 - std[e72de78501789eb0]::io::default_write_fmt::> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b52de1dd8f2 - as std[e72de78501789eb0]::io::Write>::write_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b52de1b3a5f - ::print [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b52de1b3a5f - std[e72de78501789eb0]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b52de1cf509 - std[e72de78501789eb0]::panicking::default_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b52ddfb6dcc - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b52ddfb6dcc - test[4f12b380f1fb68c5]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b52de1cf782 - core[6aaeda2c7ad07a48]::ops::function::Fn<(&'a std[e72de78501789eb0]::panic::PanicHookInfo<'b>,), Output = ()> + core[6aaeda2c7ad07a48]::marker::Sync + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::Fn<(&std[e72de78501789eb0]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b52de1cf782 - std[e72de78501789eb0]::panicking::panic_with_hook [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b52de1b3b18 - std[e72de78501789eb0]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5b52de1ab0e9 - std[e72de78501789eb0]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b52de1b4aad - __rustc[78a4cf188af856fc]::rust_begin_unwind [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b52de1f096c - core[6aaeda2c7ad07a48]::panicking::panic_fmt [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b52de1f0823 - core[6aaeda2c7ad07a48]::panicking::assert_failed_inner [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:439:17 [INFO] [stdout] 20: 0x5b52dd93379e - core[6aaeda2c7ad07a48]::panicking::assert_failed:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panicking.rs:394:5 [INFO] [stdout] 21: 0x5b52dd95d249 - whet[f86aa0b58ca4cb7c]::tools::git::tests::test_git_empty_output_shows_no_output [INFO] [stdout] at /opt/rustwide/workdir/src/tools/git.rs:536:9 [INFO] [stdout] 22: 0x5b52dd945747 - whet[f86aa0b58ca4cb7c]::tools::git::tests::test_git_empty_output_shows_no_output::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/tools/git.rs:529:47 [INFO] [stdout] 23: 0x5b52dd924c96 - >::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b52ddfaaeab - core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x5b52ddfaaeab - test[4f12b380f1fb68c5]::__rust_begin_short_backtrace::, fn() -> core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:663:18 [INFO] [stdout] 26: 0x5b52ddfb789b - test[4f12b380f1fb68c5]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:74 [INFO] [stdout] 27: 0x5b52ddfb789b - as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 28: 0x5b52ddfb789b - std[e72de78501789eb0]::panicking::catch_unwind::do_call::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 29: 0x5b52ddfb789b - std[e72de78501789eb0]::panicking::catch_unwind::, core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 30: 0x5b52ddfb789b - std[e72de78501789eb0]::panic::catch_unwind::, core[6aaeda2c7ad07a48]::result::Result<(), alloc[28d2dab30c1dc666]::string::String>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x5b52ddfb789b - test[4f12b380f1fb68c5]::run_test_in_process [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:686:27 [INFO] [stdout] 32: 0x5b52ddfb789b - test[4f12b380f1fb68c5]::run_test::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:607:43 [INFO] [stdout] 33: 0x5b52ddfb2fb4 - test[4f12b380f1fb68c5]::run_test::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/test/src/lib.rs:637:41 [INFO] [stdout] 34: 0x5b52ddfb2fb4 - std[e72de78501789eb0]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 35: 0x5b52ddfba4a2 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 36: 0x5b52ddfba4a2 - ::{closure#1}::{closure#0}> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 37: 0x5b52ddfba4a2 - std[e72de78501789eb0]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:581:40 [INFO] [stdout] 38: 0x5b52ddfba4a2 - std[e72de78501789eb0]::panicking::catch_unwind::<(), core[6aaeda2c7ad07a48]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panicking.rs:544:19 [INFO] [stdout] 39: 0x5b52ddfba4a2 - std[e72de78501789eb0]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x5b52ddfba4a2 - std[e72de78501789eb0]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 41: 0x5b52ddfba4a2 - ::{closure#1} as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 42: 0x5b52de1d7c0f - + core[6aaeda2c7ad07a48]::marker::Send> as core[6aaeda2c7ad07a48]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 43: 0x5b52de1d7c0f - ::new::thread_start [INFO] [stdout] at /rustc/dec9417b8611e34e787a3e4c37686b5131f9e5c5/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 44: 0x7ba4fd344aa4 - [INFO] [stdout] 45: 0x7ba4fd3d1a64 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] tools::git::tests::test_git_empty_output_shows_no_output [INFO] [stdout] [INFO] [stdout] test result: FAILED. 556 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.18s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "c4999e647bf39e8270a78c9bdb392f413f56f221de34de18d5f9170ab2271fd0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c4999e647bf39e8270a78c9bdb392f413f56f221de34de18d5f9170ab2271fd0", kill_on_drop: false }` [INFO] [stdout] c4999e647bf39e8270a78c9bdb392f413f56f221de34de18d5f9170ab2271fd0