[INFO] cloning repository https://github.com/basidiocarp/stipe
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/basidiocarp/stipe" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbasidiocarp%2Fstipe", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbasidiocarp%2Fstipe'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 71e3f669cc671294ad7c45b2db3ab276f47843f5
[INFO] testing basidiocarp/stipe against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbasidiocarp%2Fstipe" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/basidiocarp/stipe
[INFO] finished tweaking git repo https://github.com/basidiocarp/stipe
[INFO] tweaked toml for git repo https://github.com/basidiocarp/stipe written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/basidiocarp/stipe on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/basidiocarp/stipe 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/basidiocarp/spore`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded which v7.0.3
[INFO] [stderr]   Downloaded winnow v1.0.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a86d0ad9a9a65095a15ce891c886be73421a9b4cb6a7143e066f933686f843e5
[INFO] running `Command { std: "docker" "start" "-a" "a86d0ad9a9a65095a15ce891c886be73421a9b4cb6a7143e066f933686f843e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a86d0ad9a9a65095a15ce891c886be73421a9b4cb6a7143e066f933686f843e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a86d0ad9a9a65095a15ce891c886be73421a9b4cb6a7143e066f933686f843e5", kill_on_drop: false }`
[INFO] [stdout] a86d0ad9a9a65095a15ce891c886be73421a9b4cb6a7143e066f933686f843e5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4ad3b54e09cde8fa33a87b9f3ead0be86e0fae48701eaaa8218856af6b157053
[INFO] running `Command { std: "docker" "start" "-a" "4ad3b54e09cde8fa33a87b9f3ead0be86e0fae48701eaaa8218856af6b157053", kill_on_drop: false }`
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling winnow v1.0.1
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling env_home v0.1.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling spore v0.4.9 (https://github.com/basidiocarp/spore?tag=v0.4.9#a899dbd6)
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling which v7.0.3
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling fuzzy-matcher v0.3.7
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling number_prefix v0.4.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling dialoguer v0.12.0
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling tar v0.4.45
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling colored v3.1.1
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling ureq-proto v0.6.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling rustls-webpki v0.103.10
[INFO] [stderr]    Compiling ureq v3.3.0
[INFO] [stderr]    Compiling stipe v0.5.23 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.96s
[INFO] running `Command { std: "docker" "inspect" "4ad3b54e09cde8fa33a87b9f3ead0be86e0fae48701eaaa8218856af6b157053", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ad3b54e09cde8fa33a87b9f3ead0be86e0fae48701eaaa8218856af6b157053", kill_on_drop: false }`
[INFO] [stdout] 4ad3b54e09cde8fa33a87b9f3ead0be86e0fae48701eaaa8218856af6b157053
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e2a65ec34cd8ed5e8414010ff68e241418b56b607c6c330d5c6d6f2331529513
[INFO] running `Command { std: "docker" "start" "-a" "e2a65ec34cd8ed5e8414010ff68e241418b56b607c6c330d5c6d6f2331529513", kill_on_drop: false }`
[INFO] [stderr]    Compiling stipe v0.5.23 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of an `unsafe` block
[INFO] [stdout]    --> src/backup.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 193 | /         unsafe {
[INFO] [stdout] 194 | |             std::env::set_var("STIPE_BACKUP_DIR", tmp.path().join("backups").to_str().unwrap());
[INFO] [stdout] 195 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W unsafe-code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of an `unsafe` block
[INFO] [stdout]    --> src/backup.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 | /             unsafe {
[INFO] [stdout] 211 | |                 std::env::set_var("STIPE_BACKUP_DIR", dir);
[INFO] [stdout] 212 | |             }
[INFO] [stdout]     | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of an `unsafe` block
[INFO] [stdout]    --> src/backup.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 | /             unsafe {
[INFO] [stdout] 215 | |                 std::env::remove_var("STIPE_BACKUP_DIR");
[INFO] [stdout] 216 | |             }
[INFO] [stdout]     | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of an `unsafe` block
[INFO] [stdout]    --> src/backup.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 | /         unsafe {
[INFO] [stdout] 223 | |             std::env::set_var("STIPE_BACKUP_DIR", "/tmp/stipe-test-nonexistent-backup-dir-xyz");
[INFO] [stdout] 224 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of an `unsafe` block
[INFO] [stdout]    --> src/backup.rs:227:9
[INFO] [stdout]     |
[INFO] [stdout] 227 | /         unsafe {
[INFO] [stdout] 228 | |             std::env::remove_var("STIPE_BACKUP_DIR");
[INFO] [stdout] 229 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 11.33s
[INFO] running `Command { std: "docker" "inspect" "e2a65ec34cd8ed5e8414010ff68e241418b56b607c6c330d5c6d6f2331529513", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2a65ec34cd8ed5e8414010ff68e241418b56b607c6c330d5c6d6f2331529513", kill_on_drop: false }`
[INFO] [stdout] e2a65ec34cd8ed5e8414010ff68e241418b56b607c6c330d5c6d6f2331529513
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5c49740c5c630352865e2f7185cf920b73a3c8250ac0ad410237f6a176219d69
[INFO] running `Command { std: "docker" "start" "-a" "5c49740c5c630352865e2f7185cf920b73a3c8250ac0ad410237f6a176219d69", kill_on_drop: false }`
[INFO] [stderr] warning: usage of an `unsafe` block
[INFO] [stderr]    --> src/backup.rs:193:9
[INFO] [stderr]     |
[INFO] [stderr] 193 | /         unsafe {
[INFO] [stderr] 194 | |             std::env::set_var("STIPE_BACKUP_DIR", tmp.path().join("backups").to_str().unwrap());
[INFO] [stderr] 195 | |         }
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: requested on the command line with `-W unsafe-code`
[INFO] [stderr] 
[INFO] [stderr] warning: usage of an `unsafe` block
[INFO] [stderr]    --> src/backup.rs:210:13
[INFO] [stderr]     |
[INFO] [stderr] 210 | /             unsafe {
[INFO] [stderr] 211 | |                 std::env::set_var("STIPE_BACKUP_DIR", dir);
[INFO] [stderr] 212 | |             }
[INFO] [stderr]     | |_____________^
[INFO] [stderr] 
[INFO] [stderr] warning: usage of an `unsafe` block
[INFO] [stderr]    --> src/backup.rs:214:13
[INFO] [stderr]     |
[INFO] [stderr] 214 | /             unsafe {
[INFO] [stderr] 215 | |                 std::env::remove_var("STIPE_BACKUP_DIR");
[INFO] [stderr] 216 | |             }
[INFO] [stderr]     | |_____________^
[INFO] [stderr] 
[INFO] [stderr] warning: usage of an `unsafe` block
[INFO] [stderr]    --> src/backup.rs:222:9
[INFO] [stderr]     |
[INFO] [stderr] 222 | /         unsafe {
[INFO] [stderr] 223 | |             std::env::set_var("STIPE_BACKUP_DIR", "/tmp/stipe-test-nonexistent-backup-dir-xyz");
[INFO] [stderr] 224 | |         }
[INFO] [stderr]     | |_________^
[INFO] [stderr] 
[INFO] [stderr] warning: usage of an `unsafe` block
[INFO] [stderr]    --> src/backup.rs:227:9
[INFO] [stderr]     |
[INFO] [stderr] 227 | /         unsafe {
[INFO] [stderr] 228 | |             std::env::remove_var("STIPE_BACKUP_DIR");
[INFO] [stderr] 229 | |         }
[INFO] [stderr]     | |_________^
[INFO] [stderr] 
[INFO] [stderr] warning: `stipe` (bin "stipe" test) generated 5 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/stipe-71fe04162032d8d3)
[INFO] [stdout] 
[INFO] [stdout] running 220 tests
[INFO] [stdout] test backup::tests::list_backups_empty_when_no_dir ... ok
[INFO] [stdout] test banner::tests::test_render_banner_lines_ansi_fallback_avoids_truecolor_sequences ... ok
[INFO] [stdout] test commands::bin_paths::tests::test_local_bin_dir_prefers_override ... ok
[INFO] [stdout] test banner::tests::test_render_banner_lines_preserves_shape_and_adds_truecolor ... ok
[INFO] [stdout] test banner::tests::test_resolve_banner_color_profile_prefers_plain_for_non_interactive_or_no_color ... ok
[INFO] [stdout] test commands::bin_paths::tests::test_local_bin_dir_uses_home_on_non_windows ... ok
[INFO] [stdout] test commands::codex_notify::tests::test_codex_notify_repair_action_points_at_host_setup ... ok
[INFO] [stdout] test commands::developer_tools::tests::install_advice_mentions_advisory_boundary ... ok
[INFO] [stdout] test commands::developer_tools::tests::unknown_requested_tools_are_reported ... ok
[INFO] [stdout] test commands::developer_tools::tests::parse_version_handles_plain_and_prefixed_output ... ok
[INFO] [stdout] test banner::tests::test_resolve_banner_color_profile_uses_truecolor_when_available ... ok
[INFO] [stdout] test banner::tests::test_resolve_banner_color_profile_falls_back_to_basic_ansi ... ok
[INFO] [stdout] test commands::doctor::package_checks::tests::test_lamella_roots_include_workspace_sibling ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::pinned_tool_versions_table_is_non_empty ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::version_drift_behind_when_versions_differ ... ok
[INFO] [stdout] test commands::codex_notify::tests::test_codex_notify_configured_at_path_detects_required_entries_with_extras ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::version_drift_up_to_date_when_versions_match ... ok
[INFO] [stdout] test commands::doctor::provider_checks::tests::anthropic_key_output_never_contains_key_value ... ok
[INFO] [stdout] test commands::doctor::provider_checks::tests::anthropic_key_missing_when_value_is_empty ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::discover_lamella_skills_deduplicates_by_name ... ok
[INFO] [stdout] test commands::doctor::provider_checks::tests::anthropic_key_unexpected_format_when_prefix_wrong ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::discover_lamella_skills_finds_skill_md_recursively ... ok
[INFO] [stdout] test commands::claude_hooks::tests::test_claude_hooks_configured_at_path_detects_missing_hook ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::version_drift_unknown_when_tool_not_in_pins ... ok
[INFO] [stdout] test commands::codex_notify::tests::test_install_codex_notify_preserves_existing_notify_entries ... ok
[INFO] [stdout] test commands::doctor::tests::test_build_report_includes_repair_actions_for_failures ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_hyphae_db_missing ... ok
[INFO] [stdout] test backup::tests::create_and_load_manifest ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_hyphae_db_exists ... ok
[INFO] [stdout] test commands::doctor::tests::test_config_mentions_servers_detects_required_names ... ok
[INFO] [stdout] test commands::claude_hooks::tests::test_install_claude_hooks_at_path_is_idempotent ... ok
[INFO] [stdout] test commands::doctor::tests::test_codex_notify_adapter_configured_at_path_detects_notify_entry ... ok
[INFO] [stdout] test commands::claude_hooks::tests::test_claude_hooks_configured_at_path_detects_missing_statusline ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_mcp_health_keeps_detail_for_unhealthy_entries_only ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_package_drift_skips_cleanly_without_saved_profile ... ok
[INFO] [stdout] test commands::doctor::provider_checks::tests::anthropic_key_configured_when_prefix_correct ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_provider_health_compacts_healthy_entries ... ok
[INFO] [stdout] test commands::doctor::tests::test_health_check_struct ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_package_inventory_prefers_counts_and_families ... ok
[INFO] [stdout] test commands::doctor::tests::test_config_mentions_servers_detects_codex_toml ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_report_includes_drift_section ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_report_deep_widens_human_sections ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_report_includes_hook_paths_section ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_report_snapshot_for_failure ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_report_includes_runtime_policy_section ... ok
[INFO] [stdout] test commands::doctor::tests::test_render_report_summarizes_host_checks_before_detail ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::manual_tools_detect_standalone_repo_roots ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::manual_tools_detect_workspace_sibling_repos ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::parse_initialize_response_accepts_expected_server ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::parse_initialize_response_rejects_wrong_server ... ok
[INFO] [stdout] test commands::doctor::tests::test_optional_canopy_missing_is_not_a_failure ... ok
[INFO] [stdout] test commands::doctor::tests::test_task_linked_council_check_passes_when_all_prereqs_exist ... ok
[INFO] [stdout] test commands::doctor::tests::test_task_linked_council_check_reports_missing_prereqs ... ok
[INFO] [stdout] test commands::host::tests::test_host_mode_mappings_are_explicit ... ok
[INFO] [stdout] test commands::host::tests::test_doctor_checks_reflect_inventory_entry ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::probe_mcp_server_accepts_initialize_response ... ok
[INFO] [stdout] test commands::host::tests::test_render_doctor_skips_duplicate_optional_follow_up_in_additional_actions ... ok
[INFO] [stdout] test commands::host::tests::test_render_doctor_snapshot_for_failure ... ok
[INFO] [stdout] test commands::doctor::server_checks::tests::collect_mcp_server_health_returns_one_entry_per_server ... ok
[INFO] [stdout] test commands::doctor::server_checks::tests::mcp_server_health_check_completes_without_hanging ... ok
[INFO] [stdout] test commands::doctor::plugin_inventory_checks::tests::collect_plugin_inventory_returns_without_panicking ... ok
[INFO] [stdout] test commands::doctor::server_checks::tests::mcp_server_health_status_is_one_of_three_categories ... ok
[INFO] [stdout] test commands::host::tests::test_inventory_entry_uses_shared_host_descriptor_metadata ... ok
[INFO] [stdout] test commands::doctor::provider_checks::tests::volva_backend_config_check_does_not_panic ... ok
[INFO] [stdout] test commands::doctor::provider_checks::tests::collect_api_key_health_returns_two_entries ... ok
[INFO] [stdout] test commands::host::tests::test_render_setup_preview_keeps_host_level_next_step ... ok
[INFO] [stdout] test commands::host_policy::tests::test_local_scope_is_not_supported_for_codex_notify ... ok
[INFO] [stdout] test commands::host_policy::tests::test_install_profile_repair_action_keeps_cursor_distinct ... ok
[INFO] [stdout] test commands::host_policy::tests::test_supported_host_modes_have_explicit_descriptors ... ok
[INFO] [stdout] test commands::host_policy::tests::test_supported_scope_hint_is_stable_for_host_modes ... ok
[INFO] [stdout] test commands::init::baseline::tests::checksum_bytes_changes_with_content ... ok
[INFO] [stdout] test commands::host_policy::tests::test_claude_hook_settings_paths_follow_scope ... ok
[INFO] [stdout] test commands::init::tests::test_build_plan_does_not_switch_to_codex_profile_for_non_codex_targets ... ok
[INFO] [stdout] test commands::doctor::tests::test_codex_notify_helpers_are_shared ... ok
[INFO] [stdout] test commands::init::baseline::tests::evaluate_drift_reports_missing_mcp_registration ... ok
[INFO] [stdout] test commands::init::tests::test_build_plan_contains_repair_actions ... ok
[INFO] [stdout] test commands::init::baseline::tests::evaluate_drift_reports_modified_config_file ... ok
[INFO] [stdout] test commands::host_policy::tests::test_codex_notify_paths_follow_scope ... ok
[INFO] [stdout] test commands::host_policy::tests::test_host_modes_resolve_config_paths_via_clients ... ok
[INFO] [stdout] test commands::init::tests::test_mcp_registration_step_skips_broken_tools_with_repair_guidance ... ok
[INFO] [stdout] test commands::host::tests::test_render_list_snapshot_includes_known_sections ... ok
[INFO] [stdout] test commands::host_policy::tests::test_host_setup_repair_action_points_at_new_host_surface ... ok
[INFO] [stdout] test commands::init::tests::test_claude_hooks_step_skips_broken_cortina_with_repair_guidance ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::missing_volva_has_an_install_repair_action ... ok
[INFO] [stdout] test commands::init::tests::test_render_embedded_preview_omits_footer_actions ... ok
[INFO] [stdout] test commands::init::tests::test_codex_notify_helpers_use_expected_values ... ok
[INFO] [stdout] test commands::init::tests::test_build_plan_uses_host_setup_for_supported_target_hosts ... ok
[INFO] [stdout] test commands::init::tests::test_build_plan_prefers_codex_profile_for_codex_targets ... ok
[INFO] [stdout] test commands::init::tests::test_build_plan_prefers_codex_profile_when_codex_is_detected_by_default ... ok
[INFO] [stdout] test commands::init::tests::test_render_preview_lists_detected_clients_when_unfiltered ... ok
[INFO] [stdout] test commands::init::tests::test_render_preview_mentions_target_client_and_actions ... ok
[INFO] [stdout] test commands::init::tests::test_render_preview_mentions_claude_hooks_when_cortina_is_available ... ok
[INFO] [stdout] test commands::init::tests::test_render_preview_snapshot_for_cursor_target ... ok
[INFO] [stdout] test commands::init::tests::test_render_preview_mentions_codex_notify_adapter ... ok
[INFO] [stdout] test commands::install::release::tests::parse_initialize_response_requires_protocol_version ... ok
[INFO] [stdout] test commands::init::tests::test_render_preview_reports_multiple_detected_hosts ... ok
[INFO] [stdout] test commands::install::tests::test_find_matching_asset_missing_platform ... ok
[INFO] [stdout] test commands::install::tests::test_find_matching_asset_requires_tar_gz ... ok
[INFO] [stdout] test commands::install::tests::test_find_matching_asset_success ... ok
[INFO] [stdout] test commands::install::tests::test_format_install_preview_reports_existing_and_missing_tools ... ok
[INFO] [stdout] test commands::install::tests::test_install_run_honors_project_runtime_policy_deny ... ok
[INFO] [stdout] test commands::install::tests::test_install_run_fails_when_project_runtime_policy_cannot_load ... ok
[INFO] [stdout] test commands::install::tests::test_install_run_prefers_project_runtime_policy_over_user_policy ... ok
[INFO] [stdout] test commands::install::tests::test_extract_tarball_with_binary ... ok
[INFO] [stdout] test commands::install::tests::test_profile_config_round_trips ... ok
[INFO] [stdout] test commands::host::tests::test_codex_doctor_report_includes_notify_repair ... ok
[INFO] [stdout] test commands::init::tests::test_targeted_claude_plan_does_not_pull_in_codex_repairs_from_detected_hosts ... ok
[INFO] [stdout] test commands::install::tests::test_install_run_honors_user_runtime_policy_deny_without_project_override ... ok
[INFO] [stdout] test commands::install::release::tests::verify_functional_checks_expected_output ... ok
[INFO] [stdout] test commands::install::tests::test_extract_tarball_missing_binary ... ok
[INFO] [stdout] test commands::install::tests::test_render_install_success_summary_stages_next_step ... ok
[INFO] [stdout] test commands::install::tests::test_profile_tools_cover_expected_sets ... ok
[INFO] [stdout] test commands::install::tests::test_render_embedded_profile_install_preview_omits_next_step ... ok
[INFO] [stdout] test commands::install::tests::test_render_install_preview_snapshot_for_explicit_tools ... ok
[INFO] [stdout] test commands::install::tests::test_profile_mode_labels_make_codex_explicit ... ok
[INFO] [stdout] test commands::install::tests::test_render_install_preview_snapshot_for_interactive_mode ... ok
[INFO] [stdout] test commands::install::tests::test_render_install_success_summary_mentions_manual_follow_up_when_needed ... ok
[INFO] [stdout] test commands::install::tests::test_render_profile_install_preview_snapshot ... ok
[INFO] [stdout] test commands::install::tests::test_resolve_requested_tools_handles_all_mode ... ok
[INFO] [stdout] test commands::install::tests::test_selected_profile_for_persistence_keeps_successful_non_developer_profile ... ok
[INFO] [stdout] test commands::install::tests::test_resolve_requested_tools_includes_manual_profile_members ... ok
[INFO] [stdout] test commands::install::tests::test_resolve_requested_tools_uses_profile_and_dedupes_extras ... ok
[INFO] [stdout] test commands::package_repair::tests::test_audit_event_includes_rollback_details_on_failure ... ok
[INFO] [stdout] test commands::install::tests::test_platform_key_known ... ok
[INFO] [stdout] test commands::package_repair::tests::test_package_targets_for_claude_profile_stay_on_claude_surface ... ok
[INFO] [stdout] test commands::package_repair::tests::test_package_targets_for_codex_profile_stay_on_codex_surface ... ok
[INFO] [stdout] test commands::install::tests::test_install_run_persists_profile_and_approval_memory_on_success ... ok
[INFO] [stdout] test commands::package_repair::tests::test_audit_log_best_effort_returns_warning_when_write_fails ... ok
[INFO] [stdout] test commands::install::tests::test_selected_profile_for_persistence_skips_failed_installs ... ok
[INFO] [stdout] test commands::package_repair::tests::test_missing_backup_is_treated_as_issue_in_failure_messaging ... ok
[INFO] [stdout] test commands::package_repair::tests::test_lamella_invocations_for_full_profile_include_both_surfaces ... ok
[INFO] [stdout] test commands::install::release::tests::verify_mcp_handshake_accepts_initialize_round_trip ... ok
[INFO] [stdout] test commands::package_repair::tests::test_sibling_backup_path_includes_timestamp_suffix ... ok
[INFO] [stdout] test commands::package_repair::tests::test_supports_profile_only_for_host_package_surfaces ... ok
[INFO] [stdout] test commands::package_repair::tests::test_rollback_decisions_restore_and_preserve_expected_paths ... ok
[INFO] [stdout] test commands::package_repair::tests::test_lamella_invocations_for_codex_profile ... ok
[INFO] [stdout] test commands::provider::tests::provider_list_always_includes_anthropic ... ok
[INFO] [stdout] test commands::package_repair::tests::test_resolve_profile_prefers_explicit_then_saved_then_detected_default ... ok
[INFO] [stdout] test commands::package_repair::tests::test_rollback_summary_lines_call_out_manual_inspection_when_needed ... ok
[INFO] [stdout] test commands::provider::tests::provider_list_builds_without_panic ... ok
[INFO] [stdout] test commands::package_repair::tests::test_lamella_root_candidates_include_workspace_sibling ... ok
[INFO] [stdout] test commands::package_repair::tests::test_cursor_profile_has_no_package_repair_surface ... ok
[INFO] [stdout] test commands::provider::tests::validate_anthropic_key_accepts_correct_prefix ... ok
[INFO] [stdout] test commands::provider::tests::provider_list_api_key_field_never_shows_key_value ... ok
[INFO] [stdout] test commands::install::tests::test_split_requested_tools_keeps_manual_members_out_of_managed_installs ... ok
[INFO] [stdout] test commands::provider::tests::run_setup_unknown_provider_errors ... ok
[INFO] [stdout] test commands::package_repair::tests::test_prepare_backups_roll_back_partial_state_when_later_backup_fails ... ok
[INFO] [stdout] test commands::provider::tests::volva_config_path_is_under_home ... ok
[INFO] [stdout] test commands::provider::tests::validate_anthropic_key_rejects_empty ... ok
[INFO] [stdout] test commands::provider::tests::provider_list_status_values_are_known ... ok
[INFO] [stdout] test commands::provider::tests::validate_anthropic_key_rejects_wrong_prefix ... ok
[INFO] [stdout] test commands::runtime_policy::tests::test_enforce_install_profile_policy_blocks_load_errors ... ok
[INFO] [stdout] test commands::runtime_policy::tests::test_enforce_install_profile_policy_blocks_remembered_deny ... ok
[INFO] [stdout] test commands::runtime_policy::tests::test_project_scope_takes_precedence_over_user_scope ... ok
[INFO] [stdout] test commands::runtime_policy::tests::test_render_install_policy_lines_mentions_approval_memory ... ok
[INFO] [stdout] test commands::tool_registry::probe::tests::supported_ecosystem_binaries_map_to_spore_tools ... ok
[INFO] [stdout] test commands::tool_registry::probe::tests::unmanaged_binaries_stay_outside_spore_mapping ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_doctor_specs_include_optional_canopy_and_volva ... ok
[INFO] [stdout] test commands::self_update::tests::replacement_path_uses_neighbor_file ... ok
[INFO] [stdout] test commands::self_update::tests::normalize_version_trims_release_prefix ... ok
[INFO] [stdout] test commands::runtime_policy::tests::test_runtime_policy_round_trips_remembered_decisions ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_install_profiles_only_reference_installable_tools ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_mcp_serve_specs_match_expected_tools ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_profile_tools_cover_expected_sets ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_release_archive_binaries_include_managed_tools_and_stipe ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_smoke_test_specs_match_expected_tools ... ok
[INFO] [stdout] test commands::tool_registry::probe::tests::verify_levels_are_ordered_from_shallow_to_deep ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_ecosystem_and_status_views_only_reference_visible_tools ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_install_all_and_update_all_cover_same_managed_release_tools ... ok
[INFO] [stdout] test commands::uninstall::tests::test_build_uninstall_targets_marks_existing_files ... ok
[INFO] [stdout] test commands::uninstall::tests::test_render_preview_output_snapshot ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_volva_has_the_intended_operator_surface_membership ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_optional_doctor_tools_have_install_hints ... ok
[INFO] [stdout] test commands::tool_registry::tests::test_status_specs_include_optional_and_managed_tools ... ok
[INFO] [stdout] test commands::uninstall::tests::test_render_uninstall_preview_mentions_manual_cleanup ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_collect_detected_clients_preserves_inventory_order ... ok
[INFO] [stdout] test commands::uninstall::tests::test_resolve_uninstall_tools_all_mode_includes_stipe ... ok
[INFO] [stdout] test commands::update::tests::installed_profile_tools_only_keep_installed_or_broken_members ... ok
[INFO] [stdout] test commands::update::tests::installed_profile_tools_with_helper_keeps_only_present_tools ... ok
[INFO] [stdout] test commands::update::tests::unique_tools_appends_explicit_extras_without_duplicates ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_client_flag_roundtrip ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_client_name_not_empty ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_collect_detected_clients_does_not_map_vscode_to_cline ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_collect_detected_clients_keeps_claude_hybrid_detection ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_collect_detected_clients_keeps_continue_outside_shared_overlap ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_ecosystem_special_case_clients_stay_explicit ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_from_flag_aliases ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_print_generic_config ... ok
[INFO] [stdout] test ecosystem::status::tests::test_render_tool_status_snapshot_for_installed ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_shared_host_config_paths_resolve_via_spore ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_shared_editor_mapping_covers_supported_shared_hosts ... ok
[INFO] [stdout] test ecosystem::status::tests::test_installed_version_does_not_panic_for_optional_tool ... ok
[INFO] [stdout] test ecosystem::status::tests::test_render_status_report_snapshot ... ok
[INFO] [stdout] test ecosystem::status::tests::test_render_tool_status_snapshot_for_optional_missing ... ok
[INFO] [stdout] test ecosystem::clients::tests::test_detect_clients_does_not_panic ... ok
[INFO] [stdout] test lockfile::tests::acquire_and_release_lock ... ok
[INFO] [stdout] test tests::test_doctor_accepts_deep_flag ... ok
[INFO] [stdout] test lockfile::tests::stale_lock_can_be_reclaimed ... ok
[INFO] [stdout] test ecosystem::status::tests::test_claude_is_available_does_not_panic ... ok
[INFO] [stdout] test ecosystem::status::tests::test_discover_codex_version_does_not_panic ... ok
[INFO] [stdout] test tests::test_install_accepts_developer_profile_alias ... ok
[INFO] [stdout] test tests::test_init_accepts_repair_flag ... ok
[INFO] [stdout] test tests::test_install_accepts_full_profile_alias ... ok
[INFO] [stdout] test tests::test_install_accepts_standard_profile ... ok
[INFO] [stdout] test tests::test_init_accepts_force_alias ... ok
[INFO] [stdout] test verify::tests::completeness_report_not_all_passed_when_one_fails ... ok
[INFO] [stdout] test verify::tests::check_completeness_binary_absent_when_not_installed ... ok
[INFO] [stdout] test verify::tests::completeness_report_all_passed_when_all_true ... ok
[INFO] [stdout] test tests::test_doctor_accepts_developer_flag ... ok
[INFO] [stdout] test commands::developer_tools::tests::developer_profile_tools_cover_all_tiers ... ok
[INFO] [stdout] test commands::doctor::tests::test_build_report_can_include_developer_tools ... ok
[INFO] [stdout] test tests::test_self_update_check_subcommand_parses ... ok
[INFO] [stdout] test tests::test_package_accepts_profile_and_dry_run ... ok
[INFO] [stdout] test commands::doctor::tests::test_build_report_includes_host_inventory_checks ... ok
[INFO] [stdout] test tests::test_removed_setup_shim_is_rejected ... ok
[INFO] [stdout] test verify::tests::epoch_to_ymd_hms_known_epoch ... ok
[INFO] [stdout] test tests::test_update_accepts_profile_flag ... ok
[INFO] [stdout] test verify::tests::check_completeness_binary_present_uses_install_dir ... ok
[INFO] [stdout] test verify::tests::ownership_state_roundtrips_json ... ok
[INFO] [stdout] test commands::doctor::tool_checks::tests::probe_mcp_server_times_out_cleanly ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 220 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5c49740c5c630352865e2f7185cf920b73a3c8250ac0ad410237f6a176219d69", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5c49740c5c630352865e2f7185cf920b73a3c8250ac0ad410237f6a176219d69", kill_on_drop: false }`
[INFO] [stdout] 5c49740c5c630352865e2f7185cf920b73a3c8250ac0ad410237f6a176219d69
