[INFO] fetching crate prompthub 0.1.2...
[INFO] testing prompthub-0.1.2 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate prompthub 0.1.2 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate prompthub 0.1.2
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate prompthub 0.1.2
[INFO] tweaked toml for crates.io crate prompthub 0.1.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate prompthub 0.1.2 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate prompthub 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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:118:12
[INFO] [stderr]     |
[INFO] [stderr] 118 | homepage = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 | repository = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |              -----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `prompthub` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90
[INFO] running `Command { std: "docker" "start" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", 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" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", 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" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:118:12
[INFO] [stderr]     |
[INFO] [stderr] 118 | homepage = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 | repository = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |              -----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `prompthub` (manifest) generated 1 warning
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]    Compiling foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling foreign-types v0.3.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling pxfm v0.1.28
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling rmcp v1.2.0
[INFO] [stderr]    Compiling x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling rtoolbox v0.0.3
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling sync_wrapper v0.1.2
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling pastey v0.2.1
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling rpassword v7.4.0
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[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 futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling x11rb v0.13.2
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling rmcp-macros v1.2.0
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling arboard v3.6.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling prompthub v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `glob`
[INFO] [stderr]   --> Cargo.toml:30:15
[INFO] [stderr]    |
[INFO] [stderr] 30 | [dependencies.glob]
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `glob`
[INFO] [stderr] warning: `prompthub` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 02s
[INFO] running `Command { std: "docker" "inspect" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", 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" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:118:12
[INFO] [stderr]     |
[INFO] [stderr] 118 | homepage = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 | repository = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |              -----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `prompthub` (manifest) generated 1 warning
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling x11rb v0.13.2
[INFO] [stderr]    Compiling arboard v3.6.1
[INFO] [stderr]    Compiling prompthub v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 34.68s
[INFO] running `Command { std: "docker" "inspect" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", 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" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:118:12
[INFO] [stderr]     |
[INFO] [stderr] 118 | homepage = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 123 | repository = "https://github.com/soolaugust/promptHub"
[INFO] [stderr]     |              -----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `prompthub` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.99s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/prompthub/2f8b504e6e069e9c/out/prompthub-2f8b504e6e069e9c)
[INFO] [stdout] 
[INFO] [stdout] running 107 tests
[INFO] [stdout] test error::tests::test_layer_not_found_display ... ok
[INFO] [stdout] test error::tests::test_parse_error_display ... ok
[INFO] [stdout] test error::tests::test_conflict_error_display ... ok
[INFO] [stdout] test error::tests::test_validation_error_display ... ok
[INFO] [stdout] test config::tests::test_source_without_auth_field_parses_correctly ... ok
[INFO] [stdout] test config::tests::test_from_str_parses_valid_yaml ... ok
[INFO] [stdout] test config::tests::test_source_auth_round_trips_through_yaml ... ok
[INFO] [stdout] test config::tests::test_default_source_falls_back_to_first_when_none_marked ... ok
[INFO] [stdout] test config::tests::test_default_config_has_official_source ... ok
[INFO] [stdout] test config::tests::test_from_str_empty_sources ... ok
[INFO] [stdout] test config::tests::test_find_by_url_exact_match ... ok
[INFO] [stdout] test config::tests::test_default_source_returns_default_marked_source ... ok
[INFO] [stdout] test layer::tests::test_layer_display ... ok
[INFO] [stdout] test config::tests::test_auth_token_not_serialized_when_absent ... ok
[INFO] [stdout] test layer::validate_bytes_tests::test_validate_bytes_empty_name ... ok
[INFO] [stdout] test config::tests::test_from_str_invalid_yaml_errors ... ok
[INFO] [stdout] test layer::tests::test_parse_section_header ... ok
[INFO] [stdout] test layer::tests::test_parse_section_header_max_length ... ok
[INFO] [stdout] test layer::validate_bytes_tests::test_validate_bytes_empty_namespace ... ok
[INFO] [stdout] test layer::validate_bytes_tests::test_validate_bytes_empty_prompt_md ... ok
[INFO] [stdout] test layer::tests::test_layer_display_no_namespace ... ok
[INFO] [stdout] test config::tests::test_save_creates_file_with_0600_permissions ... ok
[INFO] [stdout] test layer::validate_bytes_tests::test_validate_bytes_invalid_yaml ... ok
[INFO] [stdout] test config::tests::test_save_and_load_roundtrip ... ok
[INFO] [stdout] test layer::tests::test_sections_to_content_remaining_sections_sorted ... ok
[INFO] [stdout] test merger::tests::test_additional_layer_sections_in_declared_order ... ok
[INFO] [stdout] test merger::tests::test_merge_same_section_overridden ... ok
[INFO] [stdout] test merger::tests::test_merge_params_are_threaded_through ... ok
[INFO] [stdout] test merger::tests::test_section_order_maintained ... ok
[INFO] [stdout] test merger::tests::test_sections_not_in_meta_sections_are_included ... ok
[INFO] [stdout] test merger::tests::test_conflict_detection ... ok
[INFO] [stdout] test layer::tests::test_sections_to_content ... ok
[INFO] [stdout] test merger::tests::test_merge_new_sections_appended ... ok
[INFO] [stdout] test layer::tests::test_load_from_dir_missing_version_errors ... ok
[INFO] [stdout] test layer::tests::test_load_from_dir_missing_name_errors ... ok
[INFO] [stdout] test merger::tests::test_self_conflict_not_triggered ... ok
[INFO] [stdout] test merger::tests::test_to_text_all_empty_sections_returns_empty_string ... ok
[INFO] [stdout] test layer::validate_bytes_tests::test_validate_bytes_valid ... ok
[INFO] [stdout] test output::tests::test_compute_digest_is_hex_string ... ok
[INFO] [stdout] test layer::validate_bytes_tests::test_validate_bytes_missing_section ... ok
[INFO] [stdout] test output::tests::test_build_output_fields ... ok
[INFO] [stdout] test output::tests::test_build_output_digest_changes_with_content ... ok
[INFO] [stdout] test layer::tests::test_parse_sections_basic ... ok
[INFO] [stdout] test output::tests::test_compute_digest_deterministic ... ok
[INFO] [stdout] test output::tests::test_compute_digest_layer_sensitive ... ok
[INFO] [stdout] test layer::tests::test_parse_sections_duplicate_warning ... ok
[INFO] [stdout] test merger::tests::test_to_text_skips_empty_sections ... ok
[INFO] [stdout] test parser::tests::test_layer_ref_parse_allows_normal_namespaced_ref ... ok
[INFO] [stdout] test parser::tests::test_layer_ref_parse_rejects_dot_component ... ok
[INFO] [stdout] test parser::tests::test_parse_mismatched_quote_fails ... ok
[INFO] [stdout] test parser::tests::test_parse_var_override_basic ... ok
[INFO] [stdout] test parser::tests::test_parse_var_override_empty_name_fails ... ok
[INFO] [stdout] test parser::tests::test_parse_multiple_layers ... ok
[INFO] [stdout] test parser::tests::test_parse_multiple_task_fails ... ok
[INFO] [stdout] test parser::tests::test_parse_var_override_empty_value_allowed ... ok
[INFO] [stdout] test parser::tests::test_parse_var_override_value_with_equals ... ok
[INFO] [stdout] test pull::tests::test_layer_url_base_construction ... ok
[INFO] [stdout] test parser::tests::test_parse_no_from_fails ... ok
[INFO] [stdout] test pull::tests::test_resolve_pull_version_empty_becomes_v1_0 ... ok
[INFO] [stdout] test parser::tests::test_parse_var_override_missing_equals_fails ... ok
[INFO] [stdout] test parser::tests::test_layer_ref_display_impl ... ok
[INFO] [stdout] test parser::tests::test_layer_ref_no_version ... ok
[INFO] [stdout] test pull::tests::test_layer_url_base_strips_trailing_slash ... ok
[INFO] [stdout] test pull::tests::test_pull_layer_uses_auth_token_when_present ... ok
[INFO] [stdout] test parser::tests::test_layer_ref_parse_rejects_path_traversal ... ok
[INFO] [stdout] test parser::tests::test_parse_include_mismatched_quote_fails ... ok
[INFO] [stdout] test parser::tests::test_parse_basic ... ok
[INFO] [stdout] test pull::tests::test_resolve_pull_version_explicit_preserved ... ok
[INFO] [stdout] test parser::tests::test_parse_unknown_directive_error_lists_valid ... ok
[INFO] [stdout] test parser::tests::test_parse_comments_ignored ... ok
[INFO] [stdout] test parser::tests::test_parse_include ... ok
[INFO] [stdout] test pull::tests::test_resolve_pull_version_latest_becomes_v1_0 ... ok
[INFO] [stdout] test parser::tests::test_parse_include_quoted ... ok
[INFO] [stdout] test output::tests::test_build_output_json_is_valid ... ok
[INFO] [stdout] test renderer::tests::test_load_include_normal_path_accepted ... ok
[INFO] [stdout] test parser::tests::test_parse_multiple_from_fails ... ok
[INFO] [stdout] test push::tests::test_push_target_parse_missing_namespace_fails ... ok
[INFO] [stdout] test push::tests::test_push_target_parse_missing_version_fails ... ok
[INFO] [stdout] test push::tests::test_push_target_parse_valid ... ok
[INFO] [stdout] test push::tests::test_push_target_source_path ... ok
[INFO] [stdout] test push::tests::test_push_target_parse_empty_components_fails ... ok
[INFO] [stdout] test push::tests::test_push_layer_errors_without_auth_token ... ok
[INFO] [stdout] test push::tests::test_push_layer_errors_when_layer_dir_missing ... ok
[INFO] [stdout] test push::tests::test_push_layer_errors_when_version_dir_missing ... ok
[INFO] [stdout] test resolver::tests::test_parse_semver_handles_two_part_version ... ok
[INFO] [stdout] test resolver::tests::test_parse_semver_handles_v_prefix ... ok
[INFO] [stdout] test resolver::tests::test_parse_semver_returns_none_for_invalid ... ok
[INFO] [stdout] test resolver::tests::test_parse_semver_three_part_no_prefix ... ok
[INFO] [stdout] test renderer::tests::test_load_include_path_traversal_rejected ... ok
[INFO] [stdout] test resolver::tests::test_search_layers_empty_dirs ... ok
[INFO] [stdout] test resolver::tests::test_scan_layers ... ok
[INFO] [stdout] test resolver::tests::test_search_layers_case_insensitive ... ok
[INFO] [stdout] test resolver::tests::test_search_layers_no_match ... ok
[INFO] [stdout] test resolver::tests::test_search_layers_by_name ... ok
[INFO] [stdout] test resolver::tests::test_search_layers_searches_multiple_dirs ... ok
[INFO] [stdout] test resolver::tests::test_resolve_not_found ... ok
[INFO] [stdout] test resolver::tests::test_resolve_latest ... ok
[INFO] [stdout] test resolver::tests::test_resolve_major_version_no_false_prefix_match ... ok
[INFO] [stdout] test resolver::tests::test_resolve_major_version ... ok
[INFO] [stdout] test resolver::tests::test_resolve_exact_version ... ok
[INFO] [stdout] test renderer::tests::test_substitute_undefined_var_kept ... ok
[INFO] [stdout] test renderer::tests::test_render_variables_task_with_undef_var ... ok
[INFO] [stdout] test renderer::tests::test_substitute_multiple_occurrences ... ok
[INFO] [stdout] test renderer::tests::test_substitute_vars ... ok
[INFO] [stdout] test renderer::tests::test_render_variables_dedup_undef_across_body_and_task ... ok
[INFO] [stdout] test renderer::tests::test_render_variables_with_includes_and_task ... ok
[INFO] [stdout] test renderer::tests::test_substitute_undefined_var_reported_once_per_occurrence ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 107 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/prompthub/1b69629d752780f5/out/ph-1b69629d752780f5)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test export::tests::test_parse_skill_md_frontmatter_no_body ... ok
[INFO] [stdout] test export::tests::test_parse_skill_md_no_frontmatter ... ok
[INFO] [stdout] test export::tests::test_parse_skill_md_with_frontmatter ... ok
[INFO] [stdout] test export::tests::test_write_layer_creates_files ... ok
[INFO] [stdout] test export::tests::test_export_skills_wraps_plain_body_in_instructions ... ok
[INFO] [stdout] test export::tests::test_export_skills_preserves_sections ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/mcp_server.rs (/opt/rustwide/target/debug/build/prompthub/2668811931903f65/out/ph_mcp-2668811931903f65)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/build/prompthub/0cc0580396f60895/out/integration-0cc0580396f60895)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test test_from_path_traversal_rejected ... ok
[INFO] [stdout] test test_resolve_semver_latest_ordering ... ok
[INFO] [stdout] test test_param_directives_in_promptfile ... ok
[INFO] [stdout] test test_three_layer_merge ... ok
[INFO] [stdout] test test_single_from_build ... ok
[INFO] [stdout] test test_section_override_warning_generated ... ok
[INFO] [stdout] test test_multi_layer_section_override ... ok
[INFO] [stdout] test test_additional_layer_declares_conflict ... ok
[INFO] [stdout] test test_undefined_var_warning_returned ... ok
[INFO] [stdout] test test_var_substitution ... ok
[INFO] [stdout] test test_include_file ... ok
[INFO] [stdout] test test_var_override_overrides_promptfile_var ... ok
[INFO] [stdout] test test_conflict_detection ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests prompthub
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90", kill_on_drop: false }`
[INFO] [stdout] 2e228520856085aafcc318be8a14bfa6d6c7dcd64e50689c789443df21cf8a90
