[INFO] cloning repository https://github.com/akiojin/unity-cli [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/akiojin/unity-cli" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakiojin%2Funity-cli", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakiojin%2Funity-cli'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ee799341b04a5fc5fab2cdeded83545eaeea60c3 [INFO] testing akiojin/unity-cli against master#562dee4820c458d823175268e41601d4c060588a for pr-154210 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakiojin%2Funity-cli" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/akiojin/unity-cli [INFO] finished tweaking git repo https://github.com/akiojin/unity-cli [INFO] tweaked toml for git repo https://github.com/akiojin/unity-cli written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/akiojin/unity-cli on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/akiojin/unity-cli 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 994f4f4a64361b43b49978fd9aa90f0ac76bb969a04afb98c53a864beb518573 [INFO] running `Command { std: "docker" "start" "-a" "994f4f4a64361b43b49978fd9aa90f0ac76bb969a04afb98c53a864beb518573", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "994f4f4a64361b43b49978fd9aa90f0ac76bb969a04afb98c53a864beb518573", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "994f4f4a64361b43b49978fd9aa90f0ac76bb969a04afb98c53a864beb518573", kill_on_drop: false }` [INFO] [stdout] 994f4f4a64361b43b49978fd9aa90f0ac76bb969a04afb98c53a864beb518573 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2d0e44b6124478ab74a0588777020c4345c005a764d06f417de6372dd7ad887f [INFO] running `Command { std: "docker" "start" "-a" "2d0e44b6124478ab74a0588777020c4345c005a764d06f417de6372dd7ad887f", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling regex-syntax v0.8.9 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling syn v2.0.116 [INFO] [stderr] Compiling rustls v0.23.36 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling anyhow v1.0.101 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling clap_builder v4.5.59 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling webpki-roots v0.26.11 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [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 tracing-attributes v0.1.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling clap v4.5.59 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling ureq v2.12.1 [INFO] [stderr] Compiling unity-cli v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 31s [INFO] running `Command { std: "docker" "inspect" "2d0e44b6124478ab74a0588777020c4345c005a764d06f417de6372dd7ad887f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2d0e44b6124478ab74a0588777020c4345c005a764d06f417de6372dd7ad887f", kill_on_drop: false }` [INFO] [stdout] 2d0e44b6124478ab74a0588777020c4345c005a764d06f417de6372dd7ad887f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a20688a69b7e7c0c6e374a9234873595f3e054f39d3554c94d9121f8d2aa96e3 [INFO] running `Command { std: "docker" "start" "-a" "a20688a69b7e7c0c6e374a9234873595f3e054f39d3554c94d9121f8d2aa96e3", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.4.1 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling tempfile v3.25.0 [INFO] [stderr] Compiling unity-cli v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 16.98s [INFO] running `Command { std: "docker" "inspect" "a20688a69b7e7c0c6e374a9234873595f3e054f39d3554c94d9121f8d2aa96e3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a20688a69b7e7c0c6e374a9234873595f3e054f39d3554c94d9121f8d2aa96e3", kill_on_drop: false }` [INFO] [stdout] a20688a69b7e7c0c6e374a9234873595f3e054f39d3554c94d9121f8d2aa96e3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3bfce2d770cfcd829065f81eb0d60a530fbdef3d09e0c329aad22b3e1d09715f [INFO] running `Command { std: "docker" "start" "-a" "3bfce2d770cfcd829065f81eb0d60a530fbdef3d09e0c329aad22b3e1d09715f", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/unity_cli-65605e76405f4d74) [INFO] [stdout] [INFO] [stdout] running 224 tests [INFO] [stdout] test app::runner::tests::init_tracing_accepts_verbose_levels ... ok [INFO] [stdout] test app::runner::tests::env_var_guard_restores_previous_value ... ok [INFO] [stdout] test app::runner::tests::load_params_defaults_to_empty_object ... ok [INFO] [stdout] test app::runner::tests::load_params_reads_inline_json ... ok [INFO] [stdout] test app::runner::tests::execute_tool_skips_mutating_tool_in_dry_run_mode ... ok [INFO] [stdout] test app::runner::tests::augment_command_stats_inserts_cli_snapshot ... ok [INFO] [stdout] test app::runner::tests::load_params_rejects_when_json_and_params_file_are_both_set ... ok [INFO] [stdout] test app::runner::tests::parse_external_tool_command_accepts_json_flag ... ok [INFO] [stdout] test app::runner::tests::load_params_reads_json_from_file ... ok [INFO] [stdout] test app::runner::tests::parse_external_tool_command_requires_values_for_flags ... ok [INFO] [stdout] test app::runner::tests::parse_external_tool_command_requires_tool_name ... ok [INFO] [stdout] test app::runner::tests::parse_json_object_accepts_object ... ok [INFO] [stdout] test app::runner::tests::parse_json_object_rejects_non_object ... ok [INFO] [stdout] test app::runner::tests::parse_ports_returns_empty_for_none ... ok [INFO] [stdout] test app::runner::tests::print_value_text_handles_string_and_object ... ok [INFO] [stdout] test app::runner::tests::parse_ports_rejects_invalid_values ... ok [INFO] [stdout] test app::runner::tests::run_with_cli_rejects_unknown_external_tool ... ok [INFO] [stdout] test app::runner::tests::parse_external_tool_command_rejects_unknown_flag ... ok [INFO] [stdout] test app::runner::tests::parse_ports_deduplicates_values ... ok [INFO] [stdout] test app::runner::tests::run_with_cli_requires_batch_input_source ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_add_component_payload ... ok [INFO] [stdout] test app::runner::tests::parse_external_tool_command_supports_equals_forms ... ok [INFO] [stdout] test app::runner::tests::run_with_cli_exercises_remote_command_error_paths ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_analyze_asset_dependencies_get_dependencies ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_addressables_manage_add_entry ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_build_index_output_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_create_animation_clip_payload ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_create_gameobject_with_vector_fields ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_create_sprite_atlas_payload ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_delete_gameobject_with_path_and_paths ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_execute_menu_item_get_available_menus ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_execute_menu_item_without_action ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_get_input_actions_state_with_asset_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_input_keyboard_batch_actions ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_load_scene_by_name ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_lsp_write_payload_with_path_alias ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_manage_layers_get_by_index ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_package_manager_list_action ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_profiler_start_payload ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_valid_payload ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_write_csharp_file_payload ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_addressables_analyze_dependencies_without_asset_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_addressables_manage_move_entry_without_target_group ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_analyze_asset_dependencies_get_dependencies_without_asset_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_analyze_asset_dependencies_invalid_action ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_analyze_screenshot_without_source ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_create_package_setting_without_value ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_create_animation_clip_without_sprite_paths ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_delete_gameobject_without_target ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_execute_menu_item_without_menu_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_invalid_animator_condition_mode ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_execute_menu_item_without_action_or_menu_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_invalid_sprite_atlas_filter_mode ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_load_scene_with_both_identifiers ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_manage_asset_database_move_without_to_path ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_manage_layers_add_without_layer_name ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_manage_layers_invalid_action ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_manage_selection_set_without_object_paths ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_manage_tools_activate_without_tool_name ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_manage_windows_focus_without_window_type ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_missing_required_property ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_package_manager_search_without_keyword ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_registry_config_add_scope_without_scope ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_remove_input_binding_without_selector ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_set_component_field_missing_required ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_unknown_field_for_clear_logs ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_unknown_property_when_schema_is_strict ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_rejects_unknown_run_tests_property ... ok [INFO] [stdout] test core::command_stats::tests::snapshot_groups_calls_by_tool_and_route ... ok [INFO] [stdout] test app::runner::tests::validate_tool_params_accepts_create_animator_controller_payload ... ok [INFO] [stdout] 2026-03-30T20:08:16.533961Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.534069Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.534247Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.534452Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.534492Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.535089Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.535711Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] test app::runner::tests::run_with_cli_batch_marks_skipped_items_in_dry_run_mode ... ok [INFO] [stdout] 2026-03-30T20:08:16.535980Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.536340Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.536592Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] test app::runner::tests::run_with_cli_handles_instances_and_daemon_commands_without_server ... ok [INFO] [stdout] 2026-03-30T20:08:16.537325Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.537596Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.537721Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] 2026-03-30T20:08:16.537942Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] test app::runner::tests::run_with_cli_supports_tool_schema_command ... ok [INFO] [stdout] 2026-03-30T20:08:16.539938Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] test app::runner::tests::run_with_cli_set_active_text_output_when_reachable ... ok [INFO] [stdout] test core::config::tests::default_host_returns_localhost_without_env ... ok [INFO] [stdout] test core::config::tests::default_port_returns_6400_without_env ... ok [INFO] [stdout] test core::config::tests::fails_when_removed_unityd_env_is_set ... ok [INFO] [stdout] test core::config::tests::default_timeout_returns_30000_without_env ... ok [INFO] [stdout] test core::config::tests::execution_context_uses_defaults ... ok [INFO] [stdout] test core::config::tests::empty_value_is_ignored ... ok [INFO] [stdout] test core::config::tests::returns_none_when_no_keys_set ... ok [INFO] [stdout] test core::config::tests::fails_when_legacy_alias_is_set ... ok [INFO] [stdout] test core::config::tests::u16_env_parses_correctly ... ok [INFO] [stdout] test core::config::tests::u16_env_rejects_zero ... ok [INFO] [stdout] test core::config::tests::u64_env_parses_correctly ... ok [INFO] [stdout] test core::config::tests::u64_env_rejects_zero ... ok [INFO] [stdout] test core::endpoint::tests::cli_override_wins_over_active_instance ... ok [INFO] [stdout] 2026-03-30T20:08:16.546290Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] test core::endpoint::tests::env_port_wins_when_no_cli_override ... ok [INFO] [stdout] test core::instances::tests::list_instances_adds_default_port_when_no_entries_exist ... ok [INFO] [stdout] 2026-03-30T20:08:16.546506Z DEBUG self-update failed: Failed to fetch unity-cli manifest from known repositories: akiojin/unity-cli: Failed to request https://api.github.com/repos/akiojin/unity-cli/releases/latest: https://api.github.com/repos/akiojin/unity-cli/releases/latest: Dns Failed: resolve dns name 'api.github.com:443': failed to lookup address information: Temporary failure in name resolution [INFO] [stdout] test core::instances::tests::parse_id_validates_shape ... ok [INFO] [stdout] test core::instances::tests::load_registry_reconstructs_missing_ids ... ok [INFO] [stdout] 2026-03-30T20:08:16.549023Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] test core::instances::tests::registry_path_uses_env_and_creates_parent_directory ... ok [INFO] [stdout] test core::managed_binaries::tests::ensure_latest_for_can_skip_remote_checks_in_tests ... ok [INFO] [stdout] test core::instances::tests::list_instances_reports_up_for_reachable_port ... ok [INFO] [stdout] test core::instances::tests::registry_round_trip_serialization_shape_is_supported ... ok [INFO] [stdout] test core::managed_binaries::tests::ensure_local_uses_existing_binary_without_download ... ok [INFO] [stdout] 2026-03-30T20:08:16.549509Z DEBUG connecting to 127.0.0.1:42351 at 127.0.0.1:42351 [INFO] [stdout] 2026-03-30T20:08:16.549531Z DEBUG connecting to 127.0.0.1:35287 at 127.0.0.1:35287 [INFO] [stdout] 2026-03-30T20:08:16.549563Z DEBUG connecting to 127.0.0.1:37009 at 127.0.0.1:37009 [INFO] [stdout] 2026-03-30T20:08:16.549597Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:40678, peer: 127.0.0.1:42351, fd: 16 }) [INFO] [stdout] 2026-03-30T20:08:16.549597Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:40424, peer: 127.0.0.1:35287, fd: 17 }) [INFO] [stdout] 2026-03-30T20:08:16.549623Z DEBUG sending request GET http://127.0.0.1:42351/ [INFO] [stdout] 2026-03-30T20:08:16.549665Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:37154, peer: 127.0.0.1:37009, fd: 13 }) [INFO] [stdout] 2026-03-30T20:08:16.549690Z DEBUG sending request GET http://127.0.0.1:37009/ [INFO] [stdout] 2026-03-30T20:08:16.549706Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:42351 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] 2026-03-30T20:08:16.549714Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:37009 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] 2026-03-30T20:08:16.549813Z DEBUG connecting to 127.0.0.1:38113 at 127.0.0.1:38113 [INFO] [stdout] 2026-03-30T20:08:16.549902Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:49790, peer: 127.0.0.1:38113, fd: 3 }) [INFO] [stdout] 2026-03-30T20:08:16.549927Z DEBUG sending request GET http://127.0.0.1:38113/ [INFO] [stdout] 2026-03-30T20:08:16.549952Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:38113 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] test core::instances::tests::set_active_fails_for_unreachable_instance ... ok [INFO] [stdout] 2026-03-30T20:08:16.550071Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.550294Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.550467Z DEBUG self-update skipped: last check within throttle window [INFO] [stdout] 2026-03-30T20:08:16.550851Z DEBUG connecting to 127.0.0.1:32999 at 127.0.0.1:32999 [INFO] [stdout] 2026-03-30T20:08:16.550952Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:51786, peer: 127.0.0.1:32999, fd: 19 }) [INFO] [stdout] 2026-03-30T20:08:16.550979Z DEBUG sending request GET http://127.0.0.1:32999/ [INFO] [stdout] 2026-03-30T20:08:16.551010Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:32999 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] Authorization: *** [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] 2026-03-30T20:08:16.551206Z DEBUG Body entirely buffered (length: 26) [INFO] [stdout] 2026-03-30T20:08:16.551206Z DEBUG Body entirely buffered (length: 21) [INFO] [stdout] 2026-03-30T20:08:16.551247Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:40678, peer: 127.0.0.1:42351, fd: 16 }) [INFO] [stdout] 2026-03-30T20:08:16.551251Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:49790, peer: 127.0.0.1:38113, fd: 3 }) [INFO] [stdout] 2026-03-30T20:08:16.551302Z DEBUG response 500 to GET http://127.0.0.1:42351/ [INFO] [stdout] 2026-03-30T20:08:16.551302Z DEBUG response 200 to GET http://127.0.0.1:38113/ [INFO] [stdout] 2026-03-30T20:08:16.549629Z DEBUG sending request GET http://127.0.0.1:35287/ [INFO] [stdout] 2026-03-30T20:08:16.551682Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:35287 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] 2026-03-30T20:08:16.551751Z DEBUG Body entirely buffered (length: 12) [INFO] [stdout] test app::runner::tests::run_with_cli_handles_local_tool_and_batch_paths ... ok [INFO] [stdout] 2026-03-30T20:08:16.551776Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:37154, peer: 127.0.0.1:37009, fd: 13 }) [INFO] [stdout] test core::managed_binaries::tests::get_json_parses_http_body ... ok [INFO] [stdout] 2026-03-30T20:08:16.551831Z DEBUG response 500 to GET http://127.0.0.1:37009/ [INFO] [stdout] 2026-03-30T20:08:16.551853Z DEBUG Body entirely buffered (length: 23) [INFO] [stdout] 2026-03-30T20:08:16.551881Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:40424, peer: 127.0.0.1:35287, fd: 17 }) [INFO] [stdout] 2026-03-30T20:08:16.551923Z DEBUG response 403 to GET http://127.0.0.1:35287/ [INFO] [stdout] 2026-03-30T20:08:16.552269Z DEBUG Body entirely buffered (length: 21) [INFO] [stdout] 2026-03-30T20:08:16.552295Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:51786, peer: 127.0.0.1:32999, fd: 19 }) [INFO] [stdout] 2026-03-30T20:08:16.552352Z DEBUG response 200 to GET http://127.0.0.1:32999/ [INFO] [stdout] test core::managed_binaries::tests::get_json_fails_with_status_and_body ... ok [INFO] [stdout] test core::managed_binaries::tests::sha256_file_matches_known_hash ... ok [INFO] [stdout] test core::managed_binaries::tests::get_response_includes_authorization_header ... ok [INFO] [stdout] test core::instances::tests::set_active_succeeds_for_reachable_instance_and_tracks_previous ... ok [INFO] [stdout] test core::managed_binaries::tests::tools_root_prefers_unity_cli_tools_root_env ... ok [INFO] [stdout] test core::managed_binaries::tests::read_local_version_returns_none_for_missing_or_blank_file ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_request_batch_round_trip ... ok [INFO] [stdout] test core::managed_binaries::tests::unity_cli_status_uses_managed_install_layout ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_call_error_classification ... ok [INFO] [stdout] test core::managed_binaries::tests::replace_file_atomic_overwrites_destination ... ok [INFO] [stdout] test core::runtime_paths::tests::daemon_dir_is_under_run_root ... ok [INFO] [stdout] test core::managed_binaries::tests::write_and_read_local_version_round_trip ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_request_ping_round_trip ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_request_stop_round_trip ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_response_round_trip ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_request_tool_round_trip ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_response_error_round_trip ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_response_round_trip_preserves_timing ... ok [INFO] [stdout] test daemon::unityd::tests::idle_timeout_default ... ok [INFO] [stdout] test daemon::unityd::tests::idle_timeout_env_override_and_invalid_values ... ok [INFO] [stdout] test daemon::unityd::tests::handle_request_and_stream_cover_tool_batch_and_json_errors ... ok [INFO] [stdout] test daemon::unityd::tests::pid_file_path_is_under_tools_dir ... ok [INFO] [stdout] test daemon::unityd::tests::daemon_request_status_round_trip ... ok [INFO] [stdout] 2026-03-30T20:08:16.801579Z DEBUG connecting to 127.0.0.1:42351 at 127.0.0.1:42351 [INFO] [stdout] 2026-03-30T20:08:16.801777Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:40690, peer: 127.0.0.1:42351, fd: 14 }) [INFO] [stdout] 2026-03-30T20:08:16.801818Z DEBUG sending request GET http://127.0.0.1:42351/ [INFO] [stdout] 2026-03-30T20:08:16.801851Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:42351 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] 2026-03-30T20:08:16.802003Z DEBUG connecting to 127.0.0.1:37009 at 127.0.0.1:37009 [INFO] [stdout] 2026-03-30T20:08:16.802072Z DEBUG Body entirely buffered (length: 21) [INFO] [stdout] 2026-03-30T20:08:16.802097Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:40690, peer: 127.0.0.1:42351, fd: 14 }) [INFO] [stdout] 2026-03-30T20:08:16.802149Z DEBUG response 200 to GET http://127.0.0.1:42351/ [INFO] [stdout] 2026-03-30T20:08:16.802184Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:37164, peer: 127.0.0.1:37009, fd: 5 }) [INFO] [stdout] 2026-03-30T20:08:16.802213Z DEBUG sending request GET http://127.0.0.1:37009/ [INFO] [stdout] 2026-03-30T20:08:16.802239Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:37009 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] test core::managed_binaries::tests::get_json_retries_transient_server_error ... ok [INFO] [stdout] 2026-03-30T20:08:16.802450Z DEBUG Body entirely buffered (length: 12) [INFO] [stdout] 2026-03-30T20:08:16.802478Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:37164, peer: 127.0.0.1:37009, fd: 5 }) [INFO] [stdout] 2026-03-30T20:08:16.802535Z DEBUG response 500 to GET http://127.0.0.1:37009/ [INFO] [stdout] 2026-03-30T20:08:17.302821Z DEBUG connecting to 127.0.0.1:37009 at 127.0.0.1:37009 [INFO] [stdout] 2026-03-30T20:08:17.303104Z DEBUG created stream: Stream(TcpStream { addr: 127.0.0.1:37180, peer: 127.0.0.1:37009, fd: 5 }) [INFO] [stdout] 2026-03-30T20:08:17.303185Z DEBUG sending request GET http://127.0.0.1:37009/ [INFO] [stdout] 2026-03-30T20:08:17.303269Z DEBUG writing prelude: GET / HTTP/1.1 [INFO] [stdout] Host: 127.0.0.1:37009 [INFO] [stdout] Accept: */* [INFO] [stdout] User-Agent: unity-cli [INFO] [stdout] accept-encoding: gzip [INFO] [stdout] 2026-03-30T20:08:17.303667Z DEBUG Body entirely buffered (length: 12) [INFO] [stdout] 2026-03-30T20:08:17.303914Z DEBUG dropping stream: Stream(TcpStream { addr: 127.0.0.1:37180, peer: 127.0.0.1:37009, fd: 5 }) [INFO] [stdout] 2026-03-30T20:08:17.304442Z DEBUG response 500 to GET http://127.0.0.1:37009/ [INFO] [stdout] test core::managed_binaries::tests::get_response_reports_http_status_errors ... ok [INFO] [stdout] test daemon::unityd::tests::serve_forever_exits_after_idle_timeout ... ok [INFO] [stdout] test lsp::client::tests::collect_document_symbols_flattens_nested_symbols ... ok [INFO] [stdout] test daemon::unityd::tests::start_background_returns_already_running_when_status_reports_running ... ok [INFO] [stdout] test daemon::unityd::tests::tools_dir_creates_directory ... ok [INFO] [stdout] test daemon::unityd::tests::status_stop_and_ping_handle_response_shapes ... ok [INFO] [stdout] test daemon::unityd::tests::socket_path_is_under_tools_dir ... ok [INFO] [stdout] test lsp::client::tests::get_apply_defaults_to_false ... ok [INFO] [stdout] test lsp::client::tests::id_matches_accepts_number_and_string_id ... ok [INFO] [stdout] test lsp::client::tests::normalize_lsp_write_result_adds_contract_fields ... ok [INFO] [stdout] test lsp::client::tests::normalize_rel_path_accepts_assets_packages_and_library ... ok [INFO] [stdout] test lsp::client::tests::normalize_rel_path_extracts_supported_prefix_from_absolute_like_input ... ok [INFO] [stdout] test lsp::client::tests::normalize_rel_path_rejects_parent_traversal ... ok [INFO] [stdout] test lsp::client::tests::path_matches_scope_filters_paths ... ok [INFO] [stdout] test lsp::client::tests::kind_from_lsp_maps_known_values ... ok [INFO] [stdout] test daemon::unityd::tests::try_call_tool_and_batch_map_daemon_errors ... ok [INFO] [stdout] test daemon::unityd::tests::try_call_tool_with_timing_returns_daemon_timing ... ok [INFO] [stdout] test lsp::client::tests::remove_symbol_request_includes_fail_on_references_when_set ... ok [INFO] [stdout] test lsp::client::tests::remove_symbol_request_omits_fail_on_references_when_unset ... ok [INFO] [stdout] test lsp::client::tests::require_helpers_validate_expected_fields ... ok [INFO] [stdout] test daemon::unityd::tests::write_pid_and_cleanup_use_temp_home ... ok [INFO] [stdout] test lsp::client::tests::retryable_session_error_detects_transport_failures ... ok [INFO] [stdout] test lsp::client::tests::retryable_session_error_ignores_argument_errors ... ok [INFO] [stdout] test lsp::client::tests::to_project_relative_or_raw_returns_relative_for_absolute_under_root ... ok [INFO] [stdout] test lsp::client::tests::uri_and_ref_path_helpers_resolve_project_relative_paths ... ok [INFO] [stdout] test lsp::client::tests::uri_to_rel_path_rejects_non_file_uris ... ok [INFO] [stdout] test lsp::daemon::tests::daemon_idle_timeout_uses_env_override ... ok [INFO] [stdout] test lsp::daemon::tests::handle_request_handles_ping_status_and_stop ... ok [INFO] [stdout] test lsp::daemon::tests::handle_stream_rejects_invalid_json ... ok [INFO] [stdout] test lsp::daemon::tests::handle_stream_round_trip_ping_request ... ok [INFO] [stdout] test lsp::daemon::tests::is_would_block_checks_error_kind ... ok [INFO] [stdout] test lsp::client::tests::read_message_returns_none_when_stream_is_empty ... ok [INFO] [stdout] test lsp::client::tests::read_message_parses_content_length_framed_json ... ok [INFO] [stdout] test lsp::client::tests::read_message_rejects_missing_content_length_header ... ok [INFO] [stdout] test lsp::daemon::tests::handle_request_tool_branch_returns_error_payload_on_lsp_failure ... ok [INFO] [stdout] test lsp::client::tests::execute_direct_covers_core_lsp_read_tools ... ok [INFO] [stdout] test lsp::daemon::tests::write_all_with_retry_rejects_zero_byte_progress ... ok [INFO] [stdout] test lsp::daemon::tests::ping_reports_invalid_json_response ... ok [INFO] [stdout] test tooling::local_tools::tests::build_index_and_find_symbol_roundtrip ... ok [INFO] [stdout] test tooling::local_tools::tests::collect_cs_files_and_index_helpers_cover_readiness_branches ... ok [INFO] [stdout] test tooling::local_tools::tests::create_class_generates_simple_class ... ok [INFO] [stdout] test tooling::local_tools::tests::create_class_rejects_existing_file ... ok [INFO] [stdout] test tooling::local_tools::tests::create_class_rejects_invalid_name ... ok [INFO] [stdout] test tooling::local_tools::tests::create_class_with_namespace_and_inherits ... ok [INFO] [stdout] test lsp::daemon::tests::ping_status_stop_and_call_tool_handle_daemon_responses ... ok [INFO] [stdout] test lsp::daemon::tests::serve_forever_accepts_stop_and_cleans_files ... ok [INFO] [stdout] test tooling::local_tools::tests::extract_symbols_from_text_covers_major_symbol_kinds ... ok [INFO] [stdout] test tooling::local_tools::tests::find_refs_supports_cursor_paging ... ok [INFO] [stdout] test tooling::local_tools::tests::find_symbol_returns_index_not_ready_before_build ... ok [INFO] [stdout] test tooling::local_tools::tests::helper_comment_and_snippet_processing_works ... ok [INFO] [stdout] test tooling::local_tools::tests::helper_symbol_and_scope_predicates_work ... ok [INFO] [stdout] test tooling::local_tools::tests::helper_path_normalization_and_resolution_cover_edge_cases ... ok [INFO] [stdout] test tooling::local_tools::tests::get_symbols_extracts_class_and_method ... ok [INFO] [stdout] test tooling::local_tools::tests::list_packages_lists_package_dirs ... ok [INFO] [stdout] test lsp::daemon::tests::start_background_returns_already_running_when_status_is_true ... ok [INFO] [stdout] test lsp::daemon::tests::write_pid_file_and_cleanup_manage_files_under_tools_root ... ok [INFO] [stdout] test tooling::local_tools::tests::lsp_write_tools_require_lsp_mode ... ok [INFO] [stdout] test tooling::local_tools::tests::requires_unityengine_using_only_for_monobehaviour ... ok [INFO] [stdout] test tooling::tool_catalog::tests::addressables_analyze_schema_uses_action_specific_variants ... ok [INFO] [stdout] test tooling::tool_catalog::tests::addressables_manage_schema_has_manage_actions ... ok [INFO] [stdout] test tooling::tool_catalog::tests::analyze_asset_dependencies_schema_has_expected_actions ... ok [INFO] [stdout] test tooling::tool_catalog::tests::build_index_schema_allows_output_path ... ok [INFO] [stdout] test tooling::tool_catalog::tests::capture_video_start_schema_restricts_mode_and_format ... ok [INFO] [stdout] test tooling::tool_catalog::tests::clear_logs_schema_is_strict_empty_object ... ok [INFO] [stdout] test tooling::tool_catalog::tests::create_animation_clip_schema_requires_clip_and_sprite_paths ... ok [INFO] [stdout] test lsp::daemon::tests::write_all_with_retry_handles_would_block_and_partial_writes ... ok [INFO] [stdout] test tooling::tool_catalog::tests::create_prefab_schema_allows_template_mode_without_source_object ... ok [INFO] [stdout] test tooling::tool_catalog::tests::create_animator_controller_schema_is_strict_and_nested ... ok [INFO] [stdout] test tooling::tool_catalog::tests::create_sprite_atlas_schema_is_strict_and_nested ... ok [INFO] [stdout] test tooling::tool_catalog::tests::csharp_file_write_schemas_are_local_and_strict ... ok [INFO] [stdout] test tooling::tool_catalog::tests::delete_gameobject_schema_uses_any_of_targets ... ok [INFO] [stdout] test tooling::tool_catalog::tests::execute_menu_item_schema_supports_default_and_action_variants ... ok [INFO] [stdout] test tooling::tool_catalog::tests::get_gameobject_details_schema_uses_any_of_identifiers ... ok [INFO] [stdout] test tooling::tool_catalog::tests::input_keyboard_schema_uses_any_of_for_action_or_actions ... ok [INFO] [stdout] test tooling::tool_catalog::tests::load_scene_schema_uses_one_of_identifier_variants ... ok [INFO] [stdout] test tooling::tool_catalog::tests::known_tool_lookup_works ... ok [INFO] [stdout] test tooling::tool_catalog::tests::local_executor_tools_are_marked ... ok [INFO] [stdout] test tooling::tool_catalog::tests::manage_asset_database_schema_uses_action_specific_variants ... ok [INFO] [stdout] test tooling::tool_catalog::tests::manage_layers_schema_requires_action_enum ... ok [INFO] [stdout] test tooling::tool_catalog::tests::modify_gameobject_schema_requires_path ... ok [INFO] [stdout] test tooling::tool_catalog::tests::package_manager_schema_has_required_action ... ok [INFO] [stdout] test tooling::tool_catalog::tests::ping_schema_is_strict_object ... ok [INFO] [stdout] test tooling::tool_catalog::tests::rename_symbol_schema_is_strict_and_requires_name_path ... ok [INFO] [stdout] test tooling::tool_catalog::tests::run_tests_schema_allows_test_mode_enum ... ok [INFO] [stdout] test tooling::tool_catalog::tests::set_component_field_schema_requires_component_and_field ... ok [INFO] [stdout] test tooling::tool_catalog::tests::tool_catalog_keeps_manifest_parity_count ... ok [INFO] [stdout] test tooling::tool_catalog::tests::tool_catalog_avoids_default_params_schema_for_known_tools ... ok [INFO] [stdout] test tooling::tool_catalog::tests::tool_specs_cover_catalog ... ok [INFO] [stdout] test unity::transport::tests::call_tool_returns_result_on_success ... ok [INFO] [stdout] test unity::transport::tests::call_tool_returns_error_on_failure_response ... ok [INFO] [stdout] test unity::transport::tests::normalize_response_handles_success_and_error_shapes ... ok [INFO] [stdout] test unity::transport::tests::call_tool_with_timing_reports_non_negative_durations ... ok [INFO] [stdout] test unity::transport::tests::parse_embedded_json_keeps_plain_strings ... ok [INFO] [stdout] test unity::transport::tests::parse_json_accepts_trimmed_json ... ok [INFO] [stdout] test unity::transport::tests::parse_json_rejects_empty_and_non_utf8_payload ... ok [INFO] [stdout] test tooling::local_tools::tests::read_returns_file_slice ... ok [INFO] [stdout] test tooling::local_tools::tests::search_finds_matching_lines ... ok [INFO] [stdout] test tooling::local_tools::tests::update_index_refreshes_symbol_names ... ok [INFO] [stdout] test tooling::tool_catalog::tests::action_enum_schemas_use_composite_variants ... ok [INFO] [stdout] test lsp::client::tests::execute_direct_covers_lsp_write_tools ... ok [INFO] [stdout] test lsp::client::tests::maybe_execute_mode_gate_and_tool_filter_behave_as_expected ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 224 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.11s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "3bfce2d770cfcd829065f81eb0d60a530fbdef3d09e0c329aad22b3e1d09715f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3bfce2d770cfcd829065f81eb0d60a530fbdef3d09e0c329aad22b3e1d09715f", kill_on_drop: false }` [INFO] [stdout] 3bfce2d770cfcd829065f81eb0d60a530fbdef3d09e0c329aad22b3e1d09715f