[INFO] fetching crate tmux-mcp-rs 0.6.0...
[INFO] testing tmux-mcp-rs-0.6.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate tmux-mcp-rs 0.6.0 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate tmux-mcp-rs 0.6.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate tmux-mcp-rs 0.6.0
[INFO] tweaked toml for crates.io crate tmux-mcp-rs 0.6.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate tmux-mcp-rs 0.6.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tmux-mcp-rs 0.6.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb
[INFO] running `Command { std: "docker" "start" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", 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" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", 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" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling winnow v1.0.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling rmcp v2.2.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling pastey v0.2.1
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling rapidfuzz v0.5.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml v0.9.12+spec-1.1.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling tokio v1.52.0
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling rmcp-macros v2.2.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tmux-mcp-rs v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 14s
[INFO] running `Command { std: "docker" "inspect" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", 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" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling winnow v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling tokio v1.52.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling rmcp-macros v2.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling rstest v0.26.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling rmcp v2.2.0
[INFO] [stderr]    Compiling tmux-mcp-rs v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 13s
[INFO] running `Command { std: "docker" "inspect" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", 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" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/tmux-mcp-rs/5c0769a30a259b8e/out/tmux_mcp_rs-5c0769a30a259b8e)
[INFO] [stdout] 
[INFO] [stdout] running 180 tests
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_4 ... ok
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_3 ... ok
[INFO] [stdout] test commands::tests::extract_output_uses_last_done_marker_for_the_boundary ... ok
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_1 ... ok
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_2 ... ok
[INFO] [stdout] test commands::tests::partial_capture_never_exceeds_final_capture_budget ... ok
[INFO] [stdout] test commands::tests::execute_command_side_channel_retries_output_until_done_marker_is_visible ... ok
[INFO] [stdout] test commands::tests::execute_command_spoof_done_does_not_complete ... ok
[INFO] [stdout] test commands::tests::execute_command_uses_pane_shell_for_markers ... ok
[INFO] [stdout] test commands::tests::execute_command_side_channel_completes ... ok
[INFO] [stdout] test commands::tests::test_extract_exit_code::case_1 ... ok
[INFO] [stdout] test commands::tests::test_extract_exit_code::case_2 ... ok
[INFO] [stdout] test commands::tests::test_extract_exit_code::case_3 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_1 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_2 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_3 ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_unquoted_hash ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_allows::case_1 ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_intra_word_background ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_allows::case_2 ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_newline ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_rejects::case_2 ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_rejects::case_1 ... ok
[INFO] [stdout] test commands::tests::test_resource_uri_helper ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_1 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_2 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_3 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_4 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_5 ... ok
[INFO] [stdout] test commands::tests::test_wrap_tracked_command_space_before_done ... ok
[INFO] [stdout] test commands::tests::test_wrap_includes_side_channel ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_4 ... ok
[INFO] [stdout] test security::tests::config_rejects_unknown_fields ... ok
[INFO] [stdout] test commands::tests::test_parse_command_output_brackets_only ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_absolute_path_by_default ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_allowed_symlink_escape ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_default_relative_path_outside_safe_dir ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_parent_traversal ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_resolves_default_relative_path_under_safe_dir ... ok
[INFO] [stdout] test security::tests::test_check_tool_allows_unknown ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_honors_allowed_buffer_paths ... ok
[INFO] [stdout] test security::tests::test_command_allowlist ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_allows_escaped_spaces_and_separators ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_blocks_chained_statements ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_checks_each_non_empty_line ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_keeps_redirection_ampersands_in_statement ... ok
[INFO] [stdout] test security::tests::test_command_denylist ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_preserves_parameter_expansions ... ok
[INFO] [stdout] test security::tests::test_command_filter_blocks_chained_statements ... ok
[INFO] [stdout] test security::tests::test_command_filter_blocks_process_substitution_statements ... ok
[INFO] [stdout] test security::tests::test_command_filter_blocks_subshell_and_brace_group_statements ... ok
[INFO] [stdout] test security::tests::test_command_filter_rejects_shell_c_wrappers ... ok
[INFO] [stdout] test security::tests::test_command_filter_checks_each_non_empty_line ... ok
[INFO] [stdout] test security::tests::test_command_filter_respects_single_quotes ... ok
[INFO] [stdout] test security::tests::test_command_filter_treats_single_quote_inside_double_quotes_as_literal ... ok
[INFO] [stdout] test security::tests::test_default_policy_allows_all ... ok
[INFO] [stdout] test security::tests::test_disabled_security_allows_absolute_buffer_path ... ok
[INFO] [stdout] test security::tests::test_disabled_security_ignores_tool_filter ... ok
[INFO] [stdout] test security::tests::test_load_invalid_toml_returns_error ... ok
[INFO] [stdout] test security::tests::test_disabled_security_allows_all ... ok
[INFO] [stdout] test security::tests::test_pane_restriction ... ok
[INFO] [stdout] test security::tests::test_load_missing_file_returns_error ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_destination_allows_fresh_default_file ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_destination_rejects_parent_outside_allowlist ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_path_rejects_remote_symlink_escape ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_path_uses_remote_canonical_allowlist ... ok
[INFO] [stdout] test security::tests::test_remote_default_buffer_path_is_anchored_to_safe_dir ... ok
[INFO] [stdout] test security::tests::test_remote_default_buffer_path_rejects_unsafe_input_before_canonicalization ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_allows_fresh_allowed_file ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_allows_fresh_default_file ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_rejects_broken_symlink ... ok
[INFO] [stdout] test security::tests::test_session_restriction ... ok
[INFO] [stdout] test security::tests::test_socket_restriction ... ok
[INFO] [stdout] test security::tests::test_tool_denial ... ok
[INFO] [stdout] test security::tests::test_tool_filter_allows_only_list_group ... ok
[INFO] [stdout] test security::tests::test_tool_filter_denies_exact_tools ... ok
[INFO] [stdout] test security::tests::test_tool_filter_group_denies_raw_input ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_rejects_existing_symlink_escape ... ok
[INFO] [stdout] test security::tests::test_tool_filter_rejects_unknown_groups ... ok
[INFO] [stdout] test security::tests::test_tool_filter_rejects_unknown_items ... ok
[INFO] [stdout] test commands::tests::execute_command_side_channel_keeps_status_but_marks_unclosed_output_truncated ... ok
[INFO] [stdout] test commands::tests::check_status_returns_terminal_commit_that_wins_capture_race ... ok
[INFO] [stdout] test commands::tests::execute_command_send_failure_rolls_back ... ok
[INFO] [stdout] test commands::tests::execute_command_queues_second_on_same_pane ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_background ... ok
[INFO] [stdout] test tmux::tests::capture_pane_returns_content ... ok
[INFO] [stdout] test commands::tests::raw_mode_disables_tracking ... ok
[INFO] [stdout] test commands::tests::queued_send_failure_remains_pollable_as_tracking_error ... ok
[INFO] [stdout] test commands::tests::purge_pane_is_scoped_to_socket ... ok
[INFO] [stdout] test tmux::tests::create_window_handles_bad_output ... ok
[INFO] [stdout] test commands::tests::terminal_capture_retries_boundedly_until_done_is_visible ... ok
[INFO] [stdout] test commands::tests::terminal_state_and_queue_advance_while_presentation_capture_is_blocked ... ok
[INFO] [stdout] test tmux::tests::decode_window_preserves_complete_trailing_utf8_scalar ... ok
[INFO] [stdout] test tmux::tests::decode_window_rejects_invalid_utf8 ... ok
[INFO] [stdout] test commands::tests::wait_for_returns_on_completion ... ok
[INFO] [stdout] test commands::tests::wait_for_timeout_leaves_running ... ok
[INFO] [stdout] test tmux::tests::break_pane_parses_output ... ok
[INFO] [stdout] test tmux::tests::break_pane_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::break_pane_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_success ... ok
[INFO] [stdout] test tmux::tests::capture_pane_preserves_significant_whitespace ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_uses_ssh_when_configured ... ok
[INFO] [stdout] test tmux::tests::create_remote_dir_uses_ssh_host ... ok
[INFO] [stdout] test tmux::tests::create_session_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::create_session_parses_output ... ok
[INFO] [stdout] test tmux::tests::list_parsers_reject_extra_tab_fields ... ok
[INFO] [stdout] test tmux::tests::create_session_recovers_from_missing_output ... ok
[INFO] [stdout] test commands::tests::terminal_capture_marks_missing_boundaries_truncated ... ok
[INFO] [stdout] test tmux::tests::max_matches_cursor_replays_complete_multi_buffer_request_without_duplicates ... ok
[INFO] [stdout] test tmux::tests::parse_hex_tokens_normalizes_and_validates ... ok
[INFO] [stdout] test tmux::tests::create_window_parses_output ... ok
[INFO] [stdout] test tmux::tests::create_window_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::remote_tmux_command_shell_quotes_args ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_error_message ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_invalid_ssh_returns_error ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_over_ssh_preserves_shell_sensitive_args ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_preserves_raw_stdout_whitespace ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_spawn_error ... ok
[INFO] [stdout] test tmux::tests::search_buffers_regex_requires_full_budget_before_loading_window ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_uses_socket_args ... ok
[INFO] [stdout] test commands::tests::partial_capture_is_bounded_and_preserves_useful_output_after_marker_loss ... ok
[INFO] [stdout] test tmux::tests::get_current_session_handles_missing ... ok
[INFO] [stdout] test tmux::tests::is_tmux_running_reports_states ... ok
[INFO] [stdout] test tmux::tests::join_and_swap_panes_happy_path ... ok
[INFO] [stdout] test tmux::tests::list_parsers_trim_executor_output_boundaries ... ok
[INFO] [stdout] test tmux::tests::send_keys_literal_fast_path_single_call ... ok
[INFO] [stdout] test tmux::tests::paste_text_deletes_staging_buffer_on_paste_failure ... ok
[INFO] [stdout] test tmux::tests::remote_path_is_symlink_uses_ssh_host ... ok
[INFO] [stdout] test tmux::tests::resize_pane_requires_dimensions_or_direction ... ok
[INFO] [stdout] test tmux::tests::resolve_socket_prefers_override_and_env ... ok
[INFO] [stdout] test tmux::tests::show_buffer_preserves_significant_whitespace ... ok
[INFO] [stdout] test tmux::tests::search_buffers_preserves_complete_trailing_utf8_scalar ... ok
[INFO] [stdout] test tmux::tests::test_parse_buffers::case_1 ... ok
[INFO] [stdout] test tmux::tests::search_buffers_returns_offsets_and_snippets ... ok
[INFO] [stdout] test tmux::tests::test_parse_buffers::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes_skips_malformed_lines ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions_skips_malformed_lines ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions_with_colons_in_name::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_4 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_5 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_6 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_4 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_5 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_rejects_unbalanced_quotes ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_6 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_8 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_7 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows_skips_malformed_lines ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows_with_colons::case_1 ... ok
[INFO] [stdout] test types::tests::command_snapshot_preserves_output_capture_completeness ... ok
[INFO] [stdout] test tmux::tests::canonicalize_remote_path_uses_ssh_host ... ok
[INFO] [stdout] test tmux::tests::search_buffers_streaming_searches_literal_lookahead_once ... ok
[INFO] [stdout] test tmux::tests::search_buffers_streaming_uses_scan_window ... ok
[INFO] [stdout] test tmux::tests::select_layout_happy_path ... ok
[INFO] [stdout] test tmux::tests::select_layout_tmux_error ... ok
[INFO] [stdout] test tmux::tests::send_keys_hex_passes_byte_tokens ... ok
[INFO] [stdout] test tmux::tests::send_keys_literal_chunks_large_payload ... ok
[INFO] [stdout] test tmux::tests::list_windows_and_panes ... ok
[INFO] [stdout] test tmux::tests::send_keys_literal_uses_separator_for_leading_dash_payload ... ok
[INFO] [stdout] test tmux::tests::set_buffer_bytes_returns_load_error_for_binary_content ... ok
[INFO] [stdout] test tmux::tests::resize_pane_invalid_direction_returns_error ... ok
[INFO] [stdout] test tmux::tests::split_pane_parses_output ... ok
[INFO] [stdout] test tmux::tests::split_pane_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::split_pane_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::zoom_pane_happy_path ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 180 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.10s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/tmux-mcp-rs/5f2018920858b5f8/out/tmux_mcp_rs-5f2018920858b5f8)
[INFO] [stdout] 
[INFO] [stdout] running 307 tests
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_2 ... ok
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_1 ... ok
[INFO] [stdout] test commands::tests::extract_output_uses_last_done_marker_for_the_boundary ... ok
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_4 ... ok
[INFO] [stdout] test commands::tests::partial_capture_never_exceeds_final_capture_budget ... ok
[INFO] [stdout] test commands::tests::extract_output_reports_capture_boundaries::case_3 ... ok
[INFO] [stdout] test commands::tests::execute_command_queues_second_on_same_pane ... ok
[INFO] [stdout] test commands::tests::terminal_capture_marks_missing_boundaries_truncated ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_background ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_intra_word_background ... ok
[INFO] [stdout] test commands::tests::test_extract_exit_code::case_1 ... ok
[INFO] [stdout] test commands::tests::test_extract_exit_code::case_2 ... ok
[INFO] [stdout] test commands::tests::test_extract_exit_code::case_3 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_1 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_2 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_3 ... ok
[INFO] [stdout] test commands::tests::test_get_end_marker::case_4 ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_allows::case_1 ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_allows::case_2 ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_rejects::case_1 ... ok
[INFO] [stdout] test commands::tests::test_has_unquoted_shell_comment_marker_rejects::case_2 ... ok
[INFO] [stdout] test commands::tests::test_parse_command_output_brackets_only ... ok
[INFO] [stdout] test commands::tests::test_resource_uri_helper ... ok
[INFO] [stdout] test commands::tests::terminal_capture_retries_boundedly_until_done_is_visible ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_2 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_3 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_4 ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_5 ... ok
[INFO] [stdout] test commands::tests::test_wrap_includes_side_channel ... ok
[INFO] [stdout] test commands::tests::test_wrap_tracked_command_space_before_done ... ok
[INFO] [stdout] test commands::tests::test_shell_type_for_pane_command::case_1 ... ok
[INFO] [stdout] test commands::tests::execute_command_spoof_done_does_not_complete ... ok
[INFO] [stdout] test security::tests::config_rejects_unknown_fields ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_honors_allowed_buffer_paths ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_absolute_path_by_default ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_allowed_symlink_escape ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_default_relative_path_outside_safe_dir ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_rejects_parent_traversal ... ok
[INFO] [stdout] test security::tests::test_check_buffer_path_resolves_default_relative_path_under_safe_dir ... ok
[INFO] [stdout] test security::tests::test_check_tool_allows_unknown ... ok
[INFO] [stdout] test security::tests::test_command_allowlist ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_allows_escaped_spaces_and_separators ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_blocks_chained_statements ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_checks_each_non_empty_line ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_keeps_redirection_ampersands_in_statement ... ok
[INFO] [stdout] test security::tests::test_command_allowlist_preserves_parameter_expansions ... ok
[INFO] [stdout] test commands::tests::execute_command_side_channel_completes ... ok
[INFO] [stdout] test security::tests::test_command_denylist ... ok
[INFO] [stdout] test security::tests::test_command_filter_blocks_chained_statements ... ok
[INFO] [stdout] test security::tests::test_command_filter_blocks_process_substitution_statements ... ok
[INFO] [stdout] test security::tests::test_command_filter_checks_each_non_empty_line ... ok
[INFO] [stdout] test security::tests::test_command_filter_blocks_subshell_and_brace_group_statements ... ok
[INFO] [stdout] test security::tests::test_command_filter_rejects_shell_c_wrappers ... ok
[INFO] [stdout] test security::tests::test_command_filter_respects_single_quotes ... ok
[INFO] [stdout] test security::tests::test_default_policy_allows_all ... ok
[INFO] [stdout] test security::tests::test_command_filter_treats_single_quote_inside_double_quotes_as_literal ... ok
[INFO] [stdout] test security::tests::test_disabled_security_allows_absolute_buffer_path ... ok
[INFO] [stdout] test security::tests::test_disabled_security_ignores_tool_filter ... ok
[INFO] [stdout] test security::tests::test_disabled_security_allows_all ... ok
[INFO] [stdout] test security::tests::test_load_invalid_toml_returns_error ... ok
[INFO] [stdout] test security::tests::test_load_missing_file_returns_error ... ok
[INFO] [stdout] test security::tests::test_pane_restriction ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_destination_rejects_parent_outside_allowlist ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_path_rejects_remote_symlink_escape ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_path_uses_remote_canonical_allowlist ... ok
[INFO] [stdout] test security::tests::test_remote_default_buffer_path_is_anchored_to_safe_dir ... ok
[INFO] [stdout] test security::tests::test_remote_default_buffer_path_rejects_unsafe_input_before_canonicalization ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_allows_fresh_allowed_file ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_allows_fresh_default_file ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_rejects_broken_symlink ... ok
[INFO] [stdout] test security::tests::test_remote_buffer_destination_allows_fresh_default_file ... ok
[INFO] [stdout] test security::tests::test_resolve_local_buffer_destination_rejects_existing_symlink_escape ... ok
[INFO] [stdout] test security::tests::test_socket_restriction ... ok
[INFO] [stdout] test security::tests::test_session_restriction ... ok
[INFO] [stdout] test security::tests::test_tool_denial ... ok
[INFO] [stdout] test security::tests::test_tool_filter_allows_only_list_group ... ok
[INFO] [stdout] test security::tests::test_tool_filter_denies_exact_tools ... ok
[INFO] [stdout] test security::tests::test_tool_filter_group_denies_raw_input ... ok
[INFO] [stdout] test security::tests::test_tool_filter_rejects_unknown_items ... ok
[INFO] [stdout] test security::tests::test_tool_filter_rejects_unknown_groups ... ok
[INFO] [stdout] test commands::tests::execute_command_side_channel_retries_output_until_done_marker_is_visible ... ok
[INFO] [stdout] test server::tests::buffer_file_operations_denied_by_capture_policy ... ok
[INFO] [stdout] test server::tests::capture_pane_denied_by_policy ... ok
[INFO] [stdout] test commands::tests::execute_command_side_channel_keeps_status_but_marks_unclosed_output_truncated ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_unquoted_hash ... ok
[INFO] [stdout] test server::tests::capture_pane_happy_path_with_colors ... ok
[INFO] [stdout] test commands::tests::execute_command_rejects_newline ... ok
[INFO] [stdout] test commands::tests::partial_capture_is_bounded_and_preserves_useful_output_after_marker_loss ... ok
[INFO] [stdout] test server::tests::capture_pane_tool_denied ... ok
[INFO] [stdout] test server::tests::create_tools_denied_by_policy ... ok
[INFO] [stdout] test commands::tests::queued_send_failure_remains_pollable_as_tracking_error ... ok
[INFO] [stdout] test commands::tests::raw_mode_disables_tracking ... ok
[INFO] [stdout] test commands::tests::purge_pane_is_scoped_to_socket ... ok
[INFO] [stdout] test commands::tests::check_status_returns_terminal_commit_that_wins_capture_race ... ok
[INFO] [stdout] test commands::tests::execute_command_uses_pane_shell_for_markers ... ok
[INFO] [stdout] test server::tests::execute_command_command_denied ... ok
[INFO] [stdout] test server::tests::execute_command_denied_by_policy ... ok
[INFO] [stdout] test server::tests::execute_command_pane_denied ... ok
[INFO] [stdout] test server::tests::execute_command_raw_mode_denied ... ok
[INFO] [stdout] test commands::tests::terminal_state_and_queue_advance_while_presentation_capture_is_blocked ... ok
[INFO] [stdout] test server::tests::execute_command_tmux_error ... ok
[INFO] [stdout] test commands::tests::wait_for_timeout_leaves_running ... ok
[INFO] [stdout] test server::tests::buffer_file_operations_allowed_by_capture_policy ... ok
[INFO] [stdout] test server::tests::first_text_resource_handles_non_text ... ok
[INFO] [stdout] test server::tests::break_pane_happy_path ... ok
[INFO] [stdout] test server::tests::capture_pane_empty_output ... ok
[INFO] [stdout] test commands::tests::execute_command_send_failure_rolls_back ... ok
[INFO] [stdout] test server::tests::get_command_result_missing ... ok
[INFO] [stdout] test server::tests::capture_pane_tmux_error ... ok
[INFO] [stdout] test server::tests::create_session_happy_path ... ok
[INFO] [stdout] test server::tests::create_session_tmux_error ... ok
[INFO] [stdout] test server::tests::create_window_happy_path ... ok
[INFO] [stdout] test server::tests::create_window_tmux_error ... ok
[INFO] [stdout] test server::tests::get_info_exposes_tools_and_resources ... ok
[INFO] [stdout] test server::tests::enforce_session_for_pane_re_resolves_after_ssh_target_changes ... ok
[INFO] [stdout] test server::tests::execute_and_get_command_result_completed ... ok
[INFO] [stdout] test server::tests::execute_and_get_command_result_error_status_is_mcp_error ... ok
[INFO] [stdout] test server::tests::execute_command_raw_mode_pending ... ok
[INFO] [stdout] test server::tests::kill_tools_denied_by_policy ... ok
[INFO] [stdout] test commands::tests::wait_for_returns_on_completion ... ok
[INFO] [stdout] test server::tests::find_session_found ... ok
[INFO] [stdout] test server::tests::find_session_missing ... ok
[INFO] [stdout] test server::tests::get_command_result_denied_for_pane ... ok
[INFO] [stdout] test server::tests::list_resource_templates_respect_policy ... ok
[INFO] [stdout] test server::tests::get_command_result_denied_for_unlisted_session ... ok
[INFO] [stdout] test server::tests::get_command_result_denies_session_changed_after_execute ... ok
[INFO] [stdout] test server::tests::get_command_result_rejects_mismatched_socket_override ... ok
[INFO] [stdout] test server::tests::get_command_result_rejects_mismatched_socket_override_when_default_recorded ... ok
[INFO] [stdout] test server::tests::get_command_result_tmux_error ... ok
[INFO] [stdout] test server::tests::get_current_session_respects_allowed_sessions ... ok
[INFO] [stdout] test server::tests::get_current_session_success_and_error ... ok
[INFO] [stdout] test server::tests::kill_operations_happy_path ... ok
[INFO] [stdout] test server::tests::kill_pane_success_purges_tracked_commands_for_pane ... ok
[INFO] [stdout] test server::tests::kill_pane_tmux_failure_does_not_purge_tracked_commands ... ok
[INFO] [stdout] test server::tests::kill_tmux_errors ... ok
[INFO] [stdout] test server::tests::list_sessions_denied_by_policy ... ok
[INFO] [stdout] test server::tests::list_buffers_and_show_buffer_happy_path ... ok
[INFO] [stdout] test server::tests::list_tools_denied_by_policy ... ok
[INFO] [stdout] test server::tests::list_clients_happy_path ... ok
[INFO] [stdout] test server::tests::list_windows_and_panes_tmux_errors ... ok
[INFO] [stdout] test server::tests::list_panes_respects_allowed_panes ... ok
[INFO] [stdout] test server::tests::load_buffer_rejects_absolute_path_by_default_policy ... ok
[INFO] [stdout] test server::tests::list_resources_denied_by_socket_policy ... ok
[INFO] [stdout] test server::tests::pane_denied_across_tools ... ok
[INFO] [stdout] test server::tests::list_resources_enforces_composite_capability_matrix ... ok
[INFO] [stdout] test server::tests::paste_text_command_denied_by_policy ... ok
[INFO] [stdout] test server::tests::paste_text_denied_by_policy ... ok
[INFO] [stdout] test server::tests::list_resources_hides_pane_uris_when_capture_denied ... ok
[INFO] [stdout] test server::tests::paste_text_multiline_command_denied_by_policy ... ok
[INFO] [stdout] test server::tests::list_resources_includes_panes_and_commands ... ok
[INFO] [stdout] test server::tests::list_resources_keeps_clients_and_commands_independent_from_topology ... ok
[INFO] [stdout] test server::tests::list_resources_lists_command_catalog_from_memory ... ok
[INFO] [stdout] test server::tests::list_resources_policy_skips ... ok
[INFO] [stdout] test server::tests::list_resources_returns_error_when_nested_windows_or_panes_fail ... ok
[INFO] [stdout] test server::tests::list_resources_returns_error_when_sessions_fail ... ok
[INFO] [stdout] test server::tests::read_resource_command_not_found ... ok
[INFO] [stdout] test server::tests::list_resources_skips_command_for_denied_pane_and_truncates ... ok
[INFO] [stdout] test server::tests::list_sessions_and_find_session_tmux_error ... ok
[INFO] [stdout] test server::tests::read_resource_invalid_command_uri ... ok
[INFO] [stdout] test server::tests::list_sessions_happy_path ... ok
[INFO] [stdout] test server::tests::read_resource_pane_denied ... ok
[INFO] [stdout] test server::tests::list_panes_happy_path ... ok
[INFO] [stdout] test server::tests::list_windows_happy_path ... ok
[INFO] [stdout] test server::tests::move_window_denied_and_error ... ok
[INFO] [stdout] test server::tests::pane_tools_deny_unlisted_sessions ... ok
[INFO] [stdout] test server::tests::read_resource_unknown_uri ... ok
[INFO] [stdout] test server::tests::pane_tools_respect_allowed_sessions ... ok
[INFO] [stdout] test server::tests::paste_text_happy_path ... ok
[INFO] [stdout] test server::tests::rename_tools_denied_by_policy ... ok
[INFO] [stdout] test server::tests::paste_text_uses_bracketed_paste_flags ... ok
[INFO] [stdout] test server::tests::read_resource_command_denied_by_policy ... ok
[INFO] [stdout] test server::tests::read_resource_command_denied_by_socket_policy ... ok
[INFO] [stdout] test server::tests::read_resource_command_denied_for_unlisted_session ... ok
[INFO] [stdout] test server::tests::save_buffer_rejects_absolute_path_by_default_policy ... ok
[INFO] [stdout] test server::tests::read_resource_command_denies_session_changed_after_execute ... ok
[INFO] [stdout] test server::tests::search_input_accepts_single_buffer_alias ... ok
[INFO] [stdout] test server::tests::read_resource_command_happy_path ... ok
[INFO] [stdout] test server::tests::resource_template_capability_matrix_handles_composite_tool_filters ... ok
[INFO] [stdout] test server::tests::send_hex_denied_by_policy ... ok
[INFO] [stdout] test server::tests::send_cancel_denied_by_policy ... ok
[INFO] [stdout] test server::tests::send_hex_rejects_line_editing_controls ... ok
[INFO] [stdout] test server::tests::send_hex_rejects_invalid_token ... ok
[INFO] [stdout] test server::tests::send_keys_denied_by_policy ... ok
[INFO] [stdout] test server::tests::read_resource_command_pending_and_error ... ok
[INFO] [stdout] test server::tests::send_keys_literal_command_denied ... ok
[INFO] [stdout] test server::tests::send_keys_non_literal_command_denied ... ok
[INFO] [stdout] test server::tests::read_resource_denied_by_socket_policy ... ok
[INFO] [stdout] test server::tests::read_resource_pane_denied_by_capture_policy ... ok
[INFO] [stdout] test server::tests::read_resource_pane_error ... ok
[INFO] [stdout] test server::tests::read_resource_pane_happy_path ... ok
[INFO] [stdout] test server::tests::read_server_info_denied_by_socket_policy ... ok
[INFO] [stdout] test server::tests::read_window_info_respects_allowed_panes ... ok
[INFO] [stdout] test server::tests::rename_and_move_happy_path ... ok
[INFO] [stdout] test server::tests::socket_for_path_normalizes_and_hashes ... ok
[INFO] [stdout] test server::tests::socket_for_path_requires_path ... ok
[INFO] [stdout] test server::tests::rename_tmux_errors ... ok
[INFO] [stdout] test server::tests::split_pane_denied_by_policy ... ok
[INFO] [stdout] test server::tests::resize_pane_happy_path ... ok
[INFO] [stdout] test server::tests::subsearch_input_accepts_snake_case_and_anchor_buffer ... ok
[INFO] [stdout] test server::tests::resize_pane_invalid_direction ... ok
[INFO] [stdout] test server::tests::tool_filter_allowlist_prunes_router_to_allowed_tools ... ok
[INFO] [stdout] test server::tests::tool_filter_prunes_denied_tools_from_router ... ok
[INFO] [stdout] test server::tests::resource_reads_enforce_composite_capability_matrix ... ok
[INFO] [stdout] test tests::parse_shell_type_is_case_insensitive ... ok
[INFO] [stdout] test tests::parse_shell_type_recognizes_known_shells ... ok
[INFO] [stdout] test tests::parse_shell_type_rejects_unknown_shells ... ok
[INFO] [stdout] test server::tests::save_delete_and_detach_happy_path ... ok
[INFO] [stdout] test server::tests::select_layout_tmux_error ... ok
[INFO] [stdout] test server::tests::send_keys_enter_flag_sends_enter ... ok
[INFO] [stdout] test server::tests::send_keys_literal_command_allowed_when_filter_passes ... ok
[INFO] [stdout] test server::tests::send_keys_tmux_errors ... ok
[INFO] [stdout] test server::tests::send_keys_variants_happy_path ... ok
[INFO] [stdout] test server::tests::send_special_key_tmux_error ... ok
[INFO] [stdout] test server::tests::send_special_keys_happy_path ... ok
[INFO] [stdout] test server::tests::session_denied_across_tools ... ok
[INFO] [stdout] test server::tests::session_discovery_respects_allowed_sessions ... ok
[INFO] [stdout] test server::tests::session_tree_fails_closed_for_disallowed_panes ... ok
[INFO] [stdout] test server::tests::split_pane_happy_path ... ok
[INFO] [stdout] test server::tests::split_pane_tmux_error ... ok
[INFO] [stdout] test server::tests::window_tools_deny_unlisted_sessions ... ok
[INFO] [stdout] test server::tests::zoom_and_layout_and_pane_moves_happy_path ... ok
[INFO] [stdout] test tmux::tests::decode_window_preserves_complete_trailing_utf8_scalar ... ok
[INFO] [stdout] test tmux::tests::decode_window_rejects_invalid_utf8 ... ok
[INFO] [stdout] test tmux::tests::break_pane_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::break_pane_parses_output ... ok
[INFO] [stdout] test tmux::tests::break_pane_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::canonicalize_remote_path_uses_ssh_host ... ok
[INFO] [stdout] test tmux::tests::capture_pane_returns_content ... ok
[INFO] [stdout] test tmux::tests::capture_pane_preserves_significant_whitespace ... ok
[INFO] [stdout] test tmux::tests::create_remote_dir_uses_ssh_host ... ok
[INFO] [stdout] test tmux::tests::create_session_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::create_session_parses_output ... ok
[INFO] [stdout] test tmux::tests::list_parsers_reject_extra_tab_fields ... ok
[INFO] [stdout] test tmux::tests::create_session_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::create_window_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::create_window_parses_output ... ok
[INFO] [stdout] test tmux::tests::max_matches_cursor_replays_complete_multi_buffer_request_without_duplicates ... ok
[INFO] [stdout] test tmux::tests::parse_hex_tokens_normalizes_and_validates ... ok
[INFO] [stdout] test tmux::tests::create_window_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::remote_tmux_command_shell_quotes_args ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_error_message ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_invalid_ssh_returns_error ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_over_ssh_preserves_shell_sensitive_args ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_preserves_raw_stdout_whitespace ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_spawn_error ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_success ... ok
[INFO] [stdout] test tmux::tests::search_buffers_streaming_searches_literal_lookahead_once ... ok
[INFO] [stdout] test tmux::tests::search_buffers_streaming_uses_scan_window ... ok
[INFO] [stdout] test tmux::tests::select_layout_happy_path ... ok
[INFO] [stdout] test tmux::tests::is_tmux_running_reports_states ... ok
[INFO] [stdout] test tmux::tests::join_and_swap_panes_happy_path ... ok
[INFO] [stdout] test tmux::tests::list_parsers_trim_executor_output_boundaries ... ok
[INFO] [stdout] test tmux::tests::send_keys_literal_chunks_large_payload ... ok
[INFO] [stdout] test tmux::tests::list_windows_and_panes ... ok
[INFO] [stdout] test tmux::tests::remote_path_is_symlink_uses_ssh_host ... ok
[INFO] [stdout] test tmux::tests::show_buffer_preserves_significant_whitespace ... ok
[INFO] [stdout] test tmux::tests::split_pane_handles_bad_output ... ok
[INFO] [stdout] test tmux::tests::resize_pane_invalid_direction_returns_error ... ok
[INFO] [stdout] test tmux::tests::resize_pane_requires_dimensions_or_direction ... ok
[INFO] [stdout] test tmux::tests::test_parse_buffers::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_buffers::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_panes_skips_malformed_lines ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions_skips_malformed_lines ... ok
[INFO] [stdout] test tmux::tests::split_pane_recovers_from_missing_output ... ok
[INFO] [stdout] test tmux::tests::test_parse_sessions_with_colons_in_name::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_4 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_5 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_ok::case_6 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_ssh_args_rejects_unbalanced_quotes ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_5 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_4 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_6 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_8 ... ok
[INFO] [stdout] test tmux::tests::test_parse_tmux_version::case_7 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows::case_2 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows::case_1 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows::case_3 ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows_skips_malformed_lines ... ok
[INFO] [stdout] test tmux::tests::test_parse_windows_with_colons::case_1 ... ok
[INFO] [stdout] test types::tests::command_snapshot_preserves_output_capture_completeness ... ok
[INFO] [stdout] test tmux::tests::search_buffers_preserves_complete_trailing_utf8_scalar ... ok
[INFO] [stdout] test tmux::tests::search_buffers_regex_requires_full_budget_before_loading_window ... ok
[INFO] [stdout] test tmux::tests::search_buffers_returns_offsets_and_snippets ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_uses_socket_args ... ok
[INFO] [stdout] test tmux::tests::execute_tmux_uses_ssh_when_configured ... ok
[INFO] [stdout] test tmux::tests::get_current_session_handles_missing ... ok
[INFO] [stdout] test tmux::tests::select_layout_tmux_error ... ok
[INFO] [stdout] test tmux::tests::send_keys_hex_passes_byte_tokens ... ok
[INFO] [stdout] test tmux::tests::send_keys_literal_fast_path_single_call ... ok
[INFO] [stdout] test tmux::tests::paste_text_deletes_staging_buffer_on_paste_failure ... ok
[INFO] [stdout] test tmux::tests::send_keys_literal_uses_separator_for_leading_dash_payload ... ok
[INFO] [stdout] test tmux::tests::set_buffer_bytes_returns_load_error_for_binary_content ... ok
[INFO] [stdout] test tmux::tests::split_pane_parses_output ... ok
[INFO] [stdout] test tmux::tests::resolve_socket_prefers_override_and_env ... ok
[INFO] [stdout] test tmux::tests::zoom_pane_happy_path ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 307 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 12.45s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/build/tmux-mcp-rs/a34313cdf390f1dc/out/cli-a34313cdf390f1dc)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test cli_rejects_invalid_policy_regex ... ok
[INFO] [stdout] test cli_rejects_invalid_config ... ok
[INFO] [stdout] test cli_rejects_invalid_shell_type ... ok
[INFO] [stdout] test cli_rejects_missing_config ... ok
[INFO] [stdout] test cli_rejects_invalid_env_ssh_quoting ... ok
[INFO] [stdout] test cli_rejects_invalid_ssh_quoting ... ok
[INFO] [stdout] test cli_rejects_invalid_config_shell_type ... ok
[INFO] [stdout] test cli_reads_valid_config_and_exits_when_stdio_closed ... ok
[INFO] [stdout] test cli_exits_when_stdio_closed ... ok
[INFO] [stdout] test cli_rejects_invalid_tools_env ... ok
[INFO] [stdout] test cli_accepts_valid_shell_type_and_exits_when_stdio_closed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/build/tmux-mcp-rs/f63f81c1f2770533/out/integration-f63f81c1f2770533)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test test_paste_text_delivers_content_and_cleans_buffer ... ok
[INFO] [stdout] test test_workflow_id_first_targeting ... ok
[INFO] [stdout] test test_leading_dash_names_are_not_parsed_as_flags ... ok
[INFO] [stdout] test test_workflow_buffer_roundtrip ... ok
[INFO] [stdout] test test_workflow_pane_rearrangements ... ok
[INFO] [stdout] test test_workflow_interactive_interrupts ... ok
[INFO] [stdout] test test_workflow_continuous_output_capture ... ok
[INFO] [stdout] test test_workflow_interactive_prompt ... ok
[INFO] [stdout] test test_workflow_metadata_and_zoom ... ok
[INFO] [stdout] test test_smoke_tmux_available ... ok
[INFO] [stdout] test test_workflow_task_per_session_layout ... ok
[INFO] [stdout] test test_workflow_synchronized_panes_broadcast ... ok
[INFO] [stdout] test test_paste_text_holds_newlines_with_bracketed_paste ... ok
[INFO] [stdout] test test_workflow_stateful_shell_context ... ok
[INFO] [stdout] test test_execute_command_tracking ... ok
[INFO] [stdout] test test_workflow_agent_orchestration ... ok
[INFO] [stdout] test test_full_lifecycle ... ok
[INFO] [stdout] test test_send_keys_and_capture ... ok
[INFO] [stdout] test test_workflow_audit_context_bundle ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/search.rs (/opt/rustwide/target/debug/build/tmux-mcp-rs/2460ccdbfa1ce66f/out/search-2460ccdbfa1ce66f)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test search_tests_skipped_on_linux ... ok
[INFO] [stdout] test literal_paging_rejects_non_progressing_or_invalid_utf8_cursors ... ok
[INFO] [stdout] test fuzzy_search_default_budget_rejects_buffers_that_cannot_be_paged_statelessly ... ok
[INFO] [stdout] test literal_pages_find_boundary_spanning_matches_once_with_utf8_cursors ... ok
[INFO] [stdout] test literal_pages_preserve_full_scan_non_overlapping_match_semantics ... ok
[INFO] [stdout] test top_level_regex_rejects_zero_length_hits_that_offsets_cannot_page ... ok
[INFO] [stdout] test zero_search_budgets_are_rejected_instead_of_returning_stuck_cursors ... ok
[INFO] [stdout] test regex_max_matches_pages_preserve_global_matching_and_do_not_replay ... ok
[INFO] [stdout] test unbounded_regex_requires_and_uses_a_full_buffer_scan_budget ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tmux_mcp_rs
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb", kill_on_drop: false }`
[INFO] [stdout] a6844c0231a31ce1479f7bafb0c8f839536443f33f33bd67a19ba89f02887bdb
