[INFO] fetching crate souk-core 0.1.2... [INFO] testing souk-core-0.1.2 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate souk-core 0.1.2 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate souk-core 0.1.2 [INFO] finished tweaking crates.io crate souk-core 0.1.2 [INFO] tweaked toml for crates.io crate souk-core 0.1.2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate souk-core 0.1.2 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate souk-core 0.1.2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3113319a6b6f698d50b784816d89684379e5ef5b0f6c7114be66ba5f4b7e8bc6 [INFO] running `Command { std: "docker" "start" "-a" "3113319a6b6f698d50b784816d89684379e5ef5b0f6c7114be66ba5f4b7e8bc6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3113319a6b6f698d50b784816d89684379e5ef5b0f6c7114be66ba5f4b7e8bc6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3113319a6b6f698d50b784816d89684379e5ef5b0f6c7114be66ba5f4b7e8bc6", kill_on_drop: false }` [INFO] [stdout] 3113319a6b6f698d50b784816d89684379e5ef5b0f6c7114be66ba5f4b7e8bc6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f564db6f474f7c7e8dacde05a4f689c947613687cb1afb0ba7fda5b448b4106d [INFO] running `Command { std: "docker" "start" "-a" "f564db6f474f7c7e8dacde05a4f689c947613687cb1afb0ba7fda5b448b4106d", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling native-tls v0.2.18 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling h2 v0.4.13 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling souk-core v0.1.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 43.93s [INFO] running `Command { std: "docker" "inspect" "f564db6f474f7c7e8dacde05a4f689c947613687cb1afb0ba7fda5b448b4106d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f564db6f474f7c7e8dacde05a4f689c947613687cb1afb0ba7fda5b448b4106d", kill_on_drop: false }` [INFO] [stdout] f564db6f474f7c7e8dacde05a4f689c947613687cb1afb0ba7fda5b448b4106d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d270aa8f528577ae05482c184a6446209766a03f5e37833007cdaba9361aedab [INFO] running `Command { std: "docker" "start" "-a" "d270aa8f528577ae05482c184a6446209766a03f5e37833007cdaba9361aedab", kill_on_drop: false }` [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling insta v1.46.3 [INFO] [stderr] Compiling souk-core v0.1.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.58s [INFO] running `Command { std: "docker" "inspect" "d270aa8f528577ae05482c184a6446209766a03f5e37833007cdaba9361aedab", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d270aa8f528577ae05482c184a6446209766a03f5e37833007cdaba9361aedab", kill_on_drop: false }` [INFO] [stdout] d270aa8f528577ae05482c184a6446209766a03f5e37833007cdaba9361aedab [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 97cff48b12020c1c65e5c865fb4ad6298e1f640778e9ae4b51bdd58b4e9b2bbc [INFO] running `Command { std: "docker" "start" "-a" "97cff48b12020c1c65e5c865fb4ad6298e1f640778e9ae4b51bdd58b4e9b2bbc", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/souk_core-9e624d9b072019d5) [INFO] [stdout] [INFO] [stdout] running 215 tests [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_finds_lefthook_yml ... ok [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_finds_husky ... ok [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_finds_lefthook_yaml ... ok [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_finds_overcommit ... ok [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_finds_hk ... ok [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_finds_simple_git_hooks ... ok [INFO] [stdout] test ci::install_hooks::tests::hook_manager_display ... ok [INFO] [stdout] test ci::install_hooks::tests::hook_manager_name_returns_expected_values ... ok [INFO] [stdout] test ci::install_hooks::tests::install_hk_appends_note ... ok [INFO] [stdout] test ci::install_hooks::tests::install_husky_creates_hook_files ... ok [INFO] [stdout] test ci::install_hooks::tests::install_husky_skips_if_already_configured ... ok [INFO] [stdout] test ci::install_hooks::tests::install_lefthook_skips_if_already_configured ... ok [INFO] [stdout] test ci::install_hooks::tests::install_husky_appends_to_existing_hooks ... ok [INFO] [stdout] test ci::install_hooks::tests::install_lefthook_appends_to_existing ... ok [INFO] [stdout] test ci::install_hooks::tests::detect_hook_manager_returns_none_for_empty_dir ... ok [INFO] [stdout] test ci::install_hooks::tests::install_lefthook_creates_config ... ok [INFO] [stdout] test ci::install_hooks::tests::install_native_hooks_creates_hook_files ... ok [INFO] [stdout] test ci::install_hooks::tests::install_overcommit_appends_note ... ok [INFO] [stdout] test ci::install_workflows::tests::ci_provider_name_returns_expected_values ... ok [INFO] [stdout] test ci::install_hooks::tests::install_simple_git_hooks_creates_new_file ... ok [INFO] [stdout] test ci::install_workflows::tests::detect_ci_provider_finds_circleci ... ok [INFO] [stdout] test ci::install_workflows::tests::detect_ci_provider_finds_buildkite ... ok [INFO] [stdout] test ci::install_workflows::tests::ci_provider_display ... ok [INFO] [stdout] test ci::install_workflows::tests::detect_ci_provider_finds_gitlab ... ok [INFO] [stdout] test ci::install_workflows::tests::detect_ci_provider_github_takes_priority_over_others ... ok [INFO] [stdout] test ci::install_workflows::tests::detect_ci_provider_returns_none_for_empty_dir ... ok [INFO] [stdout] test ci::install_workflows::tests::install_buildkite_config_creates_pipeline ... ok [INFO] [stdout] test ci::install_hooks::tests::install_simple_git_hooks_merges_into_existing ... ok [INFO] [stdout] test ci::install_workflows::tests::detect_ci_provider_finds_github_workflows ... ok [INFO] [stdout] test ci::install_workflows::tests::install_github_workflow_creates_workflow_file ... ok [INFO] [stdout] test ci::install_workflows::tests::install_github_workflow_skips_if_exists ... ok [INFO] [stdout] test ci::install_workflows::tests::install_gitlab_config_appends_to_existing ... ok [INFO] [stdout] test ci::install_workflows::tests::install_gitlab_config_creates_file ... ok [INFO] [stdout] test ci::install_workflows::tests::install_circleci_config_creates_config_file ... ok [INFO] [stdout] test ci::install_workflows::tests::install_workflow_dispatches_to_github_for_compatible_providers ... ok [INFO] [stdout] test discovery::tests::discover_not_found ... ok [INFO] [stdout] test discovery::tests::load_marketplace_config_default_plugin_root ... ok [INFO] [stdout] test error::tests::diagnostic_builder_pattern ... ok [INFO] [stdout] test discovery::tests::discover_from_project_root ... ok [INFO] [stdout] test discovery::tests::load_marketplace_config_resolves_paths ... ok [INFO] [stdout] test discovery::tests::discover_from_subdirectory ... ok [INFO] [stdout] test ci::hooks::tests::is_marketplace_staged_returns_true_when_staged ... ok [INFO] [stdout] test ops::add::tests::add_multiple_plugins ... ok [INFO] [stdout] test error::tests::validation_result_merge ... ok [INFO] [stdout] test error::tests::validation_result_tracks_errors_and_warnings ... ok [INFO] [stdout] test ci::hooks::tests::pre_commit_returns_empty_when_no_staged_changes ... ok [INFO] [stdout] test ci::hooks::tests::pre_commit_validates_staged_plugin ... ok [INFO] [stdout] test ops::add::tests::add_cleans_up_copied_dir_on_marketplace_failure ... ok [INFO] [stdout] test ops::add::tests::add_with_skip_strategy ... ok [INFO] [stdout] test ops::add::tests::dry_run_does_not_modify_files ... ok [INFO] [stdout] test ops::add::tests::copy_dir_recursive_rejects_symlinks ... ok [INFO] [stdout] test ops::atomic::tests::backup_is_created_on_new ... ok [INFO] [stdout] test ci::hooks::tests::detect_changed_plugins_deduplicates ... ok [INFO] [stdout] test ci::install_workflows::tests::install_circleci_config_appends_to_existing ... ok [INFO] [stdout] test ci::hooks::tests::pre_push_catches_invalid_plugin ... ok [INFO] [stdout] test ops::add::tests::add_with_rename_strategy ... ok [INFO] [stdout] test ops::add::tests::add_with_conflict_abort_strategy ... ok [INFO] [stdout] test ci::hooks::tests::pre_push_validates_entire_marketplace ... ok [INFO] [stdout] test ci::hooks::tests::detect_changed_plugins_with_no_staged_files ... ok [INFO] [stdout] test ci::hooks::tests::pre_commit_catches_invalid_staged_plugin ... ok [INFO] [stdout] test ops::atomic::tests::guard_on_nonexistent_file_commit_is_noop ... ok [INFO] [stdout] test ops::atomic::tests::drop_after_commit_does_not_restore ... ok [INFO] [stdout] test ops::atomic::tests::guard_on_nonexistent_file_is_noop ... ok [INFO] [stdout] test ops::atomic::tests::rapid_guards_produce_unique_backups ... ok [INFO] [stdout] test ops::init::tests::scaffold_creates_marketplace_structure ... ok [INFO] [stdout] test ops::atomic::tests::drop_cleans_up_backup_file ... ok [INFO] [stdout] test ops::init::tests::scaffold_creates_parent_directories_recursively ... ok [INFO] [stdout] test ops::init::tests::scaffold_respects_custom_plugin_root ... ok [INFO] [stdout] test ops::init::tests::scaffold_default_plugin_root ... ok [INFO] [stdout] test ops::init::tests::scaffold_returns_error_if_marketplace_already_exists ... ok [INFO] [stdout] test ops::atomic::tests::backup_path_includes_original_extension ... ok [INFO] [stdout] test ops::init::tests::scaffold_plugin_root_without_dot_slash_prefix ... ok [INFO] [stdout] test ops::add::tests::add_single_plugin_to_empty_marketplace ... ok [INFO] [stdout] test ops::prune::tests::prune_apply_deletes_orphans ... ok [INFO] [stdout] test ops::prune::tests::prune_dry_run_lists_orphans ... ok [INFO] [stdout] test ci::hooks::tests::pre_commit_validates_marketplace_when_staged ... ok [INFO] [stdout] test ops::prune::tests::prune_no_orphans ... ok [INFO] [stdout] test ops::remove::tests::remove_empty_list_is_noop ... ok [INFO] [stdout] test ops::atomic::tests::multiple_guards_on_different_files ... ok [INFO] [stdout] test ops::add::tests::external_plugin_copy ... ok [INFO] [stdout] test ops::atomic::tests::drop_restores_original_on_failure ... ok [INFO] [stdout] test ops::add::tests::add_with_replace_strategy ... ok [INFO] [stdout] test ops::atomic::tests::commit_removes_backup ... ok [INFO] [stdout] test ops::add::tests::external_plugin_no_copy ... ok [INFO] [stdout] test ops::remove::tests::remove_existing_plugin ... ok [INFO] [stdout] test ops::remove::tests::remove_external_plugin_delete_allowed_with_flag ... ok [INFO] [stdout] test ops::remove::tests::remove_internal_plugin_delete_works_without_flag ... ok [INFO] [stdout] test ops::remove::tests::remove_external_plugin_delete_refused_without_flag ... ok [INFO] [stdout] test ops::remove::tests::remove_multiple_plugins ... ok [INFO] [stdout] test ops::remove::tests::remove_without_delete_keeps_directory ... ok [INFO] [stdout] test ops::remove::tests::remove_nonexistent_plugin_returns_error ... ok [INFO] [stdout] test ci::hooks::tests::is_marketplace_staged_returns_false_when_not_staged ... ok [INFO] [stdout] test ops::remove::tests::remove_with_delete_removes_directory ... ok [INFO] [stdout] test ops::update::tests::update_bump_rolls_back_plugin_json_on_validation_failure ... ok [INFO] [stdout] test ci::hooks::tests::detect_changed_plugins_with_staged_plugin_file ... ok [INFO] [stdout] test resolution::plugin::tests::resolve_by_plugin_root_relative ... ok [INFO] [stdout] test resolution::skill::tests::enumerate_empty_skills ... ok [INFO] [stdout] test ops::update::tests::update_with_major_bumps_version ... ok [INFO] [stdout] test ops::update::tests::update_detects_rename_collision ... ok [INFO] [stdout] test ops::update::tests::update_with_patch_bumps_version ... ok [INFO] [stdout] test resolution::plugin::tests::path_to_source_internal ... ok [INFO] [stdout] test review::marketplace::tests::build_prompt_contains_marketplace_json ... ok [INFO] [stdout] test review::marketplace::tests::build_prompt_includes_plugin_summaries ... ok [INFO] [stdout] test resolution::skill::tests::resolve_not_found ... ok [INFO] [stdout] test ops::update::tests::update_multiple_plugins ... ok [INFO] [stdout] test resolution::skill::tests::resolve_by_frontmatter_name ... ok [INFO] [stdout] test resolution::plugin::tests::path_to_source_external ... ok [INFO] [stdout] test resolution::plugin::tests::resolve_by_direct_path ... ok [INFO] [stdout] test resolution::plugin::tests::resolve_by_marketplace_name ... ok [INFO] [stdout] test ops::update::tests::update_with_minor_bumps_version ... ok [INFO] [stdout] test ops::update::tests::update_refreshes_metadata_from_disk ... ok [INFO] [stdout] test resolution::plugin::tests::resolve_not_found ... ok [INFO] [stdout] test ops::update::tests::update_detects_intra_batch_rename_collision ... ok [INFO] [stdout] test resolution::skill::tests::resolve_by_dir_name ... ok [INFO] [stdout] test resolution::skill::tests::enumerate_returns_all_skills ... ok [INFO] [stdout] test ops::update::tests::update_nonexistent_plugin_returns_error ... ok [INFO] [stdout] test review::plugin::tests::build_prompt_includes_extends_when_present ... ok [INFO] [stdout] test review::plugin::tests::build_prompt_omits_optional_sections_when_absent ... ok [INFO] [stdout] test review::plugin::tests::review_plugin_missing_plugin_json_returns_error ... ok [INFO] [stdout] test review::plugin::tests::review_plugin_minimal_plugin_no_extras ... ok [INFO] [stdout] test review::plugin::tests::build_prompt_contains_plugin_json ... ok [INFO] [stdout] test review::plugin::tests::build_prompt_includes_skills_when_present ... ok [INFO] [stdout] test review::marketplace::tests::review_marketplace_handles_unreadable_plugin_manifest ... ok [INFO] [stdout] test review::plugin::tests::review_plugin_builds_report ... ok [INFO] [stdout] test review::plugin::tests::current_date_string_has_correct_format ... ok [INFO] [stdout] test review::marketplace::tests::review_marketplace_works_with_empty_marketplace ... ok [INFO] [stdout] test review::plugin::tests::review_plugin_saves_report_to_output_dir ... ok [INFO] [stdout] test review::plugin::tests::build_prompt_requests_all_review_sections ... ok [INFO] [stdout] test review::marketplace::tests::review_marketplace_builds_prompt_from_plugins ... ok [INFO] [stdout] test review::marketplace::tests::review_marketplace_saves_report_to_output_dir ... ok [INFO] [stdout] test review::plugin::tests::build_prompt_includes_readme_when_present ... ok [INFO] [stdout] test review::provider::tests::mock_provider_returns_expected_response ... ok [INFO] [stdout] test review::provider::tests::mock_provider_name_and_model ... ok [INFO] [stdout] test review::provider::tests::provider_trait_is_object_safe ... ok [INFO] [stdout] test review::skill::tests::build_prompt_includes_skill_name_and_content ... ok [INFO] [stdout] test review::skill::tests::review_plugin_with_no_skills_returns_error ... ok [INFO] [stdout] test types::marketplace::tests::deserialize_marketplace_json ... ok [INFO] [stdout] test review::skill::tests::review_specific_skill_by_dir_name ... ok [INFO] [stdout] test review::skill::tests::review_all_skills_reviews_every_skill ... ok [INFO] [stdout] test review::skill::tests::review_no_skills_specified_and_not_all_lists_available ... ok [INFO] [stdout] test review::skill::tests::review_multiple_skills_by_name ... ok [INFO] [stdout] test review::skill::tests::review_nonexistent_skill_returns_error ... ok [INFO] [stdout] test review::skill::tests::review_specific_skill_by_display_name ... ok [INFO] [stdout] test types::marketplace::tests::normalize_plugin_root_without_dot_slash ... ok [INFO] [stdout] test types::marketplace::tests::serialize_round_trip ... ok [INFO] [stdout] test types::plugin::tests::null_name_returns_none ... ok [INFO] [stdout] test types::skill::tests::parse_frontmatter_name ... ok [INFO] [stdout] test types::skill::tests::no_frontmatter ... ok [INFO] [stdout] test types::skill::tests::empty_name_returns_none ... ok [INFO] [stdout] test types::plugin::tests::deserialize_plugin_json ... ok [INFO] [stdout] test types::plugin::tests::missing_fields_are_none ... ok [INFO] [stdout] test types::marketplace::tests::default_plugin_root_when_missing ... ok [INFO] [stdout] test types::skill::tests::frontmatter_without_name ... ok [INFO] [stdout] test types::skill::tests::parse_frontmatter_quoted_name ... ok [INFO] [stdout] test types::version_constraint::tests::invalid_constraints ... ok [INFO] [stdout] test review::skill::tests::review_saves_reports_to_output_dir ... ok [INFO] [stdout] test validation::extends::tests::invalid_json ... ok [INFO] [stdout] test validation::extends::tests::section_must_be_object ... ok [INFO] [stdout] test validation::extends::tests::missing_file_is_ok ... ok [INFO] [stdout] test types::version_constraint::tests::valid_constraints ... ok [INFO] [stdout] test validation::extends::tests::object_value_without_version_defaults_to_star ... ok [INFO] [stdout] test validation::extends::tests::invalid_top_level_key ... ok [INFO] [stdout] test validation::extends::tests::non_string_non_object_value ... ok [INFO] [stdout] test validation::marketplace::tests::completeness_filesystem_not_in_marketplace ... ok [INFO] [stdout] test validation::marketplace::tests::empty_marketplace_is_valid ... ok [INFO] [stdout] test validation::marketplace::tests::completeness_marketplace_not_in_filesystem ... ok [INFO] [stdout] test validation::extends::tests::valid_extends ... ok [INFO] [stdout] test validation::marketplace::tests::duplicate_names ... ok [INFO] [stdout] test validation::extends::tests::invalid_version_constraint ... ok [INFO] [stdout] test validation::marketplace::tests::find_orphaned_dirs_empty_when_all_registered ... ok [INFO] [stdout] test validation::marketplace::tests::invalid_version ... ok [INFO] [stdout] test validation::plugin::tests::missing_required_fields ... ok [INFO] [stdout] test validation::marketplace::tests::find_orphaned_dirs_returns_correct_paths ... ok [INFO] [stdout] test validation::marketplace::tests::skip_plugins_skips_individual_validation ... ok [INFO] [stdout] test validation::plugin::tests::missing_plugin_json ... ok [INFO] [stdout] test validation::plugin::tests::invalid_semver ... ok [INFO] [stdout] test validation::plugin::tests::missing_claude_plugin_dir ... ok [INFO] [stdout] test validation::plugin::tests::nonexistent_path ... ok [INFO] [stdout] test validation::marketplace::tests::valid_marketplace ... ok [INFO] [stdout] test validation::marketplace::tests::marketplace_not_in_filesystem_includes_remediation_hint ... ok [INFO] [stdout] test validation::plugin::tests::null_name ... ok [INFO] [stdout] test validation::plugin::tests::valid_plugin_passes ... ok [INFO] [stdout] test validation::plugin::tests::invalid_json ... ok [INFO] [stdout] test version::tests::bump_major_from_zero ... ok [INFO] [stdout] test validation::plugin::tests::valid_plugin_with_extends ... ok [INFO] [stdout] test version::tests::bump_major_incomplete_version ... ok [INFO] [stdout] test version::tests::bump_major_invalid_version ... ok [INFO] [stdout] test version::tests::bump_major_standard ... ok [INFO] [stdout] test version::tests::bump_major_resets_minor_and_patch ... ok [INFO] [stdout] test version::tests::bump_major_strips_prerelease ... ok [INFO] [stdout] test version::tests::bump_minor_from_zero ... ok [INFO] [stdout] test version::tests::bump_minor_invalid_version ... ok [INFO] [stdout] test version::tests::bump_minor_resets_patch ... ok [INFO] [stdout] test version::tests::bump_minor_standard ... ok [INFO] [stdout] test version::tests::bump_minor_zero_x_version ... ok [INFO] [stdout] test version::tests::bump_patch_from_zero ... ok [INFO] [stdout] test version::tests::bump_minor_strips_prerelease ... ok [INFO] [stdout] test version::tests::bump_major_strips_build_metadata ... ok [INFO] [stdout] test version::tests::bump_patch_large_numbers ... ok [INFO] [stdout] test version::tests::bump_patch_strips_prerelease ... ok [INFO] [stdout] test version::tests::bump_patch_standard ... ok [INFO] [stdout] test version::tests::unique_name_base_conflict ... ok [INFO] [stdout] test version::tests::unique_name_empty_base ... ok [INFO] [stdout] test version::tests::bump_patch_with_build_and_prerelease ... ok [INFO] [stdout] test version::tests::unique_name_multiple_conflicts ... ok [INFO] [stdout] test version::tests::unique_name_no_conflict ... ok [INFO] [stdout] test version::tests::unique_name_with_existing_suffix ... ok [INFO] [stdout] test version::tests::unique_name_gap_in_numbers ... ok [INFO] [stdout] test version::tests::bump_patch_invalid_version ... ok [INFO] [stdout] test review::provider::tests::provider_custom_model ... ok [INFO] [stdout] test ops::prune::tests::prune_partial_failure_warns ... FAILED [INFO] [stdout] test review::provider::tests::anthropic_provider_default_model ... ok [INFO] [stdout] test review::provider::tests::gemini_provider_default_model ... ok [INFO] [stdout] test review::provider::tests::openai_provider_default_model ... ok [INFO] [stdout] test review::provider::tests::detect_provider_env_based ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- ops::prune::tests::prune_partial_failure_warns stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ops::prune::tests::prune_partial_failure_warns' (129) panicked at src/ops/prune.rs:157:89: [INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" } [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5e8beed34a7a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5e8beed34a7a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5e8beed34a7a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5e8beed34a7a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5e8beed4b66a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5e8beed4b66a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5e8beed39b72 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5e8beed39b72 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5e8beed0f08f - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5e8beed0f08f - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5e8beed2a8a9 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5e8beea381fc - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5e8beea381fc - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5e8beed2ab22 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5e8beed2ab22 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5e8beed0f148 - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5e8beed03e59 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5e8beed1032d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5e8beed4beac - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5e8beed4bc22 - core[fa0eadad68403074]::result::unwrap_failed [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/result.rs:1867:5 [INFO] [stdout] 20: 0x5e8bee56f456 - >::unwrap [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/result.rs:1233:23 [INFO] [stdout] 21: 0x5e8bee56f456 - souk_core[db1e394ac9e80ca6]::ops::prune::tests::prune_partial_failure_warns [INFO] [stdout] at /opt/rustwide/workdir/src/ops/prune.rs:157:89 [INFO] [stdout] 22: 0x5e8bee5610d7 - souk_core[db1e394ac9e80ca6]::ops::prune::tests::prune_partial_failure_warns::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/ops/prune.rs:126:37 [INFO] [stdout] 23: 0x5e8bee5d2ee6 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5e8beea2c2db - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 25: 0x5e8beea2c2db - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 26: 0x5e8beea38ccb - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 27: 0x5e8beea38ccb - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 28: 0x5e8beea38ccb - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 29: 0x5e8beea38ccb - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 30: 0x5e8beea38ccb - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x5e8beea38ccb - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 32: 0x5e8beea38ccb - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 33: 0x5e8beea33124 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 34: 0x5e8beea33124 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 35: 0x5e8beea3b8d2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 36: 0x5e8beea3b8d2 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 37: 0x5e8beea3b8d2 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 38: 0x5e8beea3b8d2 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 39: 0x5e8beea3b8d2 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x5e8beea3b8d2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 41: 0x5e8beea3b8d2 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 42: 0x5e8beed33d7f - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 43: 0x5e8beed33d7f - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 44: 0x7e2b6a111aa4 - [INFO] [stdout] 45: 0x7e2b6a19ea64 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] ops::prune::tests::prune_partial_failure_warns [INFO] [stdout] [INFO] [stdout] test result: FAILED. 214 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.01s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "97cff48b12020c1c65e5c865fb4ad6298e1f640778e9ae4b51bdd58b4e9b2bbc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "97cff48b12020c1c65e5c865fb4ad6298e1f640778e9ae4b51bdd58b4e9b2bbc", kill_on_drop: false }` [INFO] [stdout] 97cff48b12020c1c65e5c865fb4ad6298e1f640778e9ae4b51bdd58b4e9b2bbc