[INFO] cloning repository https://github.com/xiic-monkey/xiic-ssh-mcp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xiic-monkey/xiic-ssh-mcp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxiic-monkey%2Fxiic-ssh-mcp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxiic-monkey%2Fxiic-ssh-mcp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4ff446de76f2aef68fc55003b238294af5595b2b
[INFO] testing xiic-monkey/xiic-ssh-mcp against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxiic-monkey%2Fxiic-ssh-mcp" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/xiic-monkey/xiic-ssh-mcp
[INFO] finished tweaking git repo https://github.com/xiic-monkey/xiic-ssh-mcp
[INFO] tweaked toml for git repo https://github.com/xiic-monkey/xiic-ssh-mcp written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/xiic-monkey/xiic-ssh-mcp on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/xiic-monkey/xiic-ssh-mcp 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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966
[INFO] running `Command { std: "docker" "start" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", 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" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", 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" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling cc v1.2.61
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling windows-link v0.2.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling keyring v3.6.3
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling windows-sys v0.61.2
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling openssl-src v300.6.0+3.6.2
[INFO] [stderr]    Compiling libz-sys v1.1.28
[INFO] [stderr]    Compiling openssl-sys v0.9.114
[INFO] [stderr]    Compiling libssh2-sys v0.3.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.35.0
[INFO] [stderr]    Compiling rusqlite v0.37.0
[INFO] [stderr]    Compiling ssh2 v0.9.5
[INFO] [stderr]    Compiling xiic-ssh-mcp v0.2.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 59s
[INFO] running `Command { std: "docker" "inspect" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", 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" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling xiic-ssh-mcp v0.2.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.32s
[INFO] running `Command { std: "docker" "inspect" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", 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" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/xiic_ssh_mcp-224b2cd8b3c8e4de)
[INFO] [stdout] 
[INFO] [stdout] running 62 tests
[INFO] [stdout] test approval::tests::close_session_approval_message_contains_instance_id ... ok
[INFO] [stdout] test approval::tests::approval_queue_serializes_concurrent_requests ... ok
[INFO] [stdout] test approval::tests::formats_command_approval_message ... ok
[INFO] [stdout] test approval::tests::sudo_approval_message_contains_command ... ok
[INFO] [stdout] test local_ipc::tests::unix_endpoints_use_socket_paths ... ok
[INFO] [stdout] test approval::tests::missing_approval_binary_returns_none ... ok
[INFO] [stdout] test local_ipc::tests::unix_request_round_trip_uses_newline_protocol ... ok
[INFO] [stdout] test app_core::tests::close_session_unknown_id_returns_error ... ok
[INFO] [stdout] test app_core::tests::secret_for_draft_accepts_private_key_path ... ok
[INFO] [stdout] test app_core::tests::secret_for_draft_keeps_existing_private_key_path ... ok
[INFO] [stdout] test app_core::tests::secret_for_draft_rejects_both_private_key_sources ... ok
[INFO] [stdout] test mcp::tests::reads_content_length_message ... ok
[INFO] [stdout] test mcp::tests::reads_newline_delimited_message ... ok
[INFO] [stdout] test app_core::tests::download_to_local_rejects_existing_file_when_overwrite_disabled ... ok
[INFO] [stdout] test mcp::tests::writes_content_length_response ... ok
[INFO] [stdout] test mcp::tests::writes_newline_delimited_response ... ok
[INFO] [stdout] test mcp_protocol::tests::reads_content_length_message ... ok
[INFO] [stdout] test mcp_protocol::tests::reads_newline_delimited_message ... ok
[INFO] [stdout] test mcp_protocol::tests::writes_content_length_response ... ok
[INFO] [stdout] test mcp_protocol::tests::writes_newline_delimited_response ... ok
[INFO] [stdout] test models::tests::normalize_trims_private_key_path ... ok
[INFO] [stdout] test settings::tests::missing_new_field_defaults_to_true ... ok
[INFO] [stdout] test settings::tests::round_trip_preserves_new_field ... ok
[INFO] [stdout] test app_core::tests::sudo_command_empty_command_bails ... ok
[INFO] [stdout] test mcp::tests::execute_command_args_deserialize_without_command_description ... ok
[INFO] [stdout] test app_core::tests::save_instance_fails_when_keychain_save_fails_without_sqlite_fallback ... ok
[INFO] [stdout] test whitelist::tests::approval_key_includes_local_path ... ok
[INFO] [stdout] test whitelist::tests::complex_backticks_need_approval ... ok
[INFO] [stdout] test whitelist::tests::complex_command_substitution_needs_approval ... ok
[INFO] [stdout] test whitelist::tests::compound_command_allows_when_every_segment_is_allowed ... ok
[INFO] [stdout] test whitelist::tests::compound_command_deny_matches_any_segment ... ok
[INFO] [stdout] test whitelist::tests::compound_command_needs_approval_when_any_segment_is_not_allowed ... ok
[INFO] [stdout] test whitelist::tests::escaped_connectors_do_not_split_segments ... ok
[INFO] [stdout] test whitelist::tests::evaluate_allow_all ... ok
[INFO] [stdout] test whitelist::tests::evaluate_deny_wins ... ok
[INFO] [stdout] test whitelist::tests::evaluate_needs_approval ... ok
[INFO] [stdout] test whitelist::tests::glob_literal_match ... ok
[INFO] [stdout] test whitelist::tests::glob_question_matches_one ... ok
[INFO] [stdout] test whitelist::tests::glob_star_matches_all ... ok
[INFO] [stdout] test whitelist::tests::malformed_commands_need_approval ... ok
[INFO] [stdout] test whitelist::tests::path_allow_covers_transfer_when_remote_and_local_paths_match ... ok
[INFO] [stdout] test whitelist::tests::path_allow_requires_local_path_for_downloads ... ok
[INFO] [stdout] test whitelist::tests::path_allow_requires_local_path_for_uploads ... ok
[INFO] [stdout] test whitelist::tests::path_deny_matches_local_path ... ok
[INFO] [stdout] test whitelist::tests::pipe_requires_each_side_to_be_allowed ... ok
[INFO] [stdout] test whitelist::tests::quoted_connectors_do_not_split_segments ... ok
[INFO] [stdout] test whitelist::tests::redirection_needs_approval ... ok
[INFO] [stdout] test mcp::tests::codex_prefers_elicitation_when_enabled_and_capable ... ok
[INFO] [stdout] test mcp::tests::elicitation_wait_matches_response_id_and_preserves_other_messages ... ok
[INFO] [stdout] test mcp::tests::forced_elicitation_requires_client_capability ... ok
[INFO] [stdout] test mcp::tests::codex_uses_local_when_setting_disabled ... ok
[INFO] [stdout] test app_core::tests::legacy_sqlite_secret_does_not_overwrite_existing_keychain_secret ... ok
[INFO] [stdout] test mcp::tests::codex_falls_back_to_local_without_elicitation_capability ... ok
[INFO] [stdout] test app_core::tests::legacy_sqlite_secret_is_not_used_when_keychain_is_missing ... ok
[INFO] [stdout] test mcp::tests::resources_list_returns_empty_resources ... ok
[INFO] [stdout] test mcp::tests::non_codex_clients_stay_local_in_auto_mode ... ok
[INFO] [stdout] test app_core::tests::legacy_sqlite_secret_migrates_to_keychain_and_is_deleted ... ok
[INFO] [stdout] test mcp::tests::execute_command_schema_does_not_require_command_description ... ok
[INFO] [stdout] test storage::tests::init_schema_migrates_operation_logs_from_old_schema ... ok
[INFO] [stdout] test app_core::tests::save_instance_stores_secret_only_in_keychain ... ok
[INFO] [stdout] test storage::tests::secret_round_trip_preserves_private_key_path ... ok
[INFO] [stdout] test single_instance::tests::acquires_lock_after_stale_pid_file ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 62 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.09s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/xiic_ssh_mcp-022b99ad48dbd440)
[INFO] [stderr]    Doc-tests xiic_ssh_mcp
[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] [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" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966", kill_on_drop: false }`
[INFO] [stdout] 5edd9d8fc22c110b9f7e13a0abab1d313a2d031245e89de457d073deae63c966
