[INFO] cloning repository https://github.com/inou/nrgize-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/inou/nrgize-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finou%2Fnrgize-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finou%2Fnrgize-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aeeacb1f1cd1e989a2487f283884ee4d4c914e02
[INFO] testing inou/nrgize-rs against 1.97.0-beta.6 for beta-1.98-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finou%2Fnrgize-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/inou/nrgize-rs
[INFO] finished tweaking git repo https://github.com/inou/nrgize-rs
[INFO] tweaked toml for git repo https://github.com/inou/nrgize-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/inou/nrgize-rs on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/inou/nrgize-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded utf8-zero v0.8.1
[INFO] [stderr]   Downloaded const-random v0.1.18
[INFO] [stderr]   Downloaded normalize-line-endings v0.3.0
[INFO] [stderr]   Downloaded libredox v0.1.18
[INFO] [stderr]   Downloaded no-std-compat v0.4.1
[INFO] [stderr]   Downloaded predicates-core v1.0.10
[INFO] [stderr]   Downloaded difflib v0.4.0
[INFO] [stderr]   Downloaded fd-lock v4.0.4
[INFO] [stderr]   Downloaded const-random-macro v0.1.16
[INFO] [stderr]   Downloaded float-cmp v0.10.0
[INFO] [stderr]   Downloaded wait-timeout v0.2.1
[INFO] [stderr]   Downloaded predicates-tree v1.0.13
[INFO] [stderr]   Downloaded termtree v0.5.1
[INFO] [stderr]   Downloaded predicates v3.1.4
[INFO] [stderr]   Downloaded tiny-keccak v2.0.2
[INFO] [stderr]   Downloaded assert_cmd v2.2.2
[INFO] [stderr]   Downloaded rhai_codegen v3.2.0
[INFO] [stderr]   Downloaded thin-vec v0.2.18
[INFO] [stderr]   Downloaded ureq-proto v0.6.0
[INFO] [stderr]   Downloaded webpki-roots v1.0.8
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.54
[INFO] [stderr]   Downloaded ureq v3.3.0
[INFO] [stderr]   Downloaded wasip2 v1.0.4+wasi-0.2.12
[INFO] [stderr]   Downloaded regex v1.13.0
[INFO] [stderr]   Downloaded zerocopy v0.8.54
[INFO] [stderr]   Downloaded rhai v1.25.1
[INFO] [stderr]   Downloaded bstr v1.12.3
[INFO] [stderr]   Downloaded rustls v0.23.41
[INFO] [stderr]   Downloaded regex-syntax v0.8.11
[INFO] [stderr]   Downloaded regex-automata v0.4.15
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb
[INFO] running `Command { std: "docker" "start" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", 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" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", 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" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling cc v1.2.67
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling rustls-pki-types v1.15.0
[INFO] [stderr]    Compiling zerocopy v0.8.54
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling smartstring v1.0.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling rustls v0.23.41
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling const-random v0.1.18
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling ureq-proto v0.6.0
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling webpki-roots v1.0.8
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling rhai_codegen v3.2.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling thin-vec v0.2.18
[INFO] [stderr]    Compiling rhai v1.25.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling ureq v3.3.0
[INFO] [stderr]    Compiling nrg v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 03s
[INFO] running `Command { std: "docker" "inspect" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", 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" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling assert_cmd v2.2.2
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling regex-automata v0.4.15
[INFO] [stderr]    Compiling regex v1.13.0
[INFO] [stderr]    Compiling bstr v1.12.3
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling nrg v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 47.16s
[INFO] running `Command { std: "docker" "inspect" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", 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" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/nrg-d720781382c13062)
[INFO] [stdout] 
[INFO] [stdout] running 347 tests
[INFO] [stdout] test audit::tests::read_all_missing_file_is_empty ... ok
[INFO] [stdout] test cli::app::tests::pick_host_defaults_to_the_only_recorded_host ... ok
[INFO] [stdout] test cli::app::tests::pick_host_errors_on_no_hosts ... ok
[INFO] [stdout] test cli::app::tests::build_remote_cmd_interactive_adds_it_flag ... ok
[INFO] [stdout] test cli::app::tests::pick_host_explicit_wins_even_if_not_recorded ... ok
[INFO] [stdout] test audit::tests::read_all_skips_unparseable_lines_instead_of_failing ... ok
[INFO] [stdout] test cli::app::tests::ssh_extra_args_interactive_requests_a_tty ... ok
[INFO] [stdout] test cli::doctor::tests::hosts_from_store_empty_when_nothing_deployed ... ok
[INFO] [stdout] test cli::doctor::tests::hosts_from_store_collects_across_services_deduped_and_sorted ... ok
[INFO] [stdout] test cli::app::tests::ssh_extra_args_non_interactive_sets_batch_mode_so_it_cannot_hang_on_a_prompt ... ok
[INFO] [stdout] test cli::doctor::tests::images_by_host_ignores_a_service_with_no_recorded_image ... ok
[INFO] [stdout] test cli::doctor::tests::images_by_host_collects_only_images_for_the_requested_hosts ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_checks_registry_auth_for_every_image_when_runtime_is_docker ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_ignores_a_leading_blank_line_in_runtime_output ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_reports_a_real_registry_auth_failure_with_its_reason ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_reachable_but_no_runtime_found ... ok
[INFO] [stdout] test cli::app::tests::pick_host_errors_on_multiple_hosts_without_explicit_choice ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_skips_registry_check_when_the_runtime_is_not_docker ... ok
[INFO] [stdout] test cli::doctor::tests::probe_hosts_preserves_input_order_regardless_of_completion_order ... ok
[INFO] [stdout] test cli::doctor::tests::resolve_hosts_explicit_wins_over_state ... ok
[INFO] [stdout] test cli::init::tests::every_template_source_contains_the_exact_recipe_import_line ... ok
[INFO] [stdout] test cli::init::tests::rendered_swaps_the_recipe_import_to_the_embedded_stdlib ... ok
[INFO] [stdout] test cli::lock::tests::combined_output_concatenates_stdout_then_stderr ... ok
[INFO] [stdout] test cli::lock::tests::first_reason_falls_back_on_entirely_blank_stderr ... ok
[INFO] [stdout] test cli::app::tests::build_remote_cmd_defaults_to_sh_non_interactive ... ok
[INFO] [stdout] test cli::app::tests::build_remote_cmd_quotes_each_arg_defending_against_injection ... ok
[INFO] [stdout] test cli::lock::tests::first_reason_picks_the_first_nonblank_line ... ok
[INFO] [stdout] test cli::lock::tests::read_holder_falls_back_when_the_file_is_missing_or_unreadable ... ok
[INFO] [stdout] test cli::lock::tests::lock_dir_matches_the_stdlibs_own_convention ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_reports_reachable_with_runtime_found ... ok
[INFO] [stdout] test audit::tests::audit_log_is_written_0600 ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_reports_unreachable_and_skips_the_runtime_round_trip ... ok
[INFO] [stdout] test cli::doctor::tests::probe_host_skips_registry_check_when_no_images_are_given ... ok
[INFO] [stdout] test cli::lock::tests::read_holder_returns_the_files_contents_when_readable ... ok
[INFO] [stdout] test cli::logs::tests::build_remote_cmd_defaults_to_tail_100_no_follow ... ok
[INFO] [stdout] test cli::logs::tests::build_remote_cmd_quotes_container_name ... ok
[INFO] [stdout] test cli::logs::tests::build_remote_cmd_follow_adds_f_flag ... ok
[INFO] [stdout] test cli::logs::tests::build_remote_cmd_zero_lines_means_tail_all ... ok
[INFO] [stdout] test cli::logs::tests::drain_lines_survives_emit_erroring_on_every_line ... ok
[INFO] [stdout] test cli::remove::tests::purge_state_without_globals_keeps_the_shared_keys_for_hosts_still_deployed ... ok
[INFO] [stdout] test cli::logs::tests::ssh_stream_command_sets_keepalive_options ... ok
[INFO] [stdout] test cli::logs::tests::drain_lines_keeps_reading_past_invalid_utf8 ... ok
[INFO] [stdout] test cli::remove::tests::remove_container_distinguishes_ssh_transport_failure_from_a_docker_error ... ok
[INFO] [stdout] test cli::remove::tests::purge_state_with_globals_clears_everything_removed ... ok
[INFO] [stdout] test cli::logs::tests::drain_lines_splits_on_newlines_and_strips_crlf ... ok
[INFO] [stdout] test cli::remove::tests::remove_container_reports_a_real_docker_failure ... ok
[INFO] [stdout] test cli::remove::tests::remove_container_succeeds_on_a_clean_removal ... ok
[INFO] [stdout] test audit::tests::append_then_read_all_round_trips_in_order ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::gitignore_covers_key_false_when_gitignore_is_missing_or_silent_on_it ... ok
[INFO] [stdout] test cli::remove::tests::remove_container_treats_already_absent_as_success ... ok
[INFO] [stdout] test cli::remove::tests::remove_container_treats_podmans_lowercase_wording_as_absent_too ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::gitignore_covers_key_recognizes_a_globbed_line ... ok
[INFO] [stdout] test cli::remove::tests::remove_container_quotes_the_container_name_defending_against_injection ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::gitignore_covers_key_recognizes_a_rooted_line ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::gitignore_covers_key_ignores_comments_and_blank_lines ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::gitignore_covers_key_recognizes_a_bare_line ... ok
[INFO] [stdout] test cli::setup::tests::first_reason_skips_leading_blank_lines ... ok
[INFO] [stdout] test cli::setup::tests::install_docker_reports_a_real_install_failure ... ok
[INFO] [stdout] test cli::setup::tests::install_docker_succeeds_on_a_clean_install ... ok
[INFO] [stdout] test cli::setup::tests::first_reason_falls_back_when_everything_is_blank ... ok
[INFO] [stdout] test cli::setup::tests::probe_host_reports_unreachable_and_skips_the_runtime_round_trip ... ok
[INFO] [stdout] test cli::setup::tests::probe_host_reports_reachable_with_runtime_found ... ok
[INFO] [stdout] test cli::status::tests::parses_running_and_healthy ... ok
[INFO] [stdout] test cli::setup::tests::probe_host_reachable_but_no_runtime_found ... ok
[INFO] [stdout] test cli::setup::tests::install_docker_distinguishes_ssh_transport_failure_from_a_real_install_failure ... ok
[INFO] [stdout] test cli::setup::tests::probe_hosts_preserves_input_order_regardless_of_completion_order ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::in_git_worktree_false_outside_any_repo ... ok
[INFO] [stdout] test cli::status::tests::parses_running_unhealthy ... ok
[INFO] [stdout] test cli::status::tests::parses_running_without_healthcheck ... ok
[INFO] [stdout] test cli::status::tests::parses_stopped ... ok
[INFO] [stdout] test cli::status::tests::probe_container_builds_one_quoted_ssh_call ... ok
[INFO] [stdout] test cli::status::tests::reachable_host_missing_container_is_not_deployed_not_unreachable ... ok
[INFO] [stdout] test cli::status::tests::ssh_level_failure_exit_255_is_unreachable ... ok
[INFO] [stdout] test cli::secrets::gitignore_warning_tests::in_git_worktree_true_inside_a_repo_and_from_a_nested_subdirectory ... ok
[INFO] [stdout] test engine::builtins::exec::tests::ssh_probe_reads_through_runner ... ok
[INFO] [stdout] test engine::builtins::exec::tests::trace_redacts_registered_secret ... ok
[INFO] [stdout] test engine::builtins::exec::tests::write_remote_records_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::exec::tests::write_remote_uses_stdin_not_argv ... ok
[INFO] [stdout] test engine::builtins::exec::tests::ssh_exec_stdin_keeps_payload_off_argv ... ok
[INFO] [stdout] test engine::builtins::exec::tests::interpolated_secret_is_rejected_before_executing ... ok
[INFO] [stdout] test engine::builtins::exec::tests::ssh_exec_all_reports_per_host_failure_with_correct_attribution ... ok
[INFO] [stdout] test engine::builtins::exec::tests::ssh_exec_runs_through_runner_and_returns_ok ... ok
[INFO] [stdout] test engine::builtins::exec::tests::dry_run_records_instead_of_executing ... ok
[INFO] [stdout] test engine::builtins::exec::tests::ssh_exec_all_rejects_non_string_host ... ok
[INFO] [stdout] test engine::builtins::exec::tests::ssh_exec_all_fans_out_to_every_host ... ok
[INFO] [stdout] test engine::builtins::http::tests::headers_argument_rejects_a_non_string_value_and_names_the_offending_key ... ok
[INFO] [stdout] test engine::builtins::http::tests::headers_argument_rejects_a_non_map ... ok
[INFO] [stdout] test engine::builtins::http::tests::a_secret_valued_header_is_never_written_to_the_plan_log_in_plaintext ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_builtins_register ... ok
[INFO] [stdout] test engine::builtins::http::tests::headers_argument_rejects_a_bare_secret_with_a_friendly_type_name ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_get_probes_for_real_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_get_with_headers_still_probes_for_real_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::http::tests::every_write_verb_short_circuits_under_dry_run ... ok
[INFO] [stdout] test engine::builtins::http::tests::a_caller_supplied_content_type_replaces_the_default_instead_of_duplicating_it ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_all_registers_and_dry_runs_cleanly ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_all_rejects_a_malformed_element_naming_the_index ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_delete_sends_its_header_with_no_body_and_reads_the_response ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_get_extracts_status_and_body_on_a_real_successful_response ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_get_extracts_status_and_body_on_a_real_5xx_response_instead_of_a_transport_error ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_get_with_a_custom_header_actually_sends_it ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_all_isolates_a_single_request_failure_from_the_rest ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_all_preserves_input_order_even_when_the_first_request_finishes_last ... ok
[INFO] [stdout] test engine::builtins::http::tests::sim_http_healthy_short_circuits_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::sim::tests::dry_run_container_running_seeds_from_one_real_probe ... ok
[INFO] [stdout] test engine::builtins::sim::tests::dry_run_tolerates_an_unreachable_host_and_notes_it ... ok
[INFO] [stdout] test engine::builtins::sim::tests::is_dry_run_builtin_reflects_mode ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_container_healthy_probes_exactly_once_no_internal_retry ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_container_running_probes_via_runner ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_docker_run_calls_the_runner ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_image_id_recognizes_podmans_absent_image_wording ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_does_not_throw_on_a_plain_exit_128 ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_exhausted_scan_message_reports_the_correct_upper_bound_at_the_highest_base ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_succeeds_at_the_highest_base_that_still_fits_entirely_in_u16 ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_a_clear_error_instead_of_silently_scanning_one_port_when_base_would_overflow_u16 ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_at_exactly_the_lowest_possible_signal_kill_code_129 ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_on_a_local_spawn_failure_instead_of_treating_every_port_as_free ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_on_a_signal_killed_nc_instead_of_treating_every_port_as_free ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_all_short_circuits_every_element_under_dry_run_with_no_listener_contacted ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_on_an_ssh_transport_failure_instead_of_treating_every_port_as_free ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_when_nc_is_missing_instead_of_treating_every_port_as_free ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_pick_port_throws_when_all_busy ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_probe_failure_throws_instead_of_reporting_absent ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_probe_absent_container_reports_not_running ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_probe_ignores_a_stale_persisted_runtime_from_a_previous_run ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_probe_honors_configured_runtime ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_probe_local_spawn_failure_throws_instead_of_reporting_absent ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_probe_missing_cli_throws_instead_of_reporting_absent ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_wait_port_probes_exactly_once_no_internal_retry ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_wait_port_throws_on_a_signal_killed_nc ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_wait_port_throws_when_nc_is_missing ... ok
[INFO] [stdout] test engine::builtins::sim::tests::live_wait_port_throws_on_an_ssh_transport_failure ... ok
[INFO] [stdout] test engine::builtins::sim::tests::pick_port_is_deterministic_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::sim::tests::proxy_switch_stores_target_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::sim::tests::promote_rename_makes_canonical_running_and_old_gone ... ok
[INFO] [stdout] test engine::builtins::sim::tests::stubbed_run_makes_container_running_and_healthy_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::sim::tests::remove_clears_container_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_all_runs_requests_concurrently_not_sequentially ... ok
[INFO] [stdout] test engine::builtins::state::tests::has_state_reports_presence ... ok
[INFO] [stdout] test engine::builtins::sim::tests::wait_port_agrees_with_stubbed_run_in_dry_run ... ok
[INFO] [stdout] test engine::builtins::state::tests::dry_run_state_plan_is_redacted ... ok
[INFO] [stdout] test engine::builtins::state::tests::nrg_dest_reports_the_active_destination ... ok
[INFO] [stdout] test engine::builtins::state::tests::nrg_dest_reports_default_when_no_destination_is_set ... ok
[INFO] [stdout] test engine::builtins::state::tests::session_get_absent_is_unit ... ok
[INFO] [stdout] test engine::builtins::state::tests::session_set_never_touches_disk ... ok
[INFO] [stdout] test engine::builtins::state::tests::state_get_absent_is_unit ... ok
[INFO] [stdout] test engine::builtins::state::tests::session_set_get_has_roundtrip_in_script ... ok
[INFO] [stdout] test engine::builtins::util::tests::env_or_returns_default_when_unset ... ok
[INFO] [stdout] test engine::builtins::util::tests::join_concatenates_string_elements_with_separator ... ok
[INFO] [stdout] test engine::builtins::util::tests::join_handles_empty_and_single ... ok
[INFO] [stdout] test engine::builtins::state::tests::set_get_del_roundtrip_in_script ... ok
[INFO] [stdout] test engine::builtins::util::tests::join_stringifies_non_string_elements ... ok
[INFO] [stdout] test engine::builtins::util::tests::json_string_escapes_quotes ... ok
[INFO] [stdout] test engine::builtins::util::tests::nrg_env_throws_when_unset ... ok
[INFO] [stdout] test engine::context::tests::ctx_defaults_to_live_with_ephemeral_state ... ok
[INFO] [stdout] test engine::context::tests::dry_constructor_sets_dry_run ... ok
[INFO] [stdout] test engine::context::tests::sim_handle_is_shared_through_the_arc ... ok
[INFO] [stdout] test engine::builtins::util::tests::url_encode_escapes_reserved_chars ... ok
[INFO] [stdout] test engine::builtins::util::tests::to_from_json_round_trips_a_config_map ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_patch_sends_its_body_and_a_custom_header_and_extracts_a_real_response ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_post_sends_its_body_and_extracts_a_real_response ... ok
[INFO] [stdout] test engine::builtins::http::tests::http_put_sends_its_body_and_a_custom_header_and_extracts_a_real_response ... ok
[INFO] [stdout] test engine::builtins::http::tests::every_new_verb_surfaces_a_real_non_2xx_status_and_body_instead_of_a_transport_error ... ok
[INFO] [stdout] test engine::eval::tests::caddy_proxy_boot_throws_when_the_config_write_fails ... ok
[INFO] [stdout] test engine::builtins::http::tests::sim_http_healthy_honors_a_caller_supplied_timeout_instead_of_the_fixed_30s ... ok
[INFO] [stdout] test engine::eval::tests::caddy_proxy_boot_throws_when_the_image_pull_fails ... ok
[INFO] [stdout] test engine::eval::tests::accessory_run_removes_a_stopped_but_present_container_before_starting ... ok
[INFO] [stdout] test engine::eval::tests::a_previous_runs_persisted_runtime_choice_does_not_leak_into_a_later_run ... ok
[INFO] [stdout] test engine::eval::tests::deploy_acquires_and_releases_the_cross_machine_lock_on_success ... ok
[INFO] [stdout] test engine::eval::tests::deploy_does_not_protect_a_previous_versions_tag_from_a_different_repo ... ok
[INFO] [stdout] test engine::eval::tests::deploy_protects_the_previous_versions_tag_but_only_when_it_is_the_same_repo ... ok
[INFO] [stdout] test engine::eval::tests::deploy_falls_back_to_the_container_port_when_no_old_container_is_running_either ... ok
[INFO] [stdout] test engine::eval::tests::accessory_run_succeeds_when_the_container_is_still_running_after_starting ... ok
[INFO] [stdout] test engine::eval::tests::accessory_run_throws_when_the_container_exits_immediately_after_starting ... ok
[INFO] [stdout] test engine::eval::tests::deploy_refuses_when_the_lock_is_already_held ... ok
[INFO] [stdout] test engine::eval::tests::docker_cleanup_reports_failure_when_container_prune_fails_even_if_image_prune_succeeds ... ok
[INFO] [stdout] test engine::eval::tests::deploy_throws_when_old_container_is_running_but_no_port_state_is_recorded ... ok
[INFO] [stdout] test engine::eval::tests::deploy_releases_the_lock_even_when_a_later_step_fails ... ok
[INFO] [stdout] test engine::eval::tests::docker_prune_old_images_reports_failure_without_guessing_when_listing_fails ... ok
[INFO] [stdout] test engine::eval::tests::deploy_wires_keep_images_through_to_docker_prune_old_images_with_the_right_protect_tags ... ok
[INFO] [stdout] test engine::eval::tests::deploy_with_keep_images_unset_never_calls_docker_prune_old_images ... ok
[INFO] [stdout] test engine::eval::tests::docker_network_create_all_throws_naming_the_host_on_a_real_failure ... ok
[INFO] [stdout] test engine::eval::tests::deploy_with_skip_lock_never_touches_the_cross_machine_lock ... ok
[INFO] [stdout] test engine::eval::tests::deploy_re_persists_the_actual_runtime_it_used_even_without_set_runtime ... ok
[INFO] [stdout] test engine::eval::tests::docker_network_create_treats_already_exists_as_success ... ok
[INFO] [stdout] test engine::eval::tests::docker_prune_old_images_keeps_the_newest_n_and_never_removes_protected_tags ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_accepts_a_non_string_env_value ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_once_refuses_an_env_value_containing_a_newline ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_accepts_a_normal_env_value_unaffected_by_the_r19_validation ... ok
[INFO] [stdout] test engine::eval::tests::docker_rename_no_such_container_is_treated_as_the_idempotent_no_op_it_is ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_once_throws_when_the_env_file_write_fails ... ok
[INFO] [stdout] test engine::eval::tests::list_functions_lifts_the_expression_depth_cap ... ok
[INFO] [stdout] test engine::eval::tests::docker_rename_recognizes_podmans_differently_phrased_no_such_container_error ... ok
[INFO] [stdout] test engine::eval::tests::docker_rename_surfaces_a_real_name_conflict_instead_of_masking_it ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_refuses_an_env_key_containing_a_newline ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_refuses_an_env_key_containing_equals ... ok
[INFO] [stdout] test engine::eval::tests::parse_error_is_reported_with_path ... ok
[INFO] [stdout] test engine::eval::tests::run_fn_rejects_non_identifier_name ... ok
[INFO] [stdout] test engine::eval::tests::kamal_proxy_boot_throws_when_the_image_pull_fails ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_throws_when_the_env_file_write_fails ... ok
[INFO] [stdout] test engine::eval::tests::docker_run_refuses_an_env_value_containing_a_newline ... ok
[INFO] [stdout] test engine::eval::tests::run_fn_refuses_missing_function_without_running_top_level ... ok
[INFO] [stdout] test engine::eval::tests::run_fn_wrong_arity_does_not_run_top_level ... ok
[INFO] [stdout] test engine::eval::tests::run_fn_resolves_calls_into_a_module_that_itself_imports ... ok
[INFO] [stdout] test engine::eval::tests::post_commit_cleanup_failure_skips_persisting_that_hosts_port_and_target ... ok
[INFO] [stdout] test engine::eval::tests::post_commit_cleanup_success_persists_port_and_target_normally ... ok
[INFO] [stdout] test engine::eval::tests::rollback_happy_path_redeploys_the_previous_image_and_swaps_prev ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_does_not_silently_swap_in_the_stock_rollback_when_a_customized_deploy_rhai_is_missing_its_own_non_stdlib_dependency ... ok
[INFO] [stdout] test engine::eval::tests::run_post_deploy_hook_reports_failed_hosts_but_does_not_throw ... ok
[INFO] [stdout] test engine::eval::tests::run_post_deploy_hook_returns_empty_when_every_host_succeeds ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_prefers_a_real_vendored_lib_deploy_over_the_embedded_one ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_falls_back_to_the_embedded_stdlib_when_vendoring_is_only_partial ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_falls_back_to_the_snapshotted_prev_image_without_an_override ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_all_actually_probes_every_host_via_ssh ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_works_with_zero_vendored_lib_via_the_embedded_stdlib ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_pulls_the_explicit_image_override_on_every_host ... ok
[INFO] [stdout] test engine::eval::tests::run_setup_boots_caddy_instead_when_proxy_kind_is_caddy ... ok
[INFO] [stdout] test engine::eval::tests::run_rollback_surfaces_the_stdlibs_own_empty_hosts_guard ... ok
[INFO] [stdout] test engine::eval::tests::runs_a_script_that_imports_a_lib_module ... ok
[INFO] [stdout] test engine::eval::tests::run_setup_creates_the_network_and_boots_kamal_proxy_on_every_host ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_all_fails_fast_and_never_probes_a_later_host ... ok
[INFO] [stdout] test engine::interrupt::tests::install_returns_a_flag_that_starts_false ... ok
[INFO] [stdout] test engine::plan::tests::render_empty_plan ... ok
[INFO] [stdout] test engine::plan::tests::render_summarizes_actions_and_hosts ... ok
[INFO] [stdout] test engine::runner::tests::docker_and_cc_must_be_available_in_ci ... ok
[INFO] [stdout] test engine::runner::tests::exit_code_of_maps_a_signal_kill_to_128_plus_signal_not_the_spawn_failure_sentinel ... ok
[INFO] [stdout] test engine::runner::tests::fake_runner_records_calls ... ok
[INFO] [stdout] test engine::runner::tests::fake_runner_records_stdin_separately ... ok
[INFO] [stdout] test engine::runner::tests::host_key_checking_defaults_and_validates ... ok
[INFO] [stdout] test engine::runner::tests::option_like_hosts_are_detected ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_on_host_probes_via_ssh_curl_against_localhost_not_the_control_machine ... ok
[INFO] [stdout] test engine::runner::tests::piped_does_not_deadlock_on_a_large_stdin_payload_paired_with_large_output ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_on_host_treats_an_ssh_level_failure_as_status_zero ... ok
[INFO] [stdout] test engine::runner::tests::real_runner_rejects_option_like_host ... ok
[INFO] [stdout] test engine::runner::tests::real_runner_run_local_reports_128_plus_signal_for_a_killed_process ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_disables_multiplexing_via_env ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_enables_connection_multiplexing_by_default ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_falls_back_to_default_on_an_unrecognized_persist_value ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_rejects_a_control_path_override_with_no_host_distinguishing_token ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_respects_custom_persist_and_path_overrides ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_sets_keepalive_options ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_skips_multiplexing_entirely_if_the_control_dir_cannot_be_created ... ok
[INFO] [stdout] test engine::runner::tests::ssh_command_skips_multiplexing_silently_when_home_is_unavailable ... ok
[INFO] [stdout] test engine::secret::tests::debug_does_not_leak_plaintext ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_on_host_throws_after_exhausting_attempts_with_the_last_status ... ok
[INFO] [stdout] test engine::secret::tests::decrypt_if_needed_requires_both_the_prefix_and_suffix ... ok
[INFO] [stdout] test engine::secret::tests::fetch_if_needed_passes_a_plain_value_through_unchanged ... ok
[INFO] [stdout] test engine::secret::tests::fetch_if_needed_rejects_an_empty_command ... ok
[INFO] [stdout] test engine::secret::tests::fetch_if_needed_requires_both_the_prefix_and_suffix ... ok
[INFO] [stdout] test engine::secret::tests::fetch_if_needed_runs_the_command_and_trims_trailing_newlines ... ok
[INFO] [stdout] test engine::secret::tests::fetch_if_needed_surfaces_a_command_failure_with_its_stderr ... ok
[INFO] [stdout] test engine::secret::tests::fetch_if_needed_trims_a_trailing_crlf_too ... ok
[INFO] [stdout] test engine::secret::tests::lookup_secret_falls_back_to_the_shared_file_for_a_key_absent_from_the_destination_file ... ok
[INFO] [stdout] test engine::secret::tests::decrypt_if_needed_passes_a_plain_value_through_unchanged ... ok
[INFO] [stdout] test engine::secret::tests::lookup_secret_prefers_the_destination_file_over_the_shared_one ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_requires_consecutive_passes_before_returning_healthy ... ok
[INFO] [stdout] test engine::secret::tests::posix_quote_is_injection_safe ... ok
[INFO] [stdout] test engine::secret::tests::redact_replaces_known_secrets_only ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_with_default_consecutive_still_passes_on_the_first_200 ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_on_host_treats_a_nonzero_exit_as_failure_even_with_numeric_stdout ... ok
[INFO] [stdout] test engine::secret::tests::secret_reveals_only_via_method ... ok
[INFO] [stdout] test engine::eval::tests::wait_healthy_on_host_requires_consecutive_passes_before_returning_healthy ... ok
[INFO] [stdout] test engine::secret::tests::reveal_and_sh_quote_expose_plaintext_explicitly ... ok
[INFO] [stdout] test engine::sim::tests::pick_port_is_deterministic_and_increments ... ok
[INFO] [stdout] test engine::secret::tests::secret_rejects_too_short ... ok
[INFO] [stdout] test engine::sim::tests::pick_port_still_succeeds_at_the_highest_base_that_fits_in_u16 ... ok
[INFO] [stdout] test engine::sim::tests::proxy_switch_stores_target ... ok
[INFO] [stdout] test engine::sim::tests::remove_deletes_container ... ok
[INFO] [stdout] test engine::sim::tests::remove_seeds_a_never_before_seen_entity ... ok
[INFO] [stdout] test engine::sim::tests::rename_promotes_to_canonical ... ok
[INFO] [stdout] test engine::sim::tests::seed_running_caches_one_real_read ... ok
[INFO] [stdout] test engine::sim::tests::set_restarted_brings_a_stopped_container_back_up_and_keeps_its_image ... ok
[INFO] [stdout] test engine::sim::tests::set_restarted_marks_running_and_healthy_and_seeds ... ok
[INFO] [stdout] test engine::sim::tests::set_running_makes_running_and_healthy ... ok
[INFO] [stdout] test engine::sim::tests::set_stopped_clears_running_and_health ... ok
[INFO] [stdout] test engine::sim::tests::set_stopped_seeds_a_never_before_seen_entity ... ok
[INFO] [stdout] test engine::secret::tests::secret_interpolation_is_caught_by_the_boundary_guard ... ok
[INFO] [stdout] test engine::state::tests::all_and_services_ignore_a_legacy_slash_key_even_within_its_own_named_destination ... ok
[INFO] [stdout] test engine::sim::tests::pick_port_returns_none_instead_of_a_collapsed_port_when_base_would_overflow_u16 ... ok
[INFO] [stdout] test engine::state::tests::defaults_to_start_dir_when_no_marker ... ok
[INFO] [stdout] test engine::state::tests::ephemeral_set_does_not_touch_disk ... ok
[INFO] [stdout] test engine::state::tests::exclusive_lock_blocks_second_acquire ... ok
[INFO] [stdout] test engine::state::tests::finds_marker_in_ancestor_dir ... ok
[INFO] [stdout] test engine::state::tests::get_never_resolves_a_slash_key_even_if_one_exists_on_disk ... ok
[INFO] [stdout] test engine::secret::tests::secret_resolves_a_cmd_framed_value_via_the_fetch_command_end_to_end ... ok
[INFO] [stdout] test engine::state::tests::hosts_for_does_not_cross_services ... ok
[INFO] [stdout] test engine::state::tests::hosts_for_handles_dotted_and_at_sign_host_names ... ok
[INFO] [stdout] test engine::state::tests::is_valid_dest_name_rejects_path_traversal_and_separators ... ok
[INFO] [stdout] test engine::state::tests::a_second_destination_does_not_appear_in_the_defaults_services_or_all ... ok
[INFO] [stdout] test engine::state::tests::destinations_are_isolated_under_one_shared_state_file ... ok
[INFO] [stdout] test engine::state::tests::load_missing_file_is_empty ... ok
[INFO] [stdout] test engine::state::tests::load_corrupt_file_is_fatal ... ok
[INFO] [stdout] test engine::state::tests::load_rejects_valid_json_with_the_wrong_shape ... ok
[INFO] [stdout] test engine::secret::tests::secret_surfaces_a_fetch_command_failure_end_to_end ... ok
[INFO] [stdout] test engine::state::tests::load_rejects_future_version ... ok
[INFO] [stdout] test engine::state::tests::reentrancy_rejects_a_stale_pid_even_with_a_matching_root ... ok
[INFO] [stdout] test engine::state::tests::reentrancy_detected_by_matching_env_and_live_pid ... ok
[INFO] [stdout] test engine::state::tests::reentrancy_rejects_malformed_env_values ... ok
[INFO] [stdout] test engine::state::tests::set_and_del_refuse_a_key_containing_a_slash ... ok
[INFO] [stdout] test engine::state::tests::load_ignores_unknown_top_level_fields_and_a_later_write_drops_them ... ok
[INFO] [stdout] test engine::state::tests::services_discovered_from_version_keys ... ok
[INFO] [stdout] test engine::state::tests::overlay_seeds_from_disk_but_never_writes ... ok
[INFO] [stdout] test engine::secret::tests::secret_to_string_yields_sentinel_and_no_string_coercion ... ok
[INFO] [stdout] test engine::state::tests::state_file_is_written_0600 ... ok
[INFO] [stdout] test engine::state::tests::the_documented_bak_recovery_workflow_actually_restores_a_working_state_file ... ok
[INFO] [stdout] test engine::state::tests::set_persists_and_reloads ... ok
[INFO] [stdout] test engine::state::tests::set_merges_concurrent_external_writes ... ok
[INFO] [stdout] test engine::state::tests::with_dest_none_and_default_are_identical_to_no_destination ... ok
[INFO] [stdout] test engine::tests::interrupt_flag_aborts_the_script_and_the_compensation_still_runs ... ok
[INFO] [stdout] test engine::transaction::tests::compensation_calling_a_ctx_locking_builtin_does_not_deadlock ... ok
[INFO] [stdout] test engine::transaction::tests::dry_run_records_rollback_and_does_not_invoke ... ok
[INFO] [stdout] test engine::transaction::tests::guarded_compensation_runs_its_destructive_step_when_the_prior_one_succeeds ... ok
[INFO] [stderr] kill: (2775): Operation not permitted
[INFO] [stdout] test engine::runner::tests::real_docker_container_stdin_pipes_through_run_local_stdin ... ok
[INFO] [stdout] test engine::state::tests::proc_dir_existence_is_permission_proof_unlike_kill_0 ... ok
[INFO] [stdout] test engine::transaction::tests::guarded_compensation_skips_its_destructive_step_when_the_prior_one_fails ... ok
[INFO] [stdout] test engine::transaction::tests::in_transaction_reflects_nesting_depth ... ok
[INFO] [stdout] test engine::runner::tests::real_docker_container_exit_code_and_argv_survive_run_local ... ok
[INFO] [stdout] test engine::transaction::tests::mid_fleet_failure_unwinds_with_per_host_capture ... ok
[INFO] [stdout] test engine::transaction::tests::guarded_compensation_still_runs_when_the_proxy_was_never_switched ... ok
[INFO] [stdout] test engine::transaction::tests::success_runs_no_compensations ... ok
[INFO] [stdout] test engine::transaction::tests::sequential_transactions_do_not_cross_unwind ... ok
[INFO] [stdout] test engine::transaction::tests::throwing_compensation_does_not_abort_unwind ... ok
[INFO] [stdout] test engine::transaction::tests::value_returning_body_does_not_spuriously_roll_back ... ok
[INFO] [stdout] test engine::transaction::tests::reentrant_on_rollback_during_unwind_is_drained ... ok
[INFO] [stdout] test secrets::tests::find_upward_stops_at_home ... ok
[INFO] [stdout] test secrets::tests::parse_and_validate_pubkey_accepts_real_age_keygen_stderr ... ok
[INFO] [stdout] test secrets::tests::parse_and_validate_pubkey_rejects_a_missing_public_key_line ... ok
[INFO] [stdout] test secrets::tests::parse_and_validate_pubkey_rejects_a_value_not_starting_with_age1 ... ok
[INFO] [stdout] test secrets::tests::set_owner_only_makes_file_0600 ... ok
[INFO] [stdout] test ssh::config::tests::empty_config ... ok
[INFO] [stdout] test ssh::config::tests::host_wildcard_is_not_supported_only_exact_alias_names_match ... ok
[INFO] [stdout] test ssh::config::tests::hostname_only_no_user ... ok
[INFO] [stdout] test ssh::config::tests::match_blocks_are_skipped_directives_inside_never_apply_to_any_host ... ok
[INFO] [stdout] test ssh::config::tests::multi_name_host_line_collapses_to_one_literal_key_not_two_aliases ... ok
[INFO] [stdout] test ssh::config::tests::parse_basic_ssh_config ... ok
[INFO] [stdout] test ssh::config::tests::parse_key_equals_value_format ... ok
[INFO] [stdout] test engine::transaction::tests::throw_unwinds_compensations_lifo ... ok
[INFO] [stdout] test ssh::config::tests::parse_multiple_hosts ... ok
[INFO] [stdout] test engine::types::tests::http_response_ok_is_2xx ... ok
[INFO] [stdout] test ssh::config::tests::parse_quoted_values ... ok
[INFO] [stdout] test ssh::config::tests::resolve_host_with_explicit_user_overrides_config ... ok
[INFO] [stdout] test ssh::config::tests::resolve_unknown_host_unchanged ... ok
[INFO] [stdout] test ssh::config::tests::skip_comments_and_empty_lines ... ok
[INFO] [stdout] test engine::types::tests::exec_result_getters_readable_in_script ... ok
[INFO] [stdout] test engine::stdlib::tests::std_import_resolves_with_zero_vendored_files_on_disk ... ok
[INFO] [stdout] test engine::stdlib::tests::an_on_disk_std_file_never_shadows_the_embedded_stdlib ... ok
[INFO] [stdout] test engine::stdlib::tests::every_embedded_module_compiles_and_loads_cleanly ... ok
[INFO] [stdout] test engine::stdlib::tests::lib_import_is_unaffected_and_still_requires_a_real_file_on_disk ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 347 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.16s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/accessory_lifecycle.rs (/opt/rustwide/target/debug/deps/accessory_lifecycle-654d4f97b83bd493)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test accessory_upgrade_pulls_the_new_image_before_touching_the_old_container ... ok
[INFO] [stdout] test accessory_restart_runs_docker_restart_in_place ... ok
[INFO] [stdout] test accessory_upgrade_actually_starts_the_new_image_when_the_old_accessory_was_running ... ok
[INFO] [stdout] test accessory_stop_stops_a_running_accessory ... ok
[INFO] [stdout] test accessory_restart_keeps_the_sim_consistent_for_a_later_read_in_the_same_script ... ok
[INFO] [stdout] test accessory_upgrade_defaults_cfg_to_empty_via_the_3_arg_overload ... ok
[INFO] [stdout] test accessory_stop_is_idempotent_on_an_already_stopped_accessory ... ok
[INFO] [stdout] test accessory_upgrade_stops_removes_and_restarts_on_the_new_image ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.09s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/app.rs (/opt/rustwide/target/debug/deps/app-4b98da12b19af812)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test app_exec_on_service_with_no_recorded_hosts_errors_without_network ... ok
[INFO] [stdout] test app_exec_refuses_a_host_that_looks_like_an_ssh_option ... ok
[INFO] [stdout] test app_exec_help_documents_interactive_flag ... ok
[INFO] [stdout] test app_exec_on_service_with_multiple_hosts_requires_explicit_host ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/audit.rs (/opt/rustwide/target/debug/deps/audit-994d188d62ab9a80)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test audit_on_fresh_project_reports_no_history ... ok
[INFO] [stdout] test cli_arg_matching_a_registered_secret_is_redacted_from_audit_args ... ok
[INFO] [stdout] test secret_revealed_into_a_thrown_error_is_redacted_from_the_audit_log ... ok
[INFO] [stdout] test failed_run_is_recorded_with_its_error ... ok
[INFO] [stdout] test audit_filter_narrows_to_matching_target ... ok
[INFO] [stdout] test successful_run_is_recorded_and_shown_by_audit ... ok
[INFO] [stdout] test dry_run_writes_no_audit_entry ... ok
[INFO] [stdout] test audit_entries_are_most_recent_first ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.87s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/bunny.rs (/opt/rustwide/target/debug/deps/bunny-1917a6adb0651650)
[INFO] [stdout] 
[INFO] [stdout] running 52 tests
[INFO] [stdout] test a_non_200_get_throws_naming_the_real_status ... ok
[INFO] [stdout] test a_non_200_patch_throws_naming_the_real_status ... ok
[INFO] [stdout] test create_app_accepts_an_env_entry_with_an_explicitly_empty_value ... ok
[INFO] [stdout] test a_200_response_missing_containertemplates_throws_a_clear_error_instead_of_a_raw_iteration_failure ... ok
[INFO] [stdout] test api_key_accepted_as_a_bare_secret_and_revealed_before_use ... ok
[INFO] [stdout] test a_transport_failure_during_a_batch_patch_names_the_underlying_cause ... ok
[INFO] [stdout] test create_app_posts_the_expected_body_and_returns_the_new_app ... ok
[INFO] [stdout] test create_app_forces_single_replica_and_single_region_regardless_of_volume ... ok
[INFO] [stdout] test create_app_omits_env_and_volume_keys_entirely_when_absent ... ok
[INFO] [stdout] test create_app_region_id_does_not_collide_with_the_region_denylist_entry ... ok
[INFO] [stdout] test create_app_accepts_either_200_or_201_as_success ... ok
[INFO] [stdout] test create_app_under_dry_run_never_makes_a_real_post ... ok
[INFO] [stdout] test delete_app_sends_a_real_delete_and_returns_success ... ok
[INFO] [stdout] test deploy_app_finds_the_named_container_and_patches_its_image_with_the_access_key_header ... ok
[INFO] [stdout] test delete_app_under_dry_run_never_makes_a_real_delete ... ok
[INFO] [stdout] test delete_app_throws_a_clear_error_on_non_2xx_with_transport_detail_on_status_zero ... ok
[INFO] [stdout] test delete_app_refuses_a_missing_or_empty_app_id_before_contacting_anything ... ok
[INFO] [stdout] test create_app_refuses_a_partial_env_entry_before_contacting_anything ... ok
[INFO] [stdout] test deploy_app_refuses_a_region_key_before_contacting_anything ... ok
[INFO] [stdout] test deploy_app_sends_the_optional_image_name_and_image_digest_fields ... ok
[INFO] [stdout] test deploy_app_skips_the_snapshot_when_the_container_reports_no_image_tag ... ok
[INFO] [stdout] test deploy_app_snapshots_the_previous_tag_into_state_for_a_later_rollback ... ok
[INFO] [stdout] test deploy_app_refuses_plausible_near_miss_keys_regions_and_replica ... ok
[INFO] [stdout] test deploy_app_under_dry_run_still_makes_a_real_get_but_never_a_real_patch ... ok
[INFO] [stdout] test deploy_fleet_aborts_during_canary_before_touching_the_rest_of_the_fleet ... ok
[INFO] [stdout] test create_app_refuses_a_partial_volume_before_contacting_anything ... ok
[INFO] [stdout] test deploy_fleet_canary_phase_also_counts_a_health_url_failure_as_a_target_failure ... ok
[INFO] [stdout] test deploy_fleet_carries_a_canary_failure_under_threshold_into_the_batch_phase_count ... ok
[INFO] [stdout] test deploy_fleet_counts_a_health_url_failure_as_a_target_failure_even_though_the_patch_succeeded ... ok
[INFO] [stdout] test deploy_fleet_never_leaks_an_image_digest_mistakenly_placed_on_the_shared_cfg ... ok
[INFO] [stdout] test deploy_fleet_refuses_a_zone_key_on_the_shared_cfg_before_contacting_anything ... ok
[INFO] [stdout] test deploy_fleet_batch_phase_snapshots_each_targets_previous_tag_for_rollback ... ok
[INFO] [stdout] test deploy_fleet_rejects_an_empty_targets_array ... ok
[INFO] [stdout] test deploy_fleet_refuses_a_scale_key_on_a_target_before_contacting_anything ... ok
[INFO] [stdout] test deploy_fleet_rejects_a_target_missing_image_tag_before_contacting_anything ... ok
[INFO] [stdout] test create_app_requires_every_mandatory_key_before_contacting_anything ... ok
[INFO] [stdout] test deploy_fleet_still_accepts_a_fully_legitimate_target_and_cfg ... ok
[INFO] [stdout] test deploy_fleet_rolls_out_canary_then_the_rest_and_reports_all_successes ... ok
[INFO] [stdout] test deploy_fleet_under_dry_run_never_makes_a_real_patch_for_any_target ... ok
[INFO] [stdout] test rollback_app_never_forwards_a_reused_cfgs_image_name_or_image_digest ... ok
[INFO] [stdout] test rollback_app_refuses_a_replicas_key_before_contacting_anything ... ok
[INFO] [stdout] test deploy_fleet_throws_once_failures_exceed_the_threshold_and_stops_dispatching_further_batches ... ok
[INFO] [stdout] test create_app_refuses_a_denylisted_key_before_contacting_anything ... ok
[INFO] [stdout] test more_than_one_matching_container_throws_a_clear_error_naming_the_container ... ok
[INFO] [stdout] test deploy_fleet_tolerates_a_batch_failure_within_the_threshold_and_reports_it ... ok
[INFO] [stdout] test rollback_app_throws_a_clear_error_when_nothing_was_ever_deployed ... ok
[INFO] [stdout] test wait_for_image_succeeds_once_the_polled_tag_matches ... ok
[INFO] [stdout] test wait_for_image_under_dry_run_never_polls_at_all ... ok
[INFO] [stdout] test zero_matching_containers_throws_a_clear_error_naming_the_container ... ok
[INFO] [stdout] test wait_for_image_throws_after_exhausting_attempts_naming_the_last_seen_tag ... ok
[INFO] [stdout] test rollback_app_under_dry_run_still_makes_a_real_get_but_never_a_real_patch ... ok
[INFO] [stdout] test rollback_app_reads_the_snapshotted_tag_and_patches_back_to_it_without_re_snapshotting ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 52 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.71s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/caddy_patch_conflict.rs (/opt/rustwide/target/debug/deps/caddy_patch_conflict-542849bdc7fa3d37)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test delete_404_succeeds_since_the_route_is_already_gone ... ok
[INFO] [stdout] test patch_200_succeeds_without_ever_calling_post ... ok
[INFO] [stdout] test maintenance_patch_500_fails_with_the_generic_http_error_not_the_404_hint ... ok
[INFO] [stdout] test delete_500_fails_loudly_instead_of_being_swallowed ... ok
[INFO] [stdout] test maintenance_patch_404_fails_with_a_deploy_first_hint ... ok
[INFO] [stdout] test patch_404_falls_through_to_post ... ok
[INFO] [stdout] test maintenance_patch_200_succeeds ... ok
[INFO] [stdout] test delete_200_succeeds ... ok
[INFO] [stdout] test patch_500_fails_loudly_without_duplicating_the_route_via_post ... ok
[INFO] [stderr]      Running tests/caddy_proxy.rs (/opt/rustwide/target/debug/deps/caddy_proxy-87d7257cd609f29c)
[INFO] [stdout] test patch_connection_failure_reported_as_000_also_fails_without_post ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.33s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test proxy_remove_url_encodes_a_service_name_containing_a_slash ... ok
[INFO] [stdout] test proxy_deploy_url_encodes_a_service_name_containing_a_slash ... ok
[INFO] [stdout] test deploy_defaults_to_kamal_proxy ... ok
[INFO] [stdout] test deploy_with_caddy_proxy_uses_the_admin_api ... ok
[INFO] [stdout] test proxy_set_tls_url_encodes_a_service_name_containing_a_slash ... ok
[INFO] [stdout] test deploy_with_caddy_proxy_configures_an_active_health_check_on_the_upstream ... ok
[INFO] [stdout] test deploy_pins_the_caddy_version_from_cfg_proxy_version ... ok
[INFO] [stdout] test deploy_pins_the_kamal_proxy_version_from_cfg_proxy_version ... ok
[INFO] [stdout] test deploy_warns_when_kamal_proxy_is_left_on_the_default_latest_tag ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.33s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/deploy_behaviors.rs (/opt/rustwide/target/debug/deps/deploy_behaviors-4b0579f506659321)
[INFO] [stdout] 
[INFO] [stdout] running 49 tests
[INFO] [stdout] test deploy_persists_full_config_for_rollback ... ok
[INFO] [stdout] test deploy_refuses_an_empty_hosts_array_even_with_pre_deploy_set ... ok
[INFO] [stdout] test deploy_refuses_an_empty_hosts_array ... ok
[INFO] [stdout] test deploy_omits_keep_images_from_persisted_config_when_never_set ... ok
[INFO] [stdout] test deploy_at_the_top_level_is_unaffected_by_the_nesting_guard ... ok
[INFO] [stdout] test deploy_refuses_a_negative_keep_images ... ok
[INFO] [stdout] test deploy_refuses_a_domain_on_the_default_kamal_proxy_backend ... ok
[INFO] [stdout] test deploy_refuses_to_run_nested_inside_a_transaction ... ok
[INFO] [stdout] test deploy_warns_on_a_case_variant_of_latest ... ok
[INFO] [stdout] test deploy_anchors_the_lock_on_the_alphabetically_first_host_regardless_of_array_order ... ok
[INFO] [stdout] test deploy_with_a_pinned_tag_does_not_warn ... ok
[INFO] [stdout] test deploy_still_rolls_out_to_hosts_in_the_callers_given_order_despite_the_sorted_lock_host ... ok
[INFO] [stdout] test deploy_with_keep_images_zero_is_a_valid_meaningful_value ... ok
[INFO] [stdout] test deploy_warns_when_deploying_a_mutable_latest_tag ... ok
[INFO] [stdout] test deploy_warns_when_tag_is_omitted_entirely_since_it_implies_latest ... ok
[INFO] [stdout] test pre_deploy_runs_in_a_throwaway_new_image_container ... ok
[INFO] [stdout] test rollback_acquires_and_releases_the_lock_exactly_once_not_once_per_nested_deploy_call ... ok
[INFO] [stdout] test rollback_anchors_the_lock_on_the_alphabetically_first_host_regardless_of_array_order ... ok
[INFO] [stdout] test rollback_refuses_a_case_variant_of_the_mutable_latest_tag ... ok
[INFO] [stdout] test restore_compensation_carries_health_path ... ok
[INFO] [stdout] test rollback_refuses_a_negative_keep_images_override_without_first_mutating_prev_state ... ok
[INFO] [stdout] test recipe_example_runs_migration_on_new_image_and_redacts_secrets ... ok
[INFO] [stdout] test rollback_with_an_explicit_image_override_ignores_the_mutable_tag_guard ... ok
[INFO] [stdout] test rollback_refuses_a_replayed_domain_on_kamal_proxy_without_first_mutating_prev_state ... ok
[INFO] [stdout] test rollback_refuses_to_use_a_mutable_latest_snapshot ... ok
[INFO] [stdout] test rollback_refuses_when_nested_without_first_mutating_prev_state ... ok
[INFO] [stdout] test rollback_releases_the_lock_even_when_the_nested_deploy_call_fails_after_acquiring_it ... ok
[INFO] [stdout] test rollback_refuses_when_the_lock_is_already_held_without_first_mutating_prev_state ... ok
[INFO] [stdout] test rollback_refuses_an_empty_hosts_array_without_first_mutating_prev_state ... ok
[INFO] [stdout] test rollback_with_no_prev_state_hints_at_the_mutable_tag_gotcha_when_relevant ... ok
[INFO] [stdout] test standard_deploy_forwards_health_check_knobs_to_deploy ... ok
[INFO] [stdout] test standard_deploy_forwards_keep_images_to_deploy ... ok
[INFO] [stdout] test standard_deploy_forwards_volumes_and_deploy_hook_cmds_to_deploy ... ok
[INFO] [stdout] test standard_deploy_forwards_network_to_accessories ... ok
[INFO] [stdout] test standard_deploy_forwards_build_and_skip_flags_to_deploy ... ok
[INFO] [stdout] test standard_deploy_forwards_port_rename_and_remaining_deploy_keys ... ok
[INFO] [stdout] test wait_healthy_all_checks_each_host_via_ssh_not_a_control_machine_url ... ok
[INFO] [stdout] test standard_deploy_refuses_an_accessory_entry_missing_required_keys ... ok
[INFO] [stdout] test wait_healthy_on_host_refuses_zero_or_negative_attempts ... ok
[INFO] [stdout] test standard_deploy_refuses_missing_db_host_when_accessories_set ... ok
[INFO] [stdout] test wait_healthy_on_host_refuses_zero_or_negative_consecutive ... ok
[INFO] [stdout] test standard_deploy_refuses_missing_registry_credentials_when_registry_is_set ... ok
[INFO] [stdout] test standard_deploy_refuses_missing_required_keys ... ok
[INFO] [stdout] test standard_deploy_logs_into_the_registry_on_build_host_too ... ok
[INFO] [stdout] test wait_healthy_on_host_refuses_zero_or_negative_timeout ... ok
[INFO] [stdout] test wait_healthy_refuses_zero_or_negative_attempts ... ok
[INFO] [stdout] test wait_healthy_refuses_zero_or_negative_timeout ... ok
[INFO] [stdout] test wait_healthy_refuses_zero_or_negative_consecutive ... ok
[INFO] [stdout] test wait_port_and_wait_container_healthy_also_refuse_zero_or_negative_attempts ... ok
[INFO] [stderr]      Running tests/deploy_dryrun.rs (/opt/rustwide/target/debug/deps/deploy_dryrun-5daeccecd4ce2700)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 49 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 12.13s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test deploy_registers_two_rollbacks_before_each_proxy_switch ... ok
[INFO] [stderr]      Running tests/destinations.rs (/opt/rustwide/target/debug/deps/destinations-cb48a407f5e593f3)
[INFO] [stdout] test fleet_atomic_deploy_dry_run_plans_per_host_swap_and_post_commit_cleanup ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.73s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test invalid_dest_name_is_rejected_with_a_clear_error_before_touching_state ... ok
[INFO] [stdout] test rollback_no_hosts_error_names_the_destination_actually_checked ... ok
[INFO] [stdout] test dest_scoped_run_falls_back_to_the_shared_secrets_file_for_a_key_its_own_file_lacks ... ok
[INFO] [stdout] test run_also_supports_dest ... ok
[INFO] [stdout] test dest_scoped_secrets_file_is_preferred_over_the_shared_one ... ok
[INFO] [stdout] test dest_scoped_state_get_set_all_do_not_cross_destinations ... ok
[INFO] [stdout] test without_dest_state_is_unnamespaced_exactly_as_before ... ok
[INFO] [stdout] test rollback_dest_finds_the_hosts_recorded_under_that_destination ... ok
[INFO] [stdout] test dest_namespaces_state_so_two_destinations_never_share_a_version ... ok
[INFO] [stdout] test nrg_dest_reports_default_without_the_flag_and_the_name_with_it ... ok
[INFO] [stdout] test audit_trail_records_which_destination_a_run_used ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.17s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/doctor.rs (/opt/rustwide/target/debug/deps/doctor-15694c45f0e00417)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test doctor_help_documents_the_host_flag ... ok
[INFO] [stdout] test doctor_reports_a_corrupt_state_file_as_a_failure_not_a_silent_skip ... ok
[INFO] [stdout] test doctor_skips_the_hosts_section_when_no_state_and_no_explicit_host ... ok
[INFO] [stdout] test doctor_fails_when_the_orchestration_file_does_not_compile ... ok
[INFO] [stdout] test doctor_reports_registry_auth_failure_for_a_deployed_image ... ok
[INFO] [stdout] test doctor_reports_a_corrupt_state_file_even_with_an_explicit_host ... ok
[INFO] [stdout] test doctor_reports_registry_auth_success_for_a_deployed_image ... ok
[INFO] [stdout] test doctor_succeeds_when_the_orchestration_file_compiles_and_nothing_is_deployed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/dry_run.rs (/opt/rustwide/target/debug/deps/dry_run-e9ec732f5e6a8f36)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test dry_run_records_plan_and_makes_no_changes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/embedded_stdlib.rs (/opt/rustwide/target/debug/deps/embedded_stdlib-7d280cbb753f594c)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test nrg_vendor_refuses_to_overwrite_a_customized_file_without_force ... ok
[INFO] [stdout] test nrg_vendor_writes_to_the_project_root_not_the_cwd_when_run_from_a_subdirectory ... ok
[INFO] [stdout] test lib_import_still_fails_without_vendoring_no_silent_fallback ... ok
[INFO] [stdout] test std_import_works_with_zero_vendored_lib_directory ... ok
[INFO] [stdout] test nrg_vendor_materializes_every_embedded_module ... ok
[INFO] [stdout] test nrg_rollback_uses_the_embedded_stdlib_with_zero_vendored_lib ... ok
[INFO] [stderr]      Running tests/exec_rhai.rs (/opt/rustwide/target/debug/deps/exec_rhai-f292c95a32e42aec)
[INFO] [stdout] test nrg_rollback_falls_back_to_embedded_stdlib_when_vendoring_is_only_partial ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.21s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test exec_runs_a_local_rhai_script ... ok
[INFO] [stderr]      Running tests/init.rs (/opt/rustwide/target/debug/deps/init-fdd3ff89a13f6a82)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test init_template_also_refuses_to_overwrite_an_existing_energize_rhai ... ok
[INFO] [stdout] test init_refuses_to_overwrite_an_existing_energize_rhai ... ok
[INFO] [stdout] test init_template_rejects_an_unknown_framework_name ... ok
[INFO] [stdout] test init_creates_the_default_energize_rhai_file ... ok
[INFO] [stdout] test init_template_scaffolds_a_framework_starter_using_the_embedded_stdlib ... ok
[INFO] [stdout] test init_template_rails_actually_runs_with_zero_vendoring ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/install_script.rs (/opt/rustwide/target/debug/deps/install_script-5f5aab9fd03c37bd)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test accepts_latest_and_a_well_formed_version_tag ... ok
[INFO] [stdout] test rejects_an_unsupported_architecture_before_any_network_access ... ok
[INFO] [stdout] test rejects_an_unsupported_os_before_any_network_access ... ok
[INFO] [stdout] test rejects_a_malformed_version_flag_before_any_network_access ... ok
[INFO] [stdout] test rejects_an_unknown_flag ... ok
[INFO] [stdout] test rejects_a_version_flag_shaped_like_a_path_or_containing_whitespace ... ok
[INFO] [stdout] test help_documents_every_flag ... ok
[INFO] [stdout] test resolves_every_supported_os_arch_combination_to_the_right_target_triple ... ok
[INFO] [stdout] test a_real_download_and_install_round_trip_works_and_a_tampered_archive_is_rejected ... ok
[INFO] [stderr]      Running tests/interrupt.rs (/opt/rustwide/target/debug/deps/interrupt-dc2636aed45f3123)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.80s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test sigint_mid_transaction_runs_the_rollback_compensation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.39s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/lifecycle_hooks.rs (/opt/rustwide/target/debug/deps/lifecycle_hooks-6826c172e9713e7a)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test hook_post_deploy_runs_after_the_deploy_completes_and_receives_the_right_args ... ok
[INFO] [stdout] test hook_pre_deploy_fires_exactly_once_during_a_successful_rollback ... ok
[INFO] [stdout] test a_hook_defined_with_the_wrong_arity_is_treated_as_not_defined ... ok
[INFO] [stdout] test hook_post_rollback_throwing_does_not_fail_an_already_successful_rollback ... ok
[INFO] [stdout] test hook_pre_deploy_can_block_the_deploy_by_throwing ... ok
[INFO] [stdout] test hook_post_deploy_throwing_does_not_fail_an_already_successful_deploy ... ok
[INFO] [stdout] test hook_post_rollback_fires_in_addition_to_hook_post_deploy_when_rollback_is_called_from_the_orchestration_file ... ok
[INFO] [stdout] test no_hooks_defined_is_the_default_and_changes_nothing ... ok
[INFO] [stdout] test hook_pre_deploy_runs_before_any_deploy_work ... ok
[INFO] [stdout] test a_blocking_hook_pre_deploy_does_not_corrupt_the_rollback_chain ... ok
[INFO] [stdout] test notify_webhook_posts_the_payload_verbatim ... ok
[INFO] [stdout] test notify_slack_sends_a_correctly_escaped_json_payload_over_the_real_wire ... ok
[INFO] [stdout] test notify_webhook_accepts_a_secret_url_and_reveals_it_before_posting ... ok
[INFO] [stderr]      Running tests/lock.rs (/opt/rustwide/target/debug/deps/lock-cc726f482e0b8411)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.24s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test no_hosts_recorded_and_no_host_flag_is_a_clear_error ... ok
[INFO] [stdout] test multiple_hosts_recorded_and_no_host_flag_refuses_to_guess ... ok
[INFO] [stdout] test release_on_an_unlocked_service_is_a_clear_no_op_preview ... ok
[INFO] [stdout] test release_preview_reports_an_unreachable_host_instead_of_a_false_not_locked ... ok
[INFO] [stdout] test release_with_yes_actually_removes_the_lock ... ok
[INFO] [stdout] test host_flag_overrides_the_state_derived_default ... ok
[INFO] [stdout] test release_preview_reports_a_spawn_failure_as_an_error_not_a_false_nothing_to_release ... ok
[INFO] [stdout] test acquire_then_status_reports_locked_by_the_correct_holder ... ok
[INFO] [stdout] test acquire_refuses_when_already_locked ... ok
[INFO] [stdout] test release_without_yes_only_previews_and_does_not_touch_the_lock ... ok
[INFO] [stdout] test status_reports_not_locked_when_the_directory_does_not_exist ... ok
[INFO] [stdout] test status_reports_a_spawn_failure_as_an_error_not_a_false_not_locked ... ok
[INFO] [stdout] test release_with_yes_surfaces_the_real_failure_reason_from_combined_output ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.81s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/lock_contention.rs (/opt/rustwide/target/debug/deps/lock_contention-7b2a491d2749027f)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test nested_nrg_inherits_the_lock_and_does_not_deadlock ... ok
[INFO] [stdout] test concurrent_runs_serialize_on_the_state_lock ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.39s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stderr]      Running tests/lock_timeout.rs (/opt/rustwide/target/debug/deps/lock_timeout-c76dd9fddc01a203)
[INFO] [stdout] test nrg_run_also_accepts_lock_timeout ... ok
[INFO] [stdout] test lock_timeout_does_not_interfere_with_an_uncontended_run ... ok
[INFO] [stdout] test lock_timeout_actually_waits_out_a_shorter_lived_holder_instead_of_timing_out_instantly ... ok
[INFO] [stdout] test lock_timeout_gives_up_with_a_clear_error_when_another_run_holds_the_lock ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.26s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/logs.rs (/opt/rustwide/target/debug/deps/logs-75cb5508428b4ab7)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test logs_on_service_with_no_recorded_hosts_errors_without_network ... ok
[INFO] [stdout] test logs_defaults_to_100_lines_and_no_follow ... ok
[INFO] [stdout] test logs_refuses_a_host_that_looks_like_an_ssh_option ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/multi_arch.rs (/opt/rustwide/target/debug/deps/multi_arch-9f31334a478dc0ae)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test deploy_with_comma_separated_platform_skips_the_separate_push_step ... ok
[INFO] [stdout] test deploy_with_explicit_platform_skips_the_arch_check_entirely_and_passes_it_to_docker_build ... ok
[INFO] [stdout] test deploy_with_comma_separated_platform_and_skip_build_does_not_claim_buildx_already_pushed ... ok
[INFO] [stdout] test deploy_with_build_host_and_multi_platform_does_not_double_push ... ok
[INFO] [stdout] test deploy_without_build_host_still_pushes_locally ... ok
[INFO] [stdout] test deploy_with_comma_separated_platform_still_skips_the_arch_check ... ok
[INFO] [stdout] test deploy_with_skip_push_and_comma_separated_platform_fails_fast ... ok
[INFO] [stdout] test deploy_without_platform_reaches_the_arch_check_and_dry_run_skips_it_safely ... ok
[INFO] [stdout] test deploy_with_skip_push_and_skip_build_and_comma_platform_does_not_throw ... ok
[INFO] [stdout] test docker_build_with_comma_separated_platform_uses_buildx_and_pushes_the_manifest_list ... ok
[INFO] [stdout] test deploy_with_build_host_pushes_from_build_host_not_locally ... ok
[INFO] [stdout] test docker_build_platform_value_is_shell_quoted ... ok
[INFO] [stdout] test sync_build_context_tar_failure_is_not_masked_by_base64 ... ok
[INFO] [stdout] test dockerignore_conditional_exclude_shell_snippet_is_correct ... ok
[INFO] [stdout] test docker_build_with_build_host_syncs_context_then_builds_remotely ... ok
[INFO] [stdout] test docker_build_with_platform_uses_buildx_and_loads_locally ... ok
[INFO] [stdout] test docker_build_without_build_host_makes_no_ssh_calls ... ok
[INFO] [stdout] test docker_push_two_arg_with_host_runs_via_ssh ... ok
[INFO] [stdout] test docker_push_two_arg_with_empty_host_runs_locally ... ok
[INFO] [stdout] test docker_build_without_platform_uses_plain_build ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.27s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/proxy_maintenance.rs (/opt/rustwide/target/debug/deps/proxy_maintenance-e8b3f3a097c50acb)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test caddy_maintenance_off_honors_a_custom_health_path ... ok
[INFO] [stdout] test caddy_maintenance_off_requires_cfg_target ... ok
[INFO] [stdout] test caddy_maintenance_on_swaps_only_the_handle_not_the_whole_route ... ok
[INFO] [stdout] test caddy_maintenance_off_with_target_restores_normal_routing ... ok
[INFO] [stdout] test caddy_maintenance_on_url_encodes_a_service_name_containing_a_slash ... ok
[INFO] [stdout] test kamal_proxy_maintenance_off_resumes_the_service ... ok
[INFO] [stdout] test kamal_proxy_maintenance_on_accepts_an_integer_drain_timeout_and_adds_a_unit ... ok
[INFO] [stdout] test caddy_maintenance_on_honors_a_custom_message_and_status_code ... ok
[INFO] [stdout] test kamal_proxy_maintenance_on_honors_a_custom_drain_timeout ... ok
[INFO] [stdout] test kamal_proxy_maintenance_on_honors_a_custom_message ... ok
[INFO] [stdout] test kamal_proxy_maintenance_on_stops_the_service_with_the_default_drain_timeout ... ok
[INFO] [stdout] test nrg_run_maintenance_task_puts_every_web_host_into_maintenance_mode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.81s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/remove.rs (/opt/rustwide/target/debug/deps/remove-54bd623a2b654294)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test no_hosts_recorded_is_a_no_op_not_a_failure ... ok
[INFO] [stdout] test with_yes_removes_the_container_on_every_recorded_host ... ok
[INFO] [stdout] test purge_state_on_a_host_subset_of_a_multi_host_service_keeps_the_shared_keys ... ok
[INFO] [stdout] test purge_state_clears_the_services_keys_after_a_successful_removal ... ok
[INFO] [stdout] test host_flag_overrides_state_and_skips_lookup_entirely ... ok
[INFO] [stdout] test a_failed_host_reports_nonzero_and_purge_state_is_skipped ... ok
[INFO] [stderr]      Running tests/rollback.rs (/opt/rustwide/target/debug/deps/rollback-e442c8f6afd60505)
[INFO] [stdout] test without_yes_only_previews_and_never_invokes_ssh ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.82s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test file_flag_rejects_a_nonexistent_path ... ok
[INFO] [stdout] test host_flag_rejects_an_empty_value ... ok
[INFO] [stdout] test no_hosts_recorded_is_a_clear_error_not_a_panic ... ok
[INFO] [stdout] test audit_trail_records_the_host_and_image_overrides ... ok
[INFO] [stdout] test image_flag_rejects_an_empty_value ... ok
[INFO] [stdout] test file_flag_points_module_resolution_at_its_own_directory_not_the_project_root ... ok
[INFO] [stdout] test rollback_works_with_no_vendored_lib_directory_at_all ... ok
[INFO] [stdout] test image_flag_overrides_the_snapshotted_prev ... ok
[INFO] [stdout] test file_flag_can_point_at_a_lib_copy_outside_the_project_root ... ok
[INFO] [stdout] test dry_run_rolls_back_to_the_snapshotted_prev_image_on_every_recorded_host ... ok
[INFO] [stdout] test host_flag_overrides_the_recorded_fleet ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.91s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/run_fn.rs (/opt/rustwide/target/debug/deps/run_fn-4f79aae27e7e46a8)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test run_dry_run_records_plan_without_executing ... ok
[INFO] [stdout] test run_calls_named_fn_with_string_arg ... ok
[INFO] [stdout] test run_fn_can_call_global_builtins ... ok
[INFO] [stdout] test run_unknown_fn_exits_nonzero ... ok
[INFO] [stdout] test run_numeric_args_stay_strings ... ok
[INFO] [stdout] test run_passes_multiple_args_in_order ... ok
[INFO] [stdout] test run_wrong_arity_does_not_run_top_level ... ok
[INFO] [stderr]      Running tests/secrets.rs (/opt/rustwide/target/debug/deps/secrets-a2780b281e095462)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.95s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test secret_usable_for_commands_but_redacted_in_output ... ok
[INFO] [stdout] test secret_cmd_framing_surfaces_a_fetch_command_failure ... ok
[INFO] [stdout] test state_set_rejects_a_secret ... ok
[INFO] [stdout] test secret_cmd_framing_fetches_via_a_local_command ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.55s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stderr]      Running tests/secrets_age.rs (/opt/rustwide/target/debug/deps/secrets_age-95bed575d1021f79)
[INFO] [stdout] test decrypt_with_the_wrong_keys_identity_reports_ages_own_error_not_a_panic ... ok
[INFO] [stdout] test encrypt_and_decrypt_read_from_stdin_when_the_value_is_omitted ... ok
[INFO] [stdout] test decrypt_rejects_a_value_that_isnt_enc_framed_at_all ... ok
[INFO] [stdout] test decrypt_rejects_malformed_armor_inside_a_well_framed_enc_token ... ok
[INFO] [stdout] test age_must_be_on_path_in_ci_or_this_files_coverage_silently_vanishes ... ok
[INFO] [stdout] test init_gives_only_a_generic_reminder_outside_any_git_repo ... ok
[INFO] [stdout] test secrets_seal_unseal_round_trip ... ok
[INFO] [stdout] test encrypt_refuses_empty_input_from_both_argv_and_stdin ... ok
[INFO] [stdout] test init_gives_only_a_generic_reminder_when_gitignore_already_covers_the_key ... ok
[INFO] [stdout] test secrets_value_encrypt_decrypt_round_trip ... ok
[INFO] [stdout] test unseal_refuses_to_clobber_an_existing_output_file_without_force ... ok
[INFO] [stdout] test unseal_reports_a_clear_error_for_a_corrupted_enc_file_instead_of_a_panic ... ok
[INFO] [stdout] test init_warns_loudly_when_in_a_git_repo_without_gitignore_coverage ... ok
[INFO] [stdout] test secret_reports_a_clear_error_when_enc_token_has_no_key_to_decrypt_it ... ok
[INFO] [stdout] test secret_transparently_decrypts_an_enc_token_pasted_into_env ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/setup.rs (/opt/rustwide/target/debug/deps/setup-ea5e4e3be573bdcf)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test rejects_an_unknown_proxy_value ... ok
[INFO] [stdout] test requires_at_least_one_host ... ok
[INFO] [stdout] test install_failure_stops_before_network_or_proxy_boot ... ok
[INFO] [stdout] test an_unreachable_host_fails_before_anything_else ... ok
[INFO] [stdout] test missing_runtime_without_yes_is_informational_and_attempts_nothing_else ... ok
[INFO] [stdout] test proxy_caddy_boots_caddy_instead_of_kamal_proxy ... ok
[INFO] [stdout] test creates_the_network_when_the_runtime_is_already_present ... ok
[INFO] [stdout] test dry_run_reports_the_would_install_message_and_still_renders_the_engine_plan ... ok
[INFO] [stdout] test warns_when_a_probed_runtime_is_not_docker ... ok
[INFO] [stdout] test yes_installs_docker_then_proceeds_to_boot_kamal_proxy ... ok
[INFO] [stderr]      Running tests/shell_injection.rs (/opt/rustwide/target/debug/deps/shell_injection-080f70dbe904a449)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.91s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test ecr_login_region_cannot_inject_shell_commands ... ok
[INFO] [stderr]      Running tests/ssh_alias_passthrough.rs (/opt/rustwide/target/debug/deps/ssh_alias_passthrough-a8de20be54f55429)
[INFO] [stdout] test runtime_exec_cmd_container_name_cannot_inject_shell_commands ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.35s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test nrg_ssh_passes_the_alias_through_unresolved ... ok
[INFO] [stderr]      Running tests/ssh_option_injection.rs (/opt/rustwide/target/debug/deps/ssh_option_injection-2c2fa015e91279fe)
[INFO] [stdout] test nrg_logs_passes_the_alias_through_unresolved ... ok
[INFO] [stdout] test nrg_app_exec_passes_the_alias_through_unresolved ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test nrg_ssh_refuses_a_bare_dash_prefixed_host ... ok
[INFO] [stdout] test nrg_ssh_refuses_an_option_shaped_host_without_ever_invoking_real_ssh ... ok
[INFO] [stderr]      Running tests/state_lock.rs (/opt/rustwide/target/debug/deps/state_lock-631e78756cd1c101)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test exec_aborts_on_corrupt_state ... ok
[INFO] [stderr]      Running tests/status.rs (/opt/rustwide/target/debug/deps/status-73e8c29c0874b325)
[INFO] [stdout] test exec_persists_state_atomically ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test status_on_fresh_project_reports_nothing_deployed ... ok
[INFO] [stdout] test status_on_unknown_service_shows_no_deploy_recorded ... ok
[INFO] [stdout] test status_with_no_service_arg_discovers_all_services ... ok
[INFO] [stdout] test status_reports_recorded_service_offline ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.45s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/subdir.rs (/opt/rustwide/target/debug/deps/subdir-5b0d93e1ab0989c8)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test default_file_is_found_from_a_subdir ... ok
[INFO] [stderr]      Running tests/tasks.rs (/opt/rustwide/target/debug/deps/tasks-1449c9fd18a97b87)
[INFO] [stdout] test secrets_resolve_against_project_root_from_a_subdir ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tasks_reports_no_functions_defined_on_an_empty_file ... ok
[INFO] [stdout] test tasks_reports_an_error_when_no_orchestration_file_is_found ... ok
[INFO] [stdout] test tasks_reports_a_compile_error_instead_of_crashing ... ok
[INFO] [stderr]      Running tests/transaction.rs (/opt/rustwide/target/debug/deps/transaction-ce3789d4ee98e025)
[INFO] [stdout] test tasks_lists_every_defined_function_with_its_arg_count ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test failed_transaction_unwinds_via_local_exec ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb", kill_on_drop: false }`
[INFO] [stdout] ce13c89d90d4bcaecdaf68b28378883d7009aa0eaf9fcef65aea82480c3526fb
