[INFO] cloning repository https://github.com/jiangshanyao2200-hue/projectying-termux
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jiangshanyao2200-hue/projectying-termux" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiangshanyao2200-hue%2Fprojectying-termux", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiangshanyao2200-hue%2Fprojectying-termux'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 860b21760c0d90caf08d502616a9f419b4645383
[INFO] testing jiangshanyao2200-hue/projectying-termux against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjiangshanyao2200-hue%2Fprojectying-termux" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jiangshanyao2200-hue/projectying-termux
[INFO] finished tweaking git repo https://github.com/jiangshanyao2200-hue/projectying-termux
[INFO] tweaked toml for git repo https://github.com/jiangshanyao2200-hue/projectying-termux written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jiangshanyao2200-hue/projectying-termux on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jiangshanyao2200-hue/projectying-termux already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.42
[INFO] [stderr]   Downloaded cssparser v0.34.0
[INFO] [stderr]   Downloaded match_token v0.1.0
[INFO] [stderr]   Downloaded ego-tree v0.10.0
[INFO] [stderr]   Downloaded markup5ever v0.14.1
[INFO] [stderr]   Downloaded psl-types v2.0.11
[INFO] [stderr]   Downloaded scraper v0.23.1
[INFO] [stderr]   Downloaded cookie_store v0.22.1
[INFO] [stderr]   Downloaded selectors v0.26.0
[INFO] [stderr]   Downloaded html5ever v0.29.1
[INFO] [stderr]   Downloaded pulldown-cmark-escape v0.11.0
[INFO] [stderr]   Downloaded imagesize v0.13.0
[INFO] [stderr]   Downloaded publicsuffix v2.3.0
[INFO] [stderr]   Downloaded portable-pty v0.9.0
[INFO] [stderr]   Downloaded serial2 v0.2.34
[INFO] [stderr]   Downloaded zune-jpeg v0.5.13
[INFO] [stderr]   Downloaded zerocopy v0.8.42
[INFO] [stderr]   Downloaded pulldown-cmark v0.13.1
[INFO] [stderr]   Downloaded ratatui v0.28.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d
[INFO] running `Command { std: "docker" "start" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling mac v0.1.1
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling futf v0.1.5
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling markup5ever v0.14.1
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling dtoa v1.0.11
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling tendril v0.4.3
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling dtoa-short v0.3.5
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling selectors v0.26.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]    Compiling psl-types v2.0.11
[INFO] [stderr]    Compiling getopts v0.2.24
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling servo_arc v0.4.3
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling cssparser v0.34.0
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling match_token v0.1.0
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling vte_generate_state_changes v0.1.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling pulldown-cmark v0.13.1
[INFO] [stderr]    Compiling vte v0.11.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling string_cache v0.8.9
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling publicsuffix v2.3.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling gif v0.14.1
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling cookie_store v0.22.1
[INFO] [stderr]    Compiling html5ever v0.29.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling zune-jpeg v0.5.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling filedescriptor v0.8.3
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling serial2 v0.2.34
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling pulldown-cmark-escape v0.11.0
[INFO] [stderr]    Compiling ego-tree v0.10.0
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling ratatui v0.28.1
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling portable-pty v0.9.0
[INFO] [stderr]    Compiling scraper v0.23.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling vt100 v0.15.2
[INFO] [stderr]    Compiling imagesize v0.13.0
[INFO] [stderr]    Compiling projectying v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 15s
[INFO] running `Command { std: "docker" "inspect" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling projectying v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 08s
[INFO] running `Command { std: "docker" "inspect" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.58s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/projectying-4669922072939634)
[INFO] [stdout] 
[INFO] [stdout] running 589 tests
[INFO] [stdout] test aidebug::tests::config_governance_health_tracks_settings_route_and_matrix_only_policy ... ok
[INFO] [stdout] test aidebug::tests::datememory_health_flags_aggregate_sum_over_fixed_limit ... ok
[INFO] [stdout] test aidebug::tests::datememory_health_warns_before_fixed_limit ... ok
[INFO] [stdout] test aidebug::tests::datememory_health_hint_points_to_sql_diary_writeback ... ok
[INFO] [stdout] test aidebug::tests::dynamic_role_health_treats_empty_registry_as_idle_pass ... ok
[INFO] [stdout] test aidebug::tests::derive_health_snapshot_scores_token_budget_by_pressure ... ok
[INFO] [stdout] test aidebug::tests::json_inbox_accepts_task_alias ... ok
[INFO] [stdout] test aidebug::tests::request_failed_performance_alert_classifies_body_timeout ... ok
[INFO] [stdout] test aidebug::tests::prepare_layout_exposes_protocol_summaries ... ok
[INFO] [stdout] test aidebug::tests::legacy_log_root_is_archived_into_memory_output ... ok
[INFO] [stdout] test aidebug::tests::text_inbox_supports_persona_header ... ok
[INFO] [stdout] test aidebug::tests::persona_dispatch_observation_filters_persona_and_role ... ok
[INFO] [stdout] test aidebug::tests::write_status_includes_protocol_summaries ... ok
[INFO] [stdout] test aidebug::tests::ui_snapshot_writes_are_throttled ... ok
[INFO] [stdout] test aidebug::tests::write_status_includes_dynamic_role_governance_fields ... ok
[INFO] [stdout] test aidebug::tests::scheduler_health_detects_connecting_without_progress ... ok
[INFO] [stdout] test app_scroll_tests::aidebug_tool_done_failed_tracks_nonzero_exit_code ... ok
[INFO] [stdout] test aidebug::tests::latest_reply_keeps_global_and_per_persona_files ... ok
[INFO] [stdout] test aidebug::tests::prepare_layout_refreshes_legacy_readme ... ok
[INFO] [stdout] test aidebug::tests::concurrent_event_writes_keep_jsonl_records_intact ... ok
[INFO] [stdout] test app_tests::active_agent_panel_defaults_to_latest_agent_and_cycles_cleanly ... ok
[INFO] [stdout] test app_scroll_tests::chat_growth_keeps_bottom_only_when_already_at_bottom ... ok
[INFO] [stdout] test app_scroll_tests::toggling_tool_details_keeps_selected_tool_visible_row_stable ... ok
[INFO] [stdout] test aidebug::tests::tool_projection_snapshot_writes_persona_and_dynamic_role_reconciliation ... ok
[INFO] [stdout] test app_tests::alt_down_pastes_selected_chat_item_into_input ... ok
[INFO] [stdout] test app_tests::alt_up_ignores_persona_and_aidebug_user_messages ... ok
[INFO] [stdout] test app_tests::alt_up_restores_previous_user_message_into_input ... ok
[INFO] [stdout] test app_scroll_tests::on_tick_yields_tool_start_done_and_completion_across_frames ... ok
[INFO] [stdout] test app_scroll_tests::system_notice_insert_keeps_active_assistant_slot_clean ... ok
[INFO] [stdout] test app_tests::background_command_events_route_to_their_persona_runtime ... ok
[INFO] [stdout] test app_tests::background_terminal_never_requests_visible_cursor ... ok
[INFO] [stdout] test app_scroll_tests::tool_events_auto_reveal_latest_tool_when_following_bottom ... ok
[INFO] [stdout] test app_tests::advisor_soft_self_context_maintenance_is_not_auto_queued ... ok
[INFO] [stdout] test app_tests::aidebug_inbox_created_before_app_start_is_skipped ... ok
[INFO] [stdout] test app_tests::codex_provider_respects_sse_off_for_non_stream_mode ... ok
[INFO] [stdout] test app_tests::codex_settings_show_reasoning_summary_field ... ok
[INFO] [stdout] test app_tests::aidebug_inbox_uses_developer_debug_chat_identity ... ok
[INFO] [stdout] test app_tests::coding_palette_keeps_settings_and_help ... ok
[INFO] [stdout] test app_tests::coding_schema_filters_out_matrix_only_tools ... ok
[INFO] [stdout] test app_tests::aidebug_status_surfaces_background_persona_active_request ... ok
[INFO] [stdout] test app_tests::consecutive_terminal_done_notices_merge_into_single_chat_message ... ok
[INFO] [stdout] test app_tests::app_new_does_not_queue_memory_maintenance_before_user_message ... ok
[INFO] [stdout] test app_tests::app_new_does_not_restore_context_history_into_chat ... ok
[INFO] [stdout] test app_tests::dynamic_role_contract_drives_header_badge_and_assistant_names ... ok
[INFO] [stdout] test app_tests::dynamic_role_input_status_uses_standard_status_route ... ok
[INFO] [stdout] test app_tests::bottom_status_resource_line_reports_usage_and_pressure ... ok
[INFO] [stdout] test app_tests::coding_context_maintenance_routes_to_advisor_system_request ... ok
[INFO] [stdout] test app_tests::completed_context_maintenance_request_enters_requeue_cooldown ... ok
[INFO] [stdout] test app_tests::dynamic_role_status_bars_use_standard_frontend_routes ... ok
[INFO] [stdout] test app_tests::context_mode_switch_rotates_active_request_round ... ok
[INFO] [stdout] test app_tests::empty_completion_removes_placeholder_assistant_message ... ok
[INFO] [stdout] test app_tests::ensure_request_assistant_slot_uses_active_persona_names ... ok
[INFO] [stdout] test app_tests::esc_cancel_keeps_other_persona_active_requests_running ... ok
[INFO] [stdout] test app_tests::esc_cancel_marks_active_maintenance_request_recent ... ok
[INFO] [stdout] test app_tests::esc_cancel_skips_only_current_persona_pending_maintenance_requests ... ok
[INFO] [stdout] test app_tests::esc_cancels_current_persona_request_only ... ok
[INFO] [stdout] test app_tests::esc_cancels_paused_launch ... ok
[INFO] [stdout] test app_tests::esc_cancels_request_then_pauses_queue_then_returns_to_input ... ok
[INFO] [stdout] test app_tests::bottom_status_line_uses_same_frontend_resource_route_for_builtin_personas ... ok
[INFO] [stdout] test app_tests::hard_context_block_keys_parse_only_hard_sections ... ok
[INFO] [stdout] test app_tests::hard_context_maintenance_blocks_target_while_pending_or_active ... ok
[INFO] [stdout] test app_tests::hard_context_pause_drops_stale_messages_and_waits_for_resume ... ok
[INFO] [stdout] test app_tests::help_command_opens_help_screen_and_digit_selects_section ... ok
[INFO] [stdout] test app_tests::home_from_chat_collapses_all_expanded_tools_before_clearing_selection ... ok
[INFO] [stdout] test app_tests::home_from_chat_with_multiple_topbar_lanes_keeps_chat_focus ... ok
[INFO] [stdout] test app_tests::home_from_chat_without_selection_does_not_open_topbar ... ok
[INFO] [stdout] test app_tests::home_in_chat_unwinds_then_returns_focus_to_input ... ok
[INFO] [stdout] test app_tests::dynamic_role_palette_keeps_only_local_commands_even_with_matrix_base ... ok
[INFO] [stdout] test app_tests::dynamic_role_selection_marks_role_tab_without_suffix ... ok
[INFO] [stdout] test app_tests::matrix_command_palette_exposes_terminal_entry ... ok
[INFO] [stdout] test app_tests::dynamic_role_selection_updates_aidebug_status_snapshot ... ok
[INFO] [stdout] test app_tests::matrix_schema_exposes_context_management_tools ... ok
[INFO] [stdout] test app_tests::context_manage_receipt_does_not_reinflate_persisted_context_and_refreshes_status ... ok
[INFO] [stdout] test app_tests::dynamic_role_view_surfaces_its_own_topbar_and_standard_status ... ok
[INFO] [stdout] test app_tests::bottom_status_line_shows_resource_metrics_without_aidebug_resource_details ... ok
[INFO] [stdout] test app_tests::memory_maintenance_notice_names_multiple_source_personas_first ... ok
[INFO] [stdout] test app_tests::memory_maintenance_notice_names_single_source_persona_first ... ok
[INFO] [stdout] test app_tests::first_user_provider_load_injects_cold_start_notice_once ... ok
[INFO] [stdout] test app_tests::page_focus_cycle_follows_visual_order ... ok
[INFO] [stdout] test app_tests::inject_pending_context_suggestions_is_persona_scoped ... ok
[INFO] [stdout] test app_tests::input_status_lines_hide_internal_debug_and_resource_statuses ... ok
[INFO] [stdout] test app_tests::matrix_hard_self_compact_context_maintenance_routes_to_advisor ... ok
[INFO] [stdout] test app_tests::maybe_send_next_system_request_does_not_override_busy_persona ... ok
[INFO] [stdout] test app_tests::maybe_send_next_system_request_prefers_current_persona_queue ... ok
[INFO] [stdout] test app_tests::memory_maintenance_completion_requeues_when_buffer_is_still_over_limit ... ok
[INFO] [stdout] test app_tests::memory_maintenance_payload_is_advisor_scoped_and_context_free ... ok
[INFO] [stdout] test app_tests::paused_launch_rebuilds_latest_context_instead_of_old_payload ... ok
[INFO] [stdout] test app_tests::persona_switch_keeps_background_command_lanes_isolated ... ok
[INFO] [stdout] test app_tests::persona_usage_missing_entry_does_not_inherit_global_round_count ... ok
[INFO] [stdout] test app_tests::persona_command_created_before_app_start_is_skipped ... ok
[INFO] [stdout] test app_tests::persona_command_interrupt_cancels_target_without_global_cancel ... ok
[INFO] [stdout] test app_tests::queue_edit_finish_deletes_empty_message ... ok
[INFO] [stdout] test app_tests::removed_tool_persona_alias_is_not_accepted_and_no_tool_persona_tab_exists ... ok
[INFO] [stdout] test app_tests::request_failure_notice_keeps_summary_and_attempt_lines ... ok
[INFO] [stdout] test app_tests::persona_command_interrupt_targets_dynamic_role_session ... ok
[INFO] [stdout] test app_tests::persona_command_send_is_consumed_by_target_persona_runtime ... ok
[INFO] [stdout] test app_tests::persona_command_send_to_dynamic_role_uses_target_role_session ... ok
[INFO] [stdout] test app_tests::select_chat_next_without_selection_prefers_top_visible_item ... ok
[INFO] [stdout] test app_tests::selection_at_chat_row_can_hit_tool_line ... ok
[INFO] [stdout] test app_tests::persona_command_send_uses_source_persona_chat_identity ... ok
[INFO] [stdout] test app_tests::shift_up_opens_queue_palette_instead_of_restoring_message ... ok
[INFO] [stdout] test app_tests::persona_context_maintenance_payload_is_advisor_context_free ... ok
[INFO] [stdout] test app_tests::provider_attempt_round_count_dedupes_same_attempt_phases ... ok
[INFO] [stdout] test app_tests::provider_body_phase_refreshes_live_per_without_session_accumulation ... ok
[INFO] [stdout] test app_tests::retrying_clears_draft_but_keeps_tool_runs ... ok
[INFO] [stdout] test app_tests::retrying_clears_partial_assistant_draft_before_next_attempt ... ok
[INFO] [stdout] test app_tests::startup_greeting_does_not_advance_context_entry_id ... ok
[INFO] [stdout] test app_tests::self_compact_maintenance_payload_is_context_free ... ok
[INFO] [stdout] test app_tests::switching_persona_preserves_each_chat_session ... ok
[INFO] [stdout] test app_tests::switching_persona_preserves_each_tab_status_and_request_state ... ok
[INFO] [stdout] test app_tests::sync_named_system_requests_keeps_memory_short_cooldown_for_immediate_retry ... ok
[INFO] [stdout] test app_tests::sync_named_system_requests_keeps_memory_ticket_during_unrelated_recent_key ... ok
[INFO] [stdout] test app_tests::sync_named_system_requests_replaces_pending_memory_scope_even_when_ids_change ... ok
[INFO] [stdout] test app_tests::sync_named_system_requests_requeues_memory_ticket_after_short_cooldown ... ok
[INFO] [stdout] test app_tests::sync_named_system_requests_skips_active_advisor_context_scope ... ok
[INFO] [stdout] test app_tests::start_send_payload_rejects_when_current_persona_busy ... ok
[INFO] [stdout] test app_tests::terminal_done_notice_no_longer_claims_context_write ... ok
[INFO] [stdout] test app_tests::startup_greeting_is_matrix_only ... ok
[INFO] [stdout] test app_tests::startup_greeting_is_queued_once_without_system_card_or_advisor ... ok
[INFO] [stdout] test app_tests::terminal_done_report_queues_while_request_is_active ... ok
[INFO] [stdout] test app_tests::terminal_done_report_replaces_same_session_pending_item ... ok
[INFO] [stdout] test app_tests::terminal_done_pushes_local_system_notice_without_ai_queue_send ... ok
[INFO] [stdout] test app_tests::terminal_snapshot_notice_mentions_elapsed_and_guidance ... ok
[INFO] [stdout] test app_tests::startup_greeting_preserves_existing_maintenance_tickets ... ok
[INFO] [stdout] test app_tests::startup_greeting_does_not_create_pending_model_work ... ok
[INFO] [stdout] test app_tests::toggle_selected_system_message_uses_message_expand_marker ... ok
[INFO] [stdout] test app_tests::terminal_done_reports_extend_shared_batch_window ... ok
[INFO] [stdout] test app_tests::touching_command_palette_selects_row ... ok
[INFO] [stdout] test app_tests::touching_queue_palette_selects_row ... ok
[INFO] [stdout] test app_tests::unrelated_recent_key_is_persona_scoped_for_memory_tickets ... ok
[INFO] [stdout] test app_tests::terminal_events_route_to_their_persona_runtime ... ok
[INFO] [stdout] test app_tests::user_input_overlay_nav_preview_marks_current_and_answered_items ... ok
[INFO] [stdout] test app_tests::user_input_overlay_quick_select_advances_until_submit ... ok
[INFO] [stdout] test app_tests::user_input_overlay_supports_question_shortcuts_and_custom_answers ... ok
[INFO] [stdout] test app_tests::wants_tick_when_system_request_pending ... ok
[INFO] [stdout] test charter::tests::join_candidates_do_not_insert_v1_for_root_base ... ok
[INFO] [stdout] test charter::tests::join_candidates_keep_full_endpoint_literal ... ok
[INFO] [stdout] test charter::tests::join_candidates_only_append_requested_suffix ... ok
[INFO] [stdout] test charter::tests::models_url_candidates_follow_user_url_without_v1_fallback ... ok
[INFO] [stdout] test charter::tests::normalize_base_url_strips_full_endpoint ... ok
[INFO] [stdout] test chat::tests::aidebug_source_user_message_renders_as_debug_channel ... ok
[INFO] [stdout] test chat::tests::append_thinking_ignores_replayed_cumulative_chunk_after_tool ... ok
[INFO] [stdout] test chat::tests::apply_completion_keeps_thinking_before_display_after_tool ... ok
[INFO] [stdout] test chat::tests::apply_patch_failure_expansion_reveals_input_patch ... ok
[INFO] [stdout] test chat::tests::apply_patch_success_expansion_hides_raw_input_patch ... ok
[INFO] [stdout] test chat::tests::apply_patch_success_prefers_path_summary_and_output_excerpt ... ok
[INFO] [stdout] test chat::tests::apply_patch_wrapped_tail_does_not_repeat_last_connector ... ok
[INFO] [stdout] test chat::tests::ask_user_tool_uses_ask_and_reply_blocks ... ok
[INFO] [stdout] test chat::tests::assistant_segments_keep_runtime_order ... ok
[INFO] [stdout] test chat::tests::bottom_visible_message_key_ignores_tool_rows ... ok
[INFO] [stdout] test app_tests::touching_attention_bar_only_selects_lane_without_expanding_panel ... ok
[INFO] [stdout] test chat::tests::chained_exec_commands_render_followup_headers ... ok
[INFO] [stdout] test chat::tests::collapsed_exec_command_preview_prefers_heredoc_and_error_summary ... ok
[INFO] [stdout] test chat::tests::collapsed_memory_system_message_highlights_source_persona ... ok
[INFO] [stdout] test chat::tests::collapsed_system_message_only_shows_summary_header ... ok
[INFO] [stdout] test chat::tests::collapsed_thinking_header_is_selectable_and_expandable ... ok
[INFO] [stdout] test chat::tests::chained_exec_commands_use_brief_even_with_shell_wrappers ... ok
[INFO] [stdout] test chat::tests::collapsed_tool_preview_expands_tabs_before_rendering ... ok
[INFO] [stdout] test chat::tests::collapsed_tool_preview_keeps_suffix_visible_in_narrow_width ... ok
[INFO] [stdout] test chat::tests::collapsed_tool_preview_shows_extra_line_count ... ok
[INFO] [stdout] test chat::tests::collapsed_tool_summary_preview_keeps_suffix_visible_in_narrow_width ... ok
[INFO] [stdout] test chat::tests::command_tool_header_promotes_adb_family_label ... ok
[INFO] [stdout] test chat::tests::command_tool_header_shows_externalized_marker_symbol_only ... ok
[INFO] [stdout] test chat::tests::completed_thinking_collapses_to_simple_header_by_default ... ok
[INFO] [stdout] test chat::tests::completion_only_thinking_after_display_does_not_create_new_visible_segment ... ok
[INFO] [stdout] test chat::tests::context_manage_collapsed_preview_uses_area_action_and_middle_ellipsis ... ok
[INFO] [stdout] test chat::tests::context_manage_expanded_diff_lines_stay_single_row ... ok
[INFO] [stdout] test chat::tests::expanded_agent_tool_shows_task_and_agent_blocks ... ok
[INFO] [stdout] test chat::tests::expanded_apply_patch_lines_fill_available_width ... ok
[INFO] [stdout] test chat::tests::expanded_context_manage_error_shows_full_error_chain ... ok
[INFO] [stdout] test chat::tests::expanded_context_manage_error_uses_separate_label_line ... ok
[INFO] [stdout] test chat::tests::expanded_system_memory_notice_is_middle_clamped ... ok
[INFO] [stdout] test chat::tests::expanded_system_message_renders_structured_detail_lines ... ok
[INFO] [stdout] test chat::tests::collapsed_tool_preview_samples_huge_output_for_budgeting ... ok
[INFO] [stdout] test chat::tests::expanded_tool_display_bounds_raw_text_before_wrapping ... ok
[INFO] [stdout] test chat::tests::focus_mode_context_manage_uses_mission_header_and_call_in_preview ... ok
[INFO] [stdout] test chat::tests::focus_mode_tool_uses_mission_header_and_callout ... ok
[INFO] [stdout] test chat::tests::expanded_tool_output_middle_truncates_to_human_safe_window ... ok
[INFO] [stdout] test chat::tests::generic_tool_detail_uses_promoted_command_family_label ... ok
[INFO] [stdout] test chat::tests::grouped_context_manage_preview_keeps_middle_connector_open ... ok
[INFO] [stdout] test chat::tests::late_thinking_after_display_keeps_stream_order ... ok
[INFO] [stdout] test chat::tests::latest_tool_key_returns_last_tool ... ok
[INFO] [stdout] test app_tests::toggle_selected_tool_only_affects_current_tool ... ok
[INFO] [stdout] test chat::tests::native_parallel_batch_runs_render_as_explore_group ... ok
[INFO] [stdout] test chat::tests::normalize_tool_preview_collapses_trailing_blank_lines ... ok
[INFO] [stdout] test chat::tests::normalize_tool_preview_decodes_literal_escapes ... ok
[INFO] [stdout] test chat::tests::normalize_tool_preview_keeps_literal_escapes_inside_multiline_text ... ok
[INFO] [stdout] test chat::tests::normalize_tool_preview_strips_ansi_sequences ... ok
[INFO] [stdout] test chat::tests::pending_streaming_assistant_without_content_renders_no_lines ... ok
[INFO] [stdout] test chat::tests::persona_manage_tool_renders_as_persona_card ... ok
[INFO] [stdout] test chat::tests::persona_source_user_message_renders_as_ai_channel ... ok
[INFO] [stdout] test chat::tests::previous_and_next_selection_keys_follow_chat_order ... ok
[INFO] [stdout] test chat::tests::proposed_plan_segment_keeps_runtime_order ... ok
[INFO] [stdout] test chat::tests::render_cache_next_and_prev_follow_rendered_selection_order ... ok
[INFO] [stdout] test chat::tests::message_hit_test_uses_parent_message_for_tool_rows ... ok
[INFO] [stdout] test chat::tests::render_one_normalizes_every_chat_line_width ... ok
[INFO] [stdout] test chat::tests::render_one_groups_only_consecutive_same_tools_and_breaks_on_thinking ... ok
[INFO] [stdout] test chat::tests::rendered_line_count_grows_when_tool_is_expanded ... ok
[INFO] [stdout] test chat::tests::rewrite_section_expanded_shows_structured_input_and_output ... ok
[INFO] [stdout] test chat::tests::rewrite_section_collapsed_uses_edit_file_card ... ok
[INFO] [stdout] test chat::tests::spawn_agent_tool_collapsed_preview_prefers_task_block ... ok
[INFO] [stdout] test chat::tests::system_error_collapsed_only_keeps_request_failed_summary ... ok
[INFO] [stdout] test chat::tests::system_error_expanded_shows_detail_panel ... ok
[INFO] [stdout] test chat::tests::terminal_tool_header_uses_terminal_mode_badge ... ok
[INFO] [stdout] test chat::tests::thinking_keeps_position_before_tool_when_seen_first ... ok
[INFO] [stdout] test chat::tests::tool_frame_width_tracks_header_but_stays_bounded ... ok
[INFO] [stdout] test chat::tests::terminal_tools_render_as_single_chain_group ... ok
[INFO] [stdout] test chat::tests::tool_hit_test_uses_visible_rows ... ok
[INFO] [stdout] test chat::tests::tool_input_label_uses_muted_tone_and_command_text_is_not_bold ... ok
[INFO] [stdout] test chat::tests::tool_manage_tool_renders_as_toolbox_card ... ok
[INFO] [stdout] test chat::tests::update_plan_collapsed_preview_shows_simple_plan_summary ... ok
[INFO] [stdout] test chat::tests::update_plan_expansion_matches_collapsed_rendering ... ok
[INFO] [stdout] test chat::tests::user_message_keeps_outer_blank_lines_without_background ... ok
[INFO] [stdout] test chat::tests::view_image_tool_uses_single_vision_block ... ok
[INFO] [stdout] test chat::tests::tool_header_brief_is_not_truncated_when_space_allows ... ok
[INFO] [stdout] test chat::tests::wait_agent_tool_uses_status_preview ... ok
[INFO] [stdout] test chat::tests::web_search_tool_collapsed_preview_shows_brief_and_query ... ok
[INFO] [stdout] test chat::tests::web_search_tool_expanded_view_shows_full_search_block ... ok
[INFO] [stdout] test chat::tests::web_search_tool_without_detail_falls_back_to_status_block ... ok
[INFO] [stdout] test cli_preflight_tests::help_is_available_without_tty ... ok
[INFO] [stdout] test cli_preflight_tests::interactive_launch_still_runs_tui ... ok
[INFO] [stdout] test cli_preflight_tests::noninteractive_launch_is_rejected ... ok
[INFO] [stdout] test coding::tests::system_prompt_keeps_self_managed_toolbox_and_memory_readback ... ok
[INFO] [stdout] test chat::tests::visible_edge_selection_keys_match_current_page ... ok
[INFO] [stdout] test app_tests::role_targeted_system_request_dispatches_into_dynamic_role_runtime ... ok
[INFO] [stdout] test app_tests::startup_greeting_reloads_matrix_provider_selection_from_disk ... ok
[INFO] [stdout] test context::tests::cold_start_notice_stays_lightweight_and_blocks_old_tasks ... ok
[INFO] [stdout] test app_tests::system_request_payload_is_request_local_until_model_succeeds ... ok
[INFO] [stdout] test app_tests::thinking_only_stream_chunk_updates_content_without_forcing_repaint ... ok
[INFO] [stdout] test app_tests::urgent_persona_send_interrupts_active_target_and_injects_message ... ok
[INFO] [stdout] test chat::tests::generic_external_tool_render_uses_manifest_display_labels ... ok
[INFO] [stdout] test context::tests::append_codex_tool_replay_omits_large_image_message_payloads ... ok
[INFO] [stdout] test context::tests::append_codex_tool_replay_summarizes_tool_items_for_provider ... ok
[INFO] [stdout] test context::tests::append_roundtrip_uses_persona_state_store ... ok
[INFO] [stdout] test context::tests::context_compact_fast_folds_entries_with_thinking ... ok
[INFO] [stdout] test context::tests::context_compact_old_replaces_older_half_and_keeps_recent_entries ... ok
[INFO] [stdout] test context::tests::context_manage_summary_explicit_fastmemory_ids_tolerate_partial_staleness ... ok
[INFO] [stdout] test context::tests::context_manage_summary_range_tolerates_missing_range_boundary_if_middle_entries_exist ... ok
[INFO] [stdout] test context::tests::context_manage_summary_supports_context_entry_id_range ... ok
[INFO] [stdout] test context::tests::context_manage_summary_supports_fastmemory_item_id_range ... ok
[INFO] [stdout] test context::tests::context_manage_summary_supports_non_contiguous_entry_ids_with_fresh_stable_id ... ok
[INFO] [stdout] test context::tests::default_matrix_system_prompt_reflects_settings_driven_output_budgets ... ok
[INFO] [stdout] test context::tests::context_manage_summary_without_ids_replaces_whole_context_area ... ok
[INFO] [stdout] test context::tests::context_manage_summary_without_ids_replaces_whole_fastmemory_area ... ok
[INFO] [stdout] test context::tests::context_summary_fold_clears_assistant_thinking_and_reduces_store_size ... ok
[INFO] [stdout] test context::tests::context_summary_fold_replaces_function_output_without_large_receipt ... ok
[INFO] [stdout] test context::tests::context_summary_fold_tolerates_stale_entry_ids_and_reports_partial_success ... ok
[INFO] [stdout] test context::tests::context_vision_result_includes_context_management_hint ... ok
[INFO] [stdout] test context::tests::continuous_tool_rounds_raise_context_visibility_budget ... ok
[INFO] [stdout] test context::tests::dynamic_role_shared_board_reads_live_matrix_public_after_role_bootstrap ... ok
[INFO] [stdout] test context::tests::load_provider_messages_in_focus_mode_uses_focus_markers_and_hint_block ... ok
[INFO] [stdout] test context::tests::ensure_context_store_removes_legacy_toolcontext_file ... ok
[INFO] [stdout] test context::tests::focus_context_over_threshold_warns_to_exit_without_maintenance_ticket ... ok
[INFO] [stdout] test context::tests::focus_enter_and_exit_switch_active_mode_and_clear_focus_store ... ok
[INFO] [stdout] test context::tests::focus_enter_reuses_active_focus_mode_without_error ... ok
[INFO] [stdout] test context::tests::focus_enter_starts_with_call_in_only ... ok
[INFO] [stdout] test context::tests::focus_exit_rejects_non_focus_mode ... ok
[INFO] [stdout] test context::tests::ensure_context_store_ignores_legacy_flat_persona_prompt_assets ... ok
[INFO] [stdout] test context::tests::load_provider_messages_includes_matrix_shared_board_for_dynamic_roles ... ok
[INFO] [stdout] test context::tests::maintenance_sync_generates_fastmemory_summary_ticket_without_item_ids ... ok
[INFO] [stdout] test context::tests::maintenance_sync_keeps_existing_ticket_when_still_active ... ok
[INFO] [stdout] test context::tests::load_provider_messages_repairs_missing_codex_items_for_managed_entries ... ok
[INFO] [stdout] test context::tests::load_provider_messages_wraps_system_sections_with_area_markers ... ok
[INFO] [stdout] test context::tests::maintenance_snapshot_includes_thinking_preview ... ok
[INFO] [stdout] test context::tests::maintenance_sync_generates_context_summary_ticket_when_threshold_exceeded ... ok
[INFO] [stdout] test context::tests::load_status_stats_counts_provider_surface_and_tool_schema ... ok
[INFO] [stdout] test context::tests::load_provider_messages_repairs_legacy_raw_tool_codex_items_to_summary_messages ... ok
[INFO] [stdout] test context::tests::load_provider_messages_repairs_legacy_system_role_codex_message_items ... ok
[INFO] [stdout] test context::tests::prompt_store_recovers_from_invalid_json_using_prompt_text ... ok
[INFO] [stdout] test context::tests::protected_context_round_ids_use_round_order_not_summary_write_time ... ok
[INFO] [stdout] test context::tests::manage_request_summary_outputs_context_diff_preview ... ok
[INFO] [stdout] test context::tests::migrate_legacy_coding_context_layout_copies_only_supported_data_files ... ok
[INFO] [stdout] test context::tests::migrate_legacy_matrix_context_layout_copies_root_data_files_into_matrix_dir ... ok
[INFO] [stdout] test context::tests::migrate_legacy_toolcontext_file_into_focuscontext_slot ... ok
[INFO] [stdout] test context::tests::projected_toolbox_ids_list_matrix_closed_summaries_until_opened ... ok
[INFO] [stdout] test context::tests::prompt_manage_write_and_scope_all_summary_update_hot_reload_prompt_text ... ok
[INFO] [stdout] test context::tests::prompt_store_bootstrap_creates_json_and_roundtrips_text_entries ... ok
[INFO] [stdout] test context::tests::static_persona_governance_state_opens_context_tools_in_projection ... ok
[INFO] [stdout] test context::tests::provider_messages_include_context_visibility_hint_and_keep_latest_round ... ok
[INFO] [stdout] test context::tests::provider_messages_include_system_blocks_before_active_context ... ok
[INFO] [stdout] test context::tests::provider_projection_hides_management_ids_from_matrix_context ... ok
[INFO] [stdout] test context::tests::self_compact_governance_does_not_soft_trigger_maintenance ... ok
[INFO] [stdout] test context::tests::self_managed_context_does_not_soft_trigger_maintenance ... ok
[INFO] [stdout] test context::tests::stale_focus_mode_is_repaired_when_focus_store_is_empty ... ok
[INFO] [stdout] test departmentrs::tests::alert_rule_only_flags_wait_agent_when_timed_out ... ok
[INFO] [stdout] test departmentrs::tests::department_router_maps_known_prefixes ... ok
[INFO] [stdout] test departmentrs::tests::department_router_uses_event_payload_for_context_agent_and_terminal ... ok
[INFO] [stdout] test departmentrs::tests::observe_state_machine_resets_after_complete ... ok
[INFO] [stdout] test departmentrs::tests::observe_state_machine_tracks_multiple_requests_without_covering ... ok
[INFO] [stdout] test departmentrs::tests::shorter_than_stream_tolerates_tiny_provider_normalization_delta ... ok
[INFO] [stdout] test departmentrs::tests::suspicious_tail_detection_flags_colon ... ok
[INFO] [stdout] test input::tests::ime_flushes_within_window_are_merged ... ok
[INFO] [stdout] test input::tests::retro_grab_only_for_pastey_prefix ... ok
[INFO] [stdout] test mcp::terminal::tests::background_command_preview_stays_concise_for_ui ... ok
[INFO] [stdout] test context::tests::provider_context_includes_thinking_but_chat_keeps_split_fields ... ok
[INFO] [stdout] test context::tests::sync_runtime_threshold_config_uses_open_limits_when_switches_are_off ... ok
[INFO] [stdout] test mcp::terminal::tests::clamp_preview_text_limits_lines_and_chars ... ok
[INFO] [stdout] test mcp::terminal::tests::clamp_tail_preview_text_keeps_latest_window ... ok
[INFO] [stdout] test mcp::terminal::tests::done_preview_keeps_head_and_tail_summary ... ok
[INFO] [stdout] test mcp::terminal::tests::done_report_formatter_reports_log_paths_and_stats ... ok
[INFO] [stdout] test mcp::terminal::tests::key_to_terminal_bytes_supports_ctrl_c ... ok
[INFO] [stdout] test mcp::terminal::tests::preferred_panel_height_keeps_room_for_chat ... ok
[INFO] [stdout] test mcp::terminal::tests::single_preview_budget_defaults_to_selected_tool_budget ... ok
[INFO] [stdout] test context::tests::system_context_messages_replay_as_codex_system_items ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_model_output_keeps_running_guidance_for_ai ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_output_preview_starts_with_status_summary ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_scheduler_helpers_report_deadline_and_final_event ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_ui_state_encodes_default_mouse_release ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_ui_state_encodes_sgr_mouse_sequences ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_ui_state_encodes_utf8_mouse_coordinates ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_ui_state_rebuilds_styled_rows_from_vt100_screen ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_ui_state_switches_to_application_cursor_keys ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_ui_state_wraps_bracketed_paste_when_enabled ... ok
[INFO] [stdout] test mcp::tests::agent_tool_event_line_formats_apply_patch_with_edit_counts ... ok
[INFO] [stdout] test mcp::tests::agent_tool_event_line_formats_context_manage_scope ... ok
[INFO] [stdout] test mcp::tests::agent_tool_event_line_formats_focus_mode_scope ... ok
[INFO] [stdout] test mcp::tests::apply_codex_patch_failure_reports_candidate_lines ... ok
[INFO] [stdout] test mcp::tests::apply_codex_patch_inserts_after_anchor_line ... ok
[INFO] [stdout] test mcp::tests::apply_codex_patch_rejects_eof_mismatch ... ok
[INFO] [stdout] test context::tests::tool_manage_open_allows_direct_call_without_reason_or_plan ... ok
[INFO] [stdout] test mcp::tests::apply_codex_patch_updates_and_moves_files ... ok
[INFO] [stdout] test mcp::tests::ask_user_preview_hides_option_list ... ok
[INFO] [stdout] test mcp::tests::ask_user_response_preview_lists_answers ... ok
[INFO] [stdout] test context::tests::tool_manage_open_projects_schema_without_prompt_detail_duplication_for_matrix ... ok
[INFO] [stdout] test mcp::tests::browser_schema_is_exposed_and_projected_by_persona ... ok
[INFO] [stdout] test mcp::tests::build_apply_patch_input_preview_uses_summary_first_line ... ok
[INFO] [stdout] test mcp::tests::classify_exec_command_family_detects_adb_and_termux_api ... ok
[INFO] [stdout] test mcp::tests::classify_tty_mode_distinguishes_background_and_interactive ... ok
[INFO] [stdout] test mcp::tests::coding_context_manage_schema_uses_public_surface_experience_fastmemory_and_text ... ok
[INFO] [stdout] test context::tests::tool_projection_snapshot_shows_self_service_tool_manage_and_folded_server_split ... ok
[INFO] [stdout] test mcp::tests::command_output_save_reason_respects_selected_budget_and_system_caps ... ok
[INFO] [stdout] test mcp::tests::command_schema_exposes_line_budget_controls ... ok
[INFO] [stdout] test context::tests::transient_toolbox_expansions_collapse_after_request_boundary ... ok
[INFO] [stdout] test mcp::terminal::tests::build_done_log_preview_reads_head_and_tail_from_log ... ok
[INFO] [stdout] test mcp::tests::context_manage_input_preview_marks_summary_all_scope ... ok
[INFO] [stdout] test mcp::terminal::tests::terminal_log_dir_routes_adb_and_termux_sessions_to_dedicated_folders ... ok
[INFO] [stdout] test mcp::terminal::tests::build_log_preview_reads_existing_log_file ... ok
[INFO] [stdout] test mcp::tests::context_manage_schema_hides_legacy_aliases_from_primary_surface ... ok
[INFO] [stdout] test mcp::tests::apply_codex_patch_strips_project_root_prefix_from_paths ... ok
[INFO] [stdout] test mcp::tests::context_management_tool_descriptions_include_active_hint ... ok
[INFO] [stdout] test mcp::tests::browser_create_list_open_read_and_close_work ... ok
[INFO] [stdout] test mcp::tests::coding_persona_can_enter_and_exit_focus_mode ... ok
[INFO] [stdout] test mcp::tests::derive_exec_command_brief_matches_common_commands ... ok
[INFO] [stdout] test mcp::tests::describe_apply_patch_call_uses_patch_preview ... ok
[INFO] [stdout] test mcp::tests::describe_command_call_marks_ssh_target ... ok
[INFO] [stdout] test mcp::tests::describe_function_call_prefers_model_brief ... ok
[INFO] [stdout] test mcp::tests::describe_pty_wait_call_uses_selector_preview ... ok
[INFO] [stdout] test mcp::tests::describe_update_plan_call_clamps_large_blueprint_preview ... ok
[INFO] [stdout] test mcp::tests::describe_update_plan_call_formats_preview ... ok
[INFO] [stdout] test mcp::tests::describe_view_image_call_uses_image_preview ... ok
[INFO] [stdout] test mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background ... FAILED
[INFO] [stdout] test mcp::tests::context_manage_and_memory_tools_accept_dynamic_role_scope ... ok
[INFO] [stdout] test mcp::tests::context_manage_prompt_target_hot_reloads_provider_prompt_for_matrix ... ok
[INFO] [stdout] test mcp::tests::context_summary_accepts_line_style_and_entry_refs_from_live_provider ... ok
[INFO] [stdout] test mcp::tests::context_vision_sets_next_round_visibility_budget ... ok
[INFO] [stdout] test mcp::tests::default_tool_budget_clamps_non_exec_outputs_and_archives_full_text ... ok
[INFO] [stdout] test mcp::tests::default_tool_budget_skips_exec_command_family_outputs ... ok
[INFO] [stdout] test mcp::tests::draw_image_generates_final_image_into_dcim ... ok
[INFO] [stdout] test mcp::tests::draw_image_retries_body_read_failure_before_succeeding ... ok
[INFO] [stdout] test mcp::tests::dynamic_role_assigned_external_tool_opens_base_projection_with_self_managed_toolboxes ... ok
[INFO] [stdout] test mcp::tests::dynamic_role_send_opens_assigned_closed_tools_on_base_persona ... ok
[INFO] [stdout] test mcp::tests::exec_command_alias_follows_command_projection_for_matrix ... ok
[INFO] [stdout] test mcp::tests::exec_command_model_output_uses_toolmemory_entry_label ... FAILED
[INFO] [stdout] test mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized ... FAILED
[INFO] [stdout] test mcp::tests::execute_view_image_auto_preserves_ui_screenshot_clarity ... ok
[INFO] [stdout] test mcp::tests::execute_context_manage_accepts_line_style_summary_arguments ... ok
[INFO] [stdout] test mcp::tests::execute_context_manage_keeps_model_output_concise ... ok
[INFO] [stdout] test mcp::tests::execute_context_manage_summary_without_ids_requires_explicit_all_scope ... ok
[INFO] [stdout] test mcp::tests::extract_function_call_keeps_provider_tool_name ... ok
[INFO] [stdout] test mcp::tests::extract_function_call_reads_responses_done_item ... ok
[INFO] [stdout] test mcp::tests::execute_view_image_allows_arbitrary_absolute_path ... ok
[INFO] [stdout] test mcp::tests::execute_view_image_attaches_input_image_item ... ok
[INFO] [stdout] test mcp::tests::failed_function_call_builds_error_envelope ... ok
[INFO] [stdout] test mcp::tests::execute_context_manage_accepts_focus_mode_aliases ... ok
[INFO] [stdout] test mcp::tests::focus_mode_schema_writes_experience_fastmemory_exit_note ... ok
[INFO] [stdout] test mcp::tests::execute_view_image_auto_compresses_photo_to_jpeg ... ok
[INFO] [stdout] test mcp::tests::external_tool_manifest_accepts_display_output_policy_and_scheduler ... ok
[INFO] [stdout] test mcp::tests::matrix_persona_keeps_all_supported_tools_visible_but_folded ... ok
[INFO] [stdout] test mcp::tests::matrix_tool_schema_keeps_core_tools_expanded_and_execution_tools_closed ... ok
[INFO] [stdout] test mcp::tests::external_tool_manifest_is_hot_loaded_closed_then_opened_and_executed ... ok
[INFO] [stdout] test mcp::tests::external_tool_scheduler_deadline_overrides_timeout_secs ... ok
[INFO] [stdout] test mcp::tests::focus_gate_allows_matrix_persona_manage_dispatch_after_plan ... ok
[INFO] [stdout] test mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage ... FAILED
[INFO] [stdout] test mcp::tests::focus_mode_accepts_line_style_arguments_from_live_provider ... ok
[INFO] [stdout] test mcp::tests::focus_mode_tool_executes_enter_and_exit ... ok
[INFO] [stdout] test mcp::tests::parse_ask_user_accepts_ten_questions ... ok
[INFO] [stdout] test mcp::tests::parse_ask_user_rejects_duplicate_question_ids ... ok
[INFO] [stdout] test mcp::tests::parse_ask_user_rejects_header_longer_than_twelve_chars ... ok
[INFO] [stdout] test mcp::tests::parse_ask_user_rejects_more_than_ten_questions ... ok
[INFO] [stdout] test mcp::tests::parse_ask_user_rejects_more_than_three_suggested_options ... ok
[INFO] [stdout] test mcp::tests::parse_codex_patch_accepts_update_add_delete_and_move ... ok
[INFO] [stdout] test mcp::tests::parse_codex_patch_accepts_whitespace_padded_markers ... ok
[INFO] [stdout] test mcp::tests::parse_update_plan_arguments_rejects_multiple_in_progress ... ok
[INFO] [stdout] test mcp::tests::memory_add_accepts_single_top_level_entry_and_persona_scope ... ok
[INFO] [stdout] test mcp::tests::memory_read_output_rejects_paths_outside_memory_output ... ok
[INFO] [stdout] test mcp::tests::memory_read_output_since_cursor_returns_incremental_bytes ... ok
[INFO] [stdout] test mcp::tests::non_matrix_persona_manage_schema_only_exposes_send ... ok
[INFO] [stdout] test mcp::tests::persona_manage_persona_label_uses_dynamic_role_contract_identity ... ok
[INFO] [stdout] test mcp::tests::memory_tools_accept_line_style_arguments_from_live_provider ... ok
[INFO] [stdout] test mcp::tests::non_matrix_cannot_manage_dynamic_roles ... ok
[INFO] [stdout] test mcp::tests::persona_manage_accepts_line_style_send_arguments_from_live_provider ... ok
[INFO] [stdout] test mcp::tests::persona_manage_observe_and_interrupt_remain_governance_only ... ok
[INFO] [stdout] test mcp::tests::persona_manage_observe_returns_folded_summary_without_full_tool_output ... ok
[INFO] [stdout] test mcp::tests::memory_read_tail_reads_only_latest_external_output ... ok
[INFO] [stdout] test mcp::tests::persona_manage_schema_keeps_enabled_roles_beyond_visible_tab_limit ... ok
[INFO] [stdout] test mcp::tests::persona_manage_send_allows_dynamic_role_to_contact_base_persona ... ok
[INFO] [stdout] test mcp::tests::persona_manage_send_allows_focus_persona_to_contact_matrix ... ok
[INFO] [stdout] test mcp::tests::persona_manage_send_queues_runtime_command ... ok
[INFO] [stdout] test mcp::tests::resolve_command_output_budget_defaults_to_normal ... ok
[INFO] [stdout] test mcp::tests::prune_output_dir_groups_removes_oldest_grouped_exports ... ok
[INFO] [stdout] test mcp::tests::persona_manage_urgent_send_interrupts_even_from_non_governance_persona ... ok
[INFO] [stdout] test mcp::tests::prepare_output_dirs_create_adb_and_termux_subdirs ... ok
[INFO] [stdout] test mcp::tests::resolve_workdir_defaults_to_projectying_root_when_present ... ok
[INFO] [stdout] test mcp::tests::provider_projection_uses_active_tool_persona_even_when_context_persona_differs ... ok
[INFO] [stdout] test mcp::tests::resolve_workdir_relative_subdir_uses_project_root ... ok
[INFO] [stdout] test mcp::tests::resolve_workdir_supports_home_alias ... ok
[INFO] [stdout] test mcp::tests::resolve_view_image_path_rejects_relative_escape_outside_project ... ok
[INFO] [stdout] test mcp::tests::resolve_workdir_collapses_project_root_alias ... ok
[INFO] [stdout] test mcp::tests::role_create_always_bootstraps_persona_manage_into_default_tools ... ok
[INFO] [stdout] test mcp::tests::role_list_model_output_includes_structured_governance_summary ... ok
[INFO] [stdout] test mcp::tests::role_reload_refreshes_governance_catalog_for_matrix ... ok
[INFO] [stdout] test mcp::tests::server_registry_upsert_select_and_delete_roundtrip ... ok
[INFO] [stdout] test mcp::tests::provider_tool_schema_sanitizes_invalid_dot_names ... ok
[INFO] [stdout] test mcp::tests::role_tool_remove_keeps_persona_manage_as_required_role_tool ... ok
[INFO] [stdout] test mcp::tests::summarize_command_output_archives_large_text_to_toolmemory_preview ... ok
[INFO] [stdout] test mcp::tests::summarize_command_output_high_mode_respects_char_budget ... ok
[INFO] [stdout] test mcp::tests::summarize_command_output_keeps_medium_budget_inline ... ok
[INFO] [stdout] test mcp::tests::removed_tool_persona_alias_is_not_accepted_and_matrix_keeps_tool_manage ... ok
[INFO] [stdout] test mcp::tests::server_persona_exposes_server_manage_and_ssh_targets ... ok
[INFO] [stdout] test mcp::tests::server_split_creates_queues_and_closes_without_deleting_context ... ok
[INFO] [stdout] test mcp::tests::role_update_moves_context_dir_instead_of_leaving_orphan_dir ... ok
[INFO] [stdout] test mcp::tests::tool_manage_can_target_another_persona_toolbox ... ok
[INFO] [stdout] test mcp::tests::server_ssh_command_uses_builtin_askpass_for_password_login ... ok
[INFO] [stdout] test mcp::tests::server_ssh_status_reports_builtin_askpass_for_password_login ... ok
[INFO] [stdout] test mcp::tests::tool_manage_can_copy_advisor_and_assign_managed_roles ... ok
[INFO] [stdout] test mcp::tests::tool_manage_can_create_and_remove_external_tool_manifests ... ok
[INFO] [stdout] test mcp::tests::tool_manage_can_create_role_assign_tools_and_queue_role_send ... ok
[INFO] [stdout] test mcp::tests::tool_manage_can_create_summary_compact_role_and_route_maintenance_to_itself ... ok
[INFO] [stdout] test mcp::tests::resolve_view_image_path_directory_picks_latest_image_file ... ok
[INFO] [stdout] test mcp::tests::tool_manage_context_governance_accepts_m_suffixed_aliases ... ok
[INFO] [stdout] test mcp::tests::tool_manage_context_governance_sets_role_and_adds_compact_tools ... ok
[INFO] [stdout] test mcp::tests::tool_manage_settings_is_matrix_only ... ok
[INFO] [stdout] test mcp::tests::tool_manage_context_governance_sets_static_persona_and_opens_compact ... ok
[INFO] [stdout] test mcp::tests::tool_output_envelope_records_toolmemory_ref_for_archived_output ... ok
[INFO] [stdout] test mcp::tests::tool_manage_copy_limit_stops_after_three_clones_per_source_family ... ok
[INFO] [stdout] test mcp::tests::tool_manage_health_reads_aidebug_health_snapshot ... ok
[INFO] [stdout] test mcp::tests::wait_agent_preview_caps_running_event_lines ... ok
[INFO] [stdout] test mcp::tests::wait_agent_preview_includes_progress_lines_and_completion_summary ... ok
[INFO] [stdout] test memory::tests::clamp_memory_output_keeps_head_and_tail_windows ... ok
[INFO] [stdout] test mcp::tests::tool_manage_schema_update_hot_reloads_and_reset_restores_default ... ok
[INFO] [stdout] test mcp::tests::tool_manage_self_service_is_available_to_focus_personas_but_not_cross_persona ... ok
[INFO] [stdout] test mcp::tests::tool_manage_settings_accepts_line_style_arguments_from_live_provider ... ok
[INFO] [stdout] test mcp::tests::tool_manage_settings_can_switch_static_persona_model ... ok
[INFO] [stdout] test memory::tests::memory_check_and_read_metamemory_support_exact_day_month_and_entry_ids ... ok
[INFO] [stdout] test mcp::tests::update_plan_decision_mode_does_not_force_focus_gate ... ok
[INFO] [stdout] test mcp::tests::update_plan_empty_or_all_completed_clears_focus_gate ... ok
[INFO] [stdout] test memory::tests::memory_check_metamemory_requires_exact_day_or_month ... ok
[INFO] [stdout] test memory::tests::maintenance_sync_generates_memory_ticket_when_threshold_exceeded ... ok
[INFO] [stdout] test memory::tests::memory_add_clear_context_rejects_too_short_diary_content ... ok
[INFO] [stdout] test memory::tests::memory_add_splits_multiple_dates_and_clears_context ... ok
[INFO] [stdout] test mcp::tests::tool_manage_settings_updates_matrix_budgets_and_system_state ... ok
[INFO] [stdout] test memory::tests::memory_check_datememory_returns_entry_ids_by_day ... ok
[INFO] [stdout] test memory::tests::memory_check_datememory_uses_keyword_column_and_compact_matching ... ok
[INFO] [stdout] test memory::tests::ensure_memory_store_creates_memory_files ... ok
[INFO] [stdout] test memory::tests::memory_check_toolmemory_keeps_match_ranges_when_output_is_clamped ... ok
[INFO] [stdout] test memory::tests::memory_check_toolmemory_returns_tool_ref_read_hint ... ok
[INFO] [stdout] test memory::tests::memory_maintenance_notice_is_rendered_as_short_summary ... ok
[INFO] [stdout] test memory::tests::memory_maintenance_scans_all_persona_contexts_and_marks_source ... ok
[INFO] [stdout] test memory::tests::system_notice_keeps_metamemory_without_context_entry_id ... ok
[INFO] [stdout] test memory::tests::tool_event_metamemory_carries_context_entry_ids ... ok
[INFO] [stdout] test memory::tests::memory_read_metamemory_entry_id_includes_nearby_rows ... ok
[INFO] [stdout] test memory::tests::memory_read_toolmemory_supports_tool_ref ... ok
[INFO] [stdout] test messageline::tests::heading_and_code_block_render ... ok
[INFO] [stdout] test messageline::tests::placeholder_keeps_special_style ... ok
[INFO] [stdout] test messageline::tests::two_backtick_near_miss_closer_does_not_leak_code_block_style ... ok
[INFO] [stdout] test messageline::tests::unclosed_code_fence_does_not_swallow_following_body ... ok
[INFO] [stdout] test persona::tests::advisor_persona_uses_api_only_settings_and_governance_tool_profile ... ok
[INFO] [stdout] test persona::tests::coding_persona_uses_api_only_settings_and_focus_tool_profile ... ok
[INFO] [stdout] test persona::tests::persona_contract_exposes_identity_storage_and_capability_views ... ok
[INFO] [stdout] test persona::tests::persona_specs_cover_all_personas ... ok
[INFO] [stdout] test persona::tests::server_persona_uses_api_only_settings_and_focus_tool_profile ... ok
[INFO] [stdout] test provider::tests::auth_failure_note_only_matches_401_and_403 ... ok
[INFO] [stdout] test provider::tests::auth_variant_search_stops_on_official_auth_or_non_retryable_status ... ok
[INFO] [stdout] test provider::tests::codex_active_replay_compacts_large_function_outputs_before_next_round ... ok
[INFO] [stdout] test provider::tests::codex_context_replay_compacts_image_payloads_after_visual_round ... ok
[INFO] [stdout] test provider::tests::codex_context_replay_compacts_large_function_arguments ... ok
[INFO] [stdout] test provider::tests::codex_fast_mode_sets_service_tier_fast ... ok
[INFO] [stdout] test provider::tests::codex_input_messages_do_not_wrap_function_call_items_with_system_messages ... ok
[INFO] [stdout] test provider::tests::codex_input_messages_sanitize_orphan_function_call_outputs ... ok
[INFO] [stdout] test provider::tests::codex_request_body_adds_placeholder_when_input_is_empty ... ok
[INFO] [stdout] test provider::tests::codex_request_body_keeps_system_function_call_items_in_input ... ok
[INFO] [stdout] test provider::tests::codex_request_body_moves_all_system_messages_into_instructions ... ok
[INFO] [stdout] test provider::tests::codex_request_body_without_tools_omits_tool_payload ... ok
[INFO] [stdout] test provider::tests::codex_request_variants_follow_literal_responses_path ... ok
[INFO] [stdout] test provider::tests::codex_request_variants_respect_non_stream_setting ... ok
[INFO] [stdout] test provider::tests::codex_responses_request_omits_sampling_controls ... ok
[INFO] [stdout] test memory::tests::memory_sync_maintenance_respects_open_limit_when_threshold_is_off ... ok
[INFO] [stdout] test memory::tests::metamemory_prefers_context_stable_ids_when_provided ... ok
[INFO] [stdout] test memory::tests::reserve_toolmemory_entry_id_tracks_database_max_after_allocator_init ... ok
[INFO] [stdout] test provider::tests::codex_tool_request_body_exposes_native_web_search_for_focus_personas ... ok
[INFO] [stdout] test provider::tests::extract_stream_event_segments_keeps_chat_completions_behavior ... ok
[INFO] [stdout] test provider::tests::live_codex_command_family_smoke ... ok
[INFO] [stdout] test provider::tests::normalize_completion_extracts_embedded_thinking ... ok
[INFO] [stdout] test provider::tests::normalize_completion_extracts_proposed_plan_block ... ok
[INFO] [stdout] test provider::tests::preferred_reasoning_summary_uses_codex_setting ... ok
[INFO] [stdout] test provider::tests::proposed_plan_parser_streams_visible_text_and_plan_delta ... ok
[INFO] [stdout] test provider::tests::provider_sampling_controls_are_omitted_when_zero_and_sent_when_positive ... ok
[INFO] [stdout] test provider::tests::request_reconnect_budget_defaults_to_five_retries ... ok
[INFO] [stdout] test provider::tests::responses_completed_event_can_supply_missing_tail_without_duplication ... ok
[INFO] [stdout] test provider::tests::responses_completed_promotes_generic_reasoning_key_without_duplication ... ok
[INFO] [stdout] test provider::tests::responses_done_events_append_only_missing_suffix ... ok
[INFO] [stdout] test provider::tests::responses_output_item_done_promotes_generic_reasoning_key_without_duplication ... ok
[INFO] [stdout] test provider::tests::responses_reasoning_done_promotes_generic_stream_key_without_duplication ... ok
[INFO] [stdout] test provider::tests::responses_reasoning_summary_delta_is_captured ... ok
[INFO] [stdout] test provider::tests::responses_summary_delta_is_ignored_for_reasoning ... ok
[INFO] [stdout] test provider::tests::retry_failure_message_lists_each_retry_attempt ... ok
[INFO] [stdout] test provider::tests::retryable_http_status_covers_transient_proxy_failures ... ok
[INFO] [stdout] test provider::tests::codex_tool_request_body_omits_native_web_search_for_third_party_relays ... ok
[INFO] [stdout] test provider::tests::sse_reader_times_out_only_without_stream_bytes ... ok
[INFO] [stdout] test provider::tests::sse_reader_treats_heartbeat_as_stream_activity ... ok
[INFO] [stdout] test provider::tests::stateless_replay_item_preserves_function_call_shape ... ok
[INFO] [stdout] test provider::tests::stream_timeout_uses_provider_idle_setting_directly ... ok
[INFO] [stdout] test provider::tests::suffix_merge_detects_divergence_without_duplication ... ok
[INFO] [stdout] test provider::tests::web_search_progress_events_map_into_tool_events ... ok
[INFO] [stdout] test roles::tests::dynamic_role_bootstrap_spec_covers_standard_context_memory_and_tooling_assets ... ok
[INFO] [stdout] test roles::tests::dynamic_role_contract_normalizes_identity_storage_and_capability_views ... ok
[INFO] [stdout] test roles::tests::governance_catalog_marks_visible_tabs_without_truncating_enabled_catalog ... ok
[INFO] [stdout] test memory::tests::memory_maintenance_triggers_when_aggregate_context_exceeds_limit ... ok
[INFO] [stdout] test memory::tests::memory_read_datememory_supports_entry_range ... ok
[INFO] [stdout] test roles::tests::role_title_does_not_duplicate_same_glyph_and_display_name ... ok
[INFO] [stdout] test server::tests::system_prompt_requires_server_management_and_ssh_rules ... ok
[INFO] [stdout] test memory::tests::toolmemory_persists_rows_in_sqlite ... ok
[INFO] [stdout] test memory::tests::toolmemory_retention_prunes_oldest_rows_when_limit_is_hit ... ok
[INFO] [stdout] test provider::tests::execute_codex_function_calls_batches_native_parallel_reads ... ok
[INFO] [stdout] test provider::tests::codex_tool_request_body_for_matrix_exposes_tool_manage_without_execution_tools ... ok
[INFO] [stdout] test roles::tests::registry_save_cleans_orphan_role_storage ... ok
[INFO] [stdout] test roles::tests::role_remove_deletes_context_and_memory_dirs ... ok
[INFO] [stdout] test settings::tests::context_settings_saved_to_context_json ... ok
[INFO] [stdout] test settings::tests::api_only_persona_config_does_not_persist_models_catalog ... ok
[INFO] [stdout] test settings::tests::default_local_config_uses_projectying_single_source_defaults ... ok
[INFO] [stdout] test settings::tests::api_only_persona_explicit_override_can_select_different_relay ... ok
[INFO] [stdout] test settings::tests::api_only_persona_inherits_matrix_provider_selection_without_override ... ok
[INFO] [stdout] test settings::tests::load_or_default_backs_up_invalid_local_config ... ok
[INFO] [stdout] test settings::tests::coding_settings_expose_provider_selection_without_management ... ok
[INFO] [stdout] test settings::tests::matrix_settings_keeps_project_identity_and_hides_context_tab ... ok
[INFO] [stdout] test settings::tests::provider_key_pool_seeds_from_single_api_key ... ok
[INFO] [stdout] test settings::tests::provider_key_pool_selects_existing_or_appends_new ... ok
[INFO] [stdout] test settings::tests::sanitize_context_settings_clamps_and_orders_limits ... ok
[INFO] [stdout] test settings::tests::sanitize_provider_clears_codex_sampling_controls ... ok
[INFO] [stdout] test settings::tests::api_only_missing_config_uses_matrix_provider_catalog ... ok
[INFO] [stdout] test settings::tests::sanitize_provider_preserves_explicit_official_kind_after_rename ... ok
[INFO] [stdout] test settings::tests::sanitize_system_settings_restores_defaults_for_blank_values ... ok
[INFO] [stdout] test settings::tests::sanitize_system_settings_clamps_user_names ... ok
[INFO] [stdout] test settings::tests::legacy_combined_api_config_seeds_split_system_and_theme ... ok
[INFO] [stdout] test settings::tests::legacy_compact_context_keys_still_load_into_new_max_fields ... ok
[INFO] [stdout] test settings::tests::legacy_system_memory_limit_is_ignored_for_fixed_datememory_threshold ... ok
[INFO] [stdout] test settings::tests::api_only_persona_uses_matrix_provider_definition ... ok
[INFO] [stdout] test settings::tests::official_interfaces_keep_base_url_edit_visible ... ok
[INFO] [stdout] test settings::tests::save_config_for_api_only_persona_uses_matrix_provider_source ... ok
[INFO] [stdout] test settings::tests::save_config_writes_lastgood_backup_and_recovers_from_empty_primary ... ok
[INFO] [stdout] test settings::tests::server_api_only_persona_config_does_not_persist_models_catalog ... ok
[INFO] [stdout] test status_title_tests::background_status_stays_static_without_fast_tick ... ok
[INFO] [stdout] test status_title_tests::codex_style_extracts_latest_closed_bold_title ... ok
[INFO] [stdout] test settings::tests::server_registry_prompt_includes_legacy_single_server_entry ... ok
[INFO] [stdout] test status_title_tests::codex_style_keeps_last_closed_title_when_tail_is_unclosed ... ok
[INFO] [stdout] test status_title_tests::codex_style_returns_none_when_first_title_is_unclosed ... ok
[INFO] [stdout] test status_title_tests::codex_style_updates_to_newest_bold_title ... ok
[INFO] [stdout] test tool_receipt_archive_marker_tests::build_tool_run_from_done_does_not_mark_plain_toolmemory_receipts ... ok
[INFO] [stdout] test settings::tests::server_settings_expose_provider_selection_and_ssh_without_management ... ok
[INFO] [stdout] test status_title_tests::codex_style_ignores_display_body_markdown ... ok
[INFO] [stdout] test tool_receipt_archive_marker_tests::decorate_tool_brief_adds_externalized_marker ... ok
[INFO] [stdout] test tool_receipt_archive_marker_tests::build_tool_run_from_done_keeps_plain_brief_without_archive ... ok
[INFO] [stdout] test tool_receipt_archive_marker_tests::build_tool_run_from_done_marks_archived_receipts ... ok
[INFO] [stdout] test settings::tests::settings_api_interface_overlay_responds_to_arrow_keys ... ok
[INFO] [stdout] test settings::tests::settings_api_visible_fields_allow_official_provider_management ... ok
[INFO] [stdout] test settings::tests::settings_runtime_getters_keep_open_limit_and_runtime_values_effective ... ok
[INFO] [stdout] test ui::tests::attention_height_keeps_idle_topbar_focus_visible ... ok
[INFO] [stdout] test ui::tests::layout_adds_top_panel_without_stealing_input_area ... ok
[INFO] [stdout] test ui::tests::layout_keeps_requested_palette_when_space_is_sufficient ... ok
[INFO] [stdout] test ui::tests::layout_prefers_chat_height_when_terminal_is_tight ... ok
[INFO] [stdout] test provider::tests::sse_client_timeout_applies_to_idle_body_reads ... ok
[INFO] [stdout] test ui::tests::persona_tab_label_uses_single_chinese_glyph ... ok
[INFO] [stdout] test ui::tests::input_top_height_grows_only_for_visible_dynamic_role_rows ... ok
[INFO] [stdout] test ui::tests::dynamic_role_tab_hits_follow_rendered_row_cells ... ok
[INFO] [stdout] test ui::tests::dynamic_role_tab_row_uses_label_without_suffix_id ... ok
[INFO] [stdout] test ui::tests::dynamic_role_tabs_use_contract_glyph_label_for_rendering ... ok
[INFO] [stdout] test ui::tests::input_top_height_does_not_reserve_dynamic_role_rows_when_empty ... ok
[INFO] [stdout] test settings::tests::settings_state_new_does_not_rewrite_valid_manual_json ... ok
[INFO] [stdout] test ui::tests::persona_tab_label_keeps_matrix_static_while_dynamic_role_is_active ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background' (2685) panicked at src/mcp.rs:22351:14:
[INFO] [stdout] command should finish inline: 启动 shell 失败：/data/data/com.termux/files/usr/bin/bash
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     No such file or directory (os error 2)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<std::process::Child, std::io::error::Error> as anyhow::Context<std::process::Child, std::io::error::Error>>::with_context::<alloc::string::String, projectying::mcp::execute_command_core::{closure#1}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: projectying::mcp::execute_command_core
[INFO] [stdout]              at ./src/mcp.rs:6306:10
[INFO] [stdout]    3: projectying::mcp::execute_command
[INFO] [stdout]              at ./src/mcp.rs:6131:5
[INFO] [stdout]    4: projectying::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0}
[INFO] [stdout]              at ./src/mcp.rs:22348:26
[INFO] [stdout]    5: projectying::mcp::tests::with_test_home::<(), projectying::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0}>
[INFO] [stdout]              at ./src/mcp.rs:19151:22
[INFO] [stdout]    6: projectying::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background
[INFO] [stdout]              at ./src/mcp.rs:22347:9
[INFO] [stdout]    7: projectying::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0}
[INFO] [stdout]              at ./src/mcp.rs:22346:76
[INFO] [stdout]    8: <projectying::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    9: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   10: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   11: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   12: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   13: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   14: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   15: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   16: test::run_test_in_process
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   17: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   18: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   19: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   20: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   21: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   22: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   23: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   24: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   25: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   26: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   28: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   29: <unknown>
[INFO] [stdout]   30: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5890f56f4908 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5890f56f4908 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5890f570e82a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5890f570e82a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x5890f56fa7b2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5890f56fa7b2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5890f56ccfc6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5890f56ccfc6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5890f56e9fb9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5890f4b2a16c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x5890f4b2a16c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5890f56ea232 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x5890f56ea232 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5890f56cd082 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5890f56c1759 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5890f56ce41d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5890f570f01c - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5890f570ed62 - core[8fb95b77d25ab6c8]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5890f47d9ca3 - <core[8fb95b77d25ab6c8]::result::Result<projectying[3890c74a144e28f0]::mcp::ExecCommandExecution, anyhow[fa6b8232d79e87bc]::Error>>::expect
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x5890f4a3b665 - projectying[3890c74a144e28f0]::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:22351:14
[INFO] [stdout]   22:     0x5890f49d1e4a - projectying[3890c74a144e28f0]::mcp::tests::with_test_home::<(), projectying[3890c74a144e28f0]::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:19151:22
[INFO] [stdout]   23:     0x5890f4a8fa76 - projectying[3890c74a144e28f0]::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:22347:9
[INFO] [stdout]   24:     0x5890f49ef947 - projectying[3890c74a144e28f0]::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:22346:76
[INFO] [stdout]   25:     0x5890f49143a6 - <projectying[3890c74a144e28f0]::mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5890f4b1d24b - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5890f4b1d24b - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   28:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   29:     0x5890f4b2aac5 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   30:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   34:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   35:     0x5890f4b243d4 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   36:     0x5890f4b243d4 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   38:     0x5890f4b2db42 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   39:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   43:     0x5890f4b2db42 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5890f56f364f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   45:     0x5890f56f364f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x7e24be44caa4 - <unknown>
[INFO] [stdout]   47:     0x7e24be4d9a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- mcp::tests::exec_command_model_output_uses_toolmemory_entry_label stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'mcp::tests::exec_command_model_output_uses_toolmemory_entry_label' (2711) panicked at src/mcp.rs:24464:14:
[INFO] [stdout] exec command: 启动 shell 失败：/data/data/com.termux/files/usr/bin/bash
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     No such file or directory (os error 2)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<std::process::Child, std::io::error::Error> as anyhow::Context<std::process::Child, std::io::error::Error>>::with_context::<alloc::string::String, projectying::mcp::execute_command_core::{closure#1}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: projectying::mcp::execute_command_core
[INFO] [stdout]              at ./src/mcp.rs:6306:10
[INFO] [stdout]    3: projectying::mcp::execute_exec_command
[INFO] [stdout]              at ./src/mcp.rs:6502:5
[INFO] [stdout]    4: projectying::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0}
[INFO] [stdout]              at ./src/mcp.rs:24460:24
[INFO] [stdout]    5: projectying::mcp::tests::with_test_home::<(), projectying::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0}>
[INFO] [stdout]              at ./src/mcp.rs:19151:22
[INFO] [stdout]    6: projectying::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label
[INFO] [stdout]              at ./src/mcp.rs:24459:9
[INFO] [stdout]    7: projectying::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0}
[INFO] [stdout]              at ./src/mcp.rs:24458:63
[INFO] [stdout]    8: <projectying::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    9: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   10: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   11: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   12: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   13: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   14: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   15: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   16: test::run_test_in_process
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   17: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   18: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   19: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   20: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   21: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   22: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   23: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   24: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   25: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   26: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   28: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   29: <unknown>
[INFO] [stdout]   30: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5890f56f4908 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5890f56f4908 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5890f570e82a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5890f570e82a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x5890f56fa7b2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5890f56fa7b2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5890f56ccfc6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5890f56ccfc6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5890f56e9fb9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5890f4b2a16c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x5890f4b2a16c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5890f56ea232 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x5890f56ea232 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5890f56cd082 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5890f56c1759 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5890f56ce41d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5890f570f01c - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5890f570ed62 - core[8fb95b77d25ab6c8]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5890f47d9ca3 - <core[8fb95b77d25ab6c8]::result::Result<projectying[3890c74a144e28f0]::mcp::ExecCommandExecution, anyhow[fa6b8232d79e87bc]::Error>>::expect
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x5890f4a05ae2 - projectying[3890c74a144e28f0]::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:24464:14
[INFO] [stdout]   22:     0x5890f49c602a - projectying[3890c74a144e28f0]::mcp::tests::with_test_home::<(), projectying[3890c74a144e28f0]::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:19151:22
[INFO] [stdout]   23:     0x5890f4a85e06 - projectying[3890c74a144e28f0]::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:24459:9
[INFO] [stdout]   24:     0x5890f49eeef7 - projectying[3890c74a144e28f0]::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:24458:63
[INFO] [stdout]   25:     0x5890f49135e6 - <projectying[3890c74a144e28f0]::mcp::tests::exec_command_model_output_uses_toolmemory_entry_label::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5890f4b1d24b - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5890f4b1d24b - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   28:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   29:     0x5890f4b2aac5 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   30:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   34:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   35:     0x5890f4b243d4 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   36:     0x5890f4b243d4 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   38:     0x5890f4b2db42 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   39:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   43:     0x5890f4b2db42 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5890f56f364f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   45:     0x5890f56f364f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x7e24be44caa4 - <unknown>
[INFO] [stdout]   47:     0x7e24be4d9a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized' (2712) panicked at src/mcp.rs:24477:14:
[INFO] [stdout] exec command: 启动 shell 失败：/data/data/com.termux/files/usr/bin/bash
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     No such file or directory (os error 2)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<std::process::Child, std::io::error::Error> as anyhow::Context<std::process::Child, std::io::error::Error>>::with_context::<alloc::string::String, projectying::mcp::execute_command_core::{closure#1}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: projectying::mcp::execute_command_core
[INFO] [stdout]              at ./src/mcp.rs:6306:10
[INFO] [stdout]    3: projectying::mcp::execute_exec_command
[INFO] [stdout]              at ./src/mcp.rs:6502:5
[INFO] [stdout]    4: projectying::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0}
[INFO] [stdout]              at ./src/mcp.rs:24473:24
[INFO] [stdout]    5: projectying::mcp::tests::with_test_home::<(), projectying::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0}>
[INFO] [stdout]              at ./src/mcp.rs:19151:22
[INFO] [stdout]    6: projectying::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized
[INFO] [stdout]              at ./src/mcp.rs:24472:9
[INFO] [stdout]    7: projectying::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0}
[INFO] [stdout]              at ./src/mcp.rs:24471:73
[INFO] [stdout]    8: <projectying::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    9: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   10: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   11: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   12: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   13: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   14: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   15: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   16: test::run_test_in_process
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   17: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   18: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   19: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   20: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   21: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   22: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   23: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   24: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   25: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   26: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   28: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   29: <unknown>
[INFO] [stdout]   30: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5890f56f4908 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5890f56f4908 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5890f570e82a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5890f570e82a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x5890f56fa7b2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5890f56fa7b2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5890f56ccfc6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5890f56ccfc6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5890f56e9fb9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5890f4b2a16c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x5890f4b2a16c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5890f56ea232 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x5890f56ea232 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5890f56cd082 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5890f56c1759 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5890f56ce41d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5890f570f01c - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5890f570ed62 - core[8fb95b77d25ab6c8]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x5890f47d9ca3 - <core[8fb95b77d25ab6c8]::result::Result<projectying[3890c74a144e28f0]::mcp::ExecCommandExecution, anyhow[fa6b8232d79e87bc]::Error>>::expect
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x5890f4a2d142 - projectying[3890c74a144e28f0]::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:24477:14
[INFO] [stdout]   22:     0x5890f49ced8a - projectying[3890c74a144e28f0]::mcp::tests::with_test_home::<(), projectying[3890c74a144e28f0]::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:19151:22
[INFO] [stdout]   23:     0x5890f4a8e026 - projectying[3890c74a144e28f0]::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:24472:9
[INFO] [stdout]   24:     0x5890f49ef707 - projectying[3890c74a144e28f0]::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:24471:73
[INFO] [stdout]   25:     0x5890f49140a6 - <projectying[3890c74a144e28f0]::mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5890f4b1d24b - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5890f4b1d24b - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   28:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   29:     0x5890f4b2aac5 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   30:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   34:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   35:     0x5890f4b243d4 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   36:     0x5890f4b243d4 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   38:     0x5890f4b2db42 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   39:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   43:     0x5890f4b2db42 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5890f56f364f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   45:     0x5890f56f364f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   46:     0x7e24be44caa4 - <unknown>
[INFO] [stdout]   47:     0x7e24be4d9a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage' (2734) panicked at src/mcp.rs:23484:13:
[INFO] [stdout] command should remain callable after update_plan: command failed: 启动 shell 失败：/data/data/com.termux/files/usr/bin/bash: No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5890f56f4908 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5890f56f4908 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5890f56f4908 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5890f570e82a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5890f570e82a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x5890f56fa7b2 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5890f56fa7b2 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5890f56ccfc6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5890f56ccfc6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5890f56e9fb9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5890f4b2a16c - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x5890f4b2a16c - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5890f56ea232 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x5890f56ea232 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5890f56cd082 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5890f56c1759 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5890f56ce41d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5890f570f01c - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5890f4a2d8a4 - projectying[3890c74a144e28f0]::mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:23484:13
[INFO] [stdout]   20:     0x5890f49cf26a - projectying[3890c74a144e28f0]::mcp::tests::with_test_home::<(), projectying[3890c74a144e28f0]::mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:19151:22
[INFO] [stdout]   21:     0x5890f4a8e036 - projectying[3890c74a144e28f0]::mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:23445:9
[INFO] [stdout]   22:     0x5890f49ef737 - projectying[3890c74a144e28f0]::mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/mcp.rs:23444:73
[INFO] [stdout]   23:     0x5890f49140e6 - <projectying[3890c74a144e28f0]::mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5890f4b1d24b - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5890f4b1d24b - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x5890f4b2aac5 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5890f4b2aac5 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x5890f4b2aac5 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x5890f4b243d4 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x5890f4b243d4 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x5890f4b2db42 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5890f4b2db42 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5890f4b2db42 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x5890f4b2db42 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5890f56f364f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   43:     0x5890f56f364f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x7e24be44caa4 - <unknown>
[INFO] [stdout]   45:     0x7e24be4d9a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     mcp::tests::command_yield_time_ms_does_not_promote_short_command_to_background
[INFO] [stdout]     mcp::tests::exec_command_model_output_uses_toolmemory_entry_label
[INFO] [stdout]     mcp::tests::exec_command_small_output_keeps_toolmemory_but_not_externalized
[INFO] [stdout]     mcp::tests::focus_gate_keeps_matrix_focus_mode_callable_without_tool_manage
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 585 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 145.50s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin projectying`
[INFO] running `Command { std: "docker" "inspect" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d", kill_on_drop: false }`
[INFO] [stdout] af6e566d35995c77e618d59c6a921080f0e532673106e3cb17fef412d63d436d
