[INFO] cloning repository https://github.com/caniko/skillnet
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/caniko/skillnet" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcaniko%2Fskillnet", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcaniko%2Fskillnet'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 48d564d313457b9257f520dad9d215d26b9b0f2c
[INFO] testing caniko/skillnet against 1.100.0-beta.1 for beta-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcaniko%2Fskillnet" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/caniko/skillnet
[INFO] finished tweaking git repo https://github.com/caniko/skillnet
[INFO] tweaked toml for git repo https://github.com/caniko/skillnet written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/caniko/skillnet 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 git repo https://github.com/caniko/skillnet 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:65:12
[INFO] [stderr]    |
[INFO] [stderr] 65 | homepage = "https://github.com/caniko/skillnet"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71 | repository = "https://github.com/caniko/skillnet"
[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: `skillnet` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d
[INFO] running `Command { std: "docker" "start" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", 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" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d" "/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" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", 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" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d" "/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:65:12
[INFO] [stderr]    |
[INFO] [stderr] 65 | homepage = "https://github.com/caniko/skillnet"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71 | repository = "https://github.com/caniko/skillnet"
[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: `skillnet` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling cmov v0.5.3
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling ctutils v0.4.2
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling chacha20 v0.10.0
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling unicode-properties v0.1.4
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling siphasher v1.0.3
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling syn v3.0.0
[INFO] [stderr]    Compiling phf_shared v0.13.1
[INFO] [stderr]    Compiling thiserror v2.0.19
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling hybrid-array v0.4.12
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling phf v0.13.1
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand v0.10.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling blake3 v1.8.5
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling whoami v2.1.2
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling camino v1.2.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.19
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling md-5 v0.11.0
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling hmac v0.13.0
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling arrayref v0.3.9
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling postgres-protocol v0.6.12
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling postgres-types v0.2.14
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling dialoguer v0.11.0
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tokio-postgres v0.7.18
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling clap_complete v4.6.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling postgres v0.19.13
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling pklr v1.2.0
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling skillnet v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `dialoguer`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | dialoguer = "0.11"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `dialoguer`
[INFO] [stderr] warning: `skillnet` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", 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" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d" "/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:65:12
[INFO] [stderr]    |
[INFO] [stderr] 65 | homepage = "https://github.com/caniko/skillnet"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71 | repository = "https://github.com/caniko/skillnet"
[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: `skillnet` (manifest) generated 1 warning
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling assert_cmd v2.2.2
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling temp-env v0.3.6
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling insta v1.47.2
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling skillnet v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `dialoguer`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | dialoguer = "0.11"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `dialoguer`
[INFO] [stderr] warning: `skillnet` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 43.54s
[INFO] running `Command { std: "docker" "inspect" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", 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" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d" "/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:65:12
[INFO] [stderr]    |
[INFO] [stderr] 65 | homepage = "https://github.com/caniko/skillnet"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71 | repository = "https://github.com/caniko/skillnet"
[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: `skillnet` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `dialoguer`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | dialoguer = "0.11"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `dialoguer`
[INFO] [stderr] warning: `skillnet` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.35s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/skillnet/5ae8b5f2d41886e2/out/skillnet-5ae8b5f2d41886e2)
[INFO] [stdout] 
[INFO] [stdout] running 63 tests
[INFO] [stdout] test catalog::frontmatter::tests::parses_folded_description_frontmatter ... ok
[INFO] [stdout] test catalog::frontmatter::tests::parses_simple_frontmatter ... ok
[INFO] [stdout] test bundle::tests::canonical_reference_directories_do_not_inherit_default_dependencies ... ok
[INFO] [stdout] test bundle::tests::external_manifest_materializes_store_directory_without_touching_canonical ... ok
[INFO] [stdout] test bundle::tests::canonical_source_entries_do_not_inherit_default_dependencies ... ok
[INFO] [stdout] test bundle::tests::source_file_can_supply_hidden_reference ... ok
[INFO] [stdout] test cli::args::tests::sync_command_accepts_global_dry_run_flag ... ok
[INFO] [stdout] test cli::args::tests::export_command_parses_source_skills_and_flags ... ok
[INFO] [stdout] test cli::args::tests::export_command_defaults_to_skills_source ... ok
[INFO] [stdout] test bundle::tests::bundles_entrypoints_and_hides_references ... ok
[INFO] [stdout] test cli::scope::tests::parses_global_skill_path ... ok
[INFO] [stdout] test bundle::tests::missing_dependency_is_rejected_before_materialization ... ok
[INFO] [stdout] test cli::scope::tests::rejects_unknown_scope ... ok
[INFO] [stdout] test cli::scope::tests::rejects_empty_skill ... ok
[INFO] [stdout] test cli::scope::tests::rejects_missing_separator ... ok
[INFO] [stdout] test cli::args::tests::sync_command_rejects_no_promote_with_force ... ok
[INFO] [stdout] test bundle::tests::rejects_a_granted_skill_with_a_denied_dependency ... ok
[INFO] [stdout] test cli::args::tests::sync_command_rejects_apply_promote_with_no_promote ... ok
[INFO] [stdout] test cli::args::tests::sync_command_parses_apply_promote_and_prefer ... ok
[INFO] [stdout] test bundle::tests::filters_entrypoints_by_user_and_keeps_legacy_unrestricted_plans ... ok
[INFO] [stdout] test cli::args::tests::path_args_read_environment_fallbacks ... ok
[INFO] [stdout] test cli::scope::tests::resolves_all_selector_like_all_flag ... ok
[INFO] [stdout] test cli::args::tests::long_help_lists_sync_command ... ok
[INFO] [stdout] test cli::args::tests::sync_command_defaults_record_promotion_off ... ok
[INFO] [stdout] test cli::scope::tests::resolves_projects_selector_with_global_as_all_in_configured_order ... ok
[INFO] [stdout] test cli::scope::tests::resolves_projects_selector_without_repeating_named_project ... ok
[INFO] [stdout] test cli::args::tests::path_args_prefer_flags_over_environment ... ok
[INFO] [stdout] test cli::scope::tests::resolves_projects_selector_to_project_scopes_only ... ok
[INFO] [stdout] test cli::scope::tests::scope_value_parser_accepts_selector_tokens_and_rejects_unknowns ... ok
[INFO] [stdout] test config::tests::db_resolution_precedence_covers_all_rungs ... ok
[INFO] [stdout] test cli::args::tests::materializing_commands_parse_link_strategy ... ok
[INFO] [stdout] test cli::args::tests::path_args_have_no_literal_defaults_without_flags_or_environment ... ok
[INFO] [stdout] test config::tests::detects_hm_managed_config_after_canonicalizing_symlink ... ok
[INFO] [stdout] test config::tests::expands_home_prefix ... ok
[INFO] [stdout] test config::tests::load_rejects_legacy_project_extra_sources_schema ... ok
[INFO] [stdout] test config::tests::accepts_explicit_runtime_data_dir ... ok
[INFO] [stdout] test config::tests::load_rejects_legacy_root_project_source_rules_schema ... ok
[INFO] [stdout] test config::tests::load_rejects_an_empty_configured_user ... ok
[INFO] [stdout] test config::tests::link_strategy_resolution_precedence_covers_all_rungs ... ok
[INFO] [stdout] test config::tests::accepts_a_configured_user ... ok
[INFO] [stdout] test config::tests::accepts_an_immutable_bundles_root ... ok
[INFO] [stdout] test config::tests::database_table_rejects_unknown_keys ... ok
[INFO] [stdout] test config::tests::link_strategy_config_fields_parse_and_reject_invalid_values ... ok
[INFO] [stdout] test config::tests::detects_hm_managed_config_paths ... ok
[INFO] [stdout] test config::tests::project_target_rejects_view_matching_canonical_rel ... ok
[INFO] [stdout] test config::tests::project_target_honors_explicit_legacy_canonical_rel ... ok
[INFO] [stdout] test fs_ops::tests::exdev_mapping_names_paths_and_different_filesystems ... ok
[INFO] [stdout] test config::tests::project_target_defaults_to_canonical_rel_and_standard_views ... ok
[INFO] [stdout] test fs_ops::tests::removes_empty_codex_parent_only ... ok
[INFO] [stdout] test manifest::tests::rejects_environment_access ... ok
[INFO] [stdout] test fs_ops::tests::hardlink_dir_failure_cleans_staging_without_partial_dest ... ok
[INFO] [stdout] test manifest::tests::evaluates_typed_manifest ... ok
[INFO] [stdout] test mirror::tests::mirror_skill_dirs_returns_only_skill_directories ... ok
[INFO] [stdout] test fs_ops::tests::preserves_file_codex_parent ... ok
[INFO] [stdout] test fs_ops::tests::preserves_non_empty_codex_parent ... ok
[INFO] [stdout] test manifest::tests::evaluates_schema_v2_user_access ... ok
[INFO] [stdout] test fs_ops::tests::write_through_dest_hardlink_is_visible_from_source ... ok
[INFO] [stdout] test fs_ops::tests::hardlink_dir_links_regular_files_and_recreates_dirs_and_symlinks ... ok
[INFO] [stdout] test fs_ops::tests::relink_files_restores_severed_files_to_identical ... ok
[INFO] [stdout] test fs_ops::tests::hardlink_dir_status_classifies_missing_identical_severed_and_diverged ... ok
[INFO] [stdout] test manifest::tests::rejects_access_fields_in_schema_v1 ... ok
[INFO] [stdout] test config::tests::load_rejects_legacy_global_sources_schema ... ok
[INFO] [stdout] test fs_ops::tests::hardlink_dir_status_classifies_foreign_destinations ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 63 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/skillnet/fc1c199550871099/out/skillnet-fc1c199550871099)
[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/analyze_schema.rs (/opt/rustwide/target/debug/build/skillnet/8b68c0c9e6a991b8/out/analyze_schema-8b68c0c9e6a991b8)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test analyze_json_schema_shape_is_stable ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.43s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_analyze.rs (/opt/rustwide/target/debug/build/skillnet/cdfd83e055e13d6d/out/calibration_analyze-cdfd83e055e13d6d)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test proposal_decision_and_changelog_flow ... ok
[INFO] [stdout] test analyze_reports_lower_raise_and_min_n_guard ... ok
[INFO] [stdout] test analyze_skew_warning_runs_without_filter_tags ... ok
[INFO] [stdout] test analyze_json_and_filter_tags_restrict_dataset ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.41s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_db.rs (/opt/rustwide/target/debug/build/skillnet/a982fe4c775fd8b8/out/calibration_db-a982fe4c775fd8b8)
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test default_path_uses_runtime_data_location ... ok
[INFO] [stdout] test default_path_falls_back_to_uppercase_runtime_data_location ... ok
[INFO] [stdout] test default_path_ignores_legacy_repo_fallback ... ok
[INFO] [stdout] test migration_creates_skill_invocations_table_and_indexes ... ok
[INFO] [stdout] test placeholder_reuse_binds_same_value_twice ... ok
[INFO] [stdout] test query_all_returns_rows_in_order_by_clause ... ok
[INFO] [stdout] test query_optional_returns_none_for_missing_and_some_for_present ... ok
[INFO] [stdout] test placeholder_in_string_literal_is_not_rewritten ... ok
[INFO] [stdout] test json_blob_round_trips_semantic_equality ... ok
[INFO] [stdout] test migration_is_applied_exactly_once_across_reopens ... ok
[INFO] [stdout] test transaction_commits_on_ok_rolls_back_on_err ... ok
[INFO] [stdout] test nullable_params_round_trip_through_optional_accessors ... ok
[INFO] [stdout] test unix_date_expr_groups_timestamps_into_calendar_days ... ok
[INFO] [stdout] test execute_returning_id_assigns_distinct_increasing_ids ... ok
[INFO] [stdout] test cascade_delete_purges_all_child_tables ... ok
[INFO] [stdout] test opens_migrates_round_trips_and_enforces_cascades ... ok
[INFO] [stdout] test execute_returns_rows_affected_count ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_db_backend.rs (/opt/rustwide/target/debug/build/skillnet/3c5a8c63559d98e6/out/calibration_db_backend-3c5a8c63559d98e6)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test postgres_migration_isolated_to_search_path_schema ... ok
[INFO] [stdout] test postgres_jsonb_rejects_invalid_json ... ok
[INFO] [stdout] test postgres_returning_id_handles_bigserial_above_i32_max ... ok
[INFO] [stdout] test sqlite_enforces_foreign_keys_pragma ... ok
[INFO] [stdout] test sqlite_enforces_wal_journal_mode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_db_concurrency.rs (/opt/rustwide/target/debug/build/skillnet/1ea28e9ffb8254f2/out/calibration_db_concurrency-1ea28e9ffb8254f2)
[INFO] [stderr]      Running tests/calibration_db_errors.rs (/opt/rustwide/target/debug/build/skillnet/49f8d36b0a8a1893/out/calibration_db_errors-49f8d36b0a8a1893)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test sqlite_wal_allows_concurrent_readers ... ignored, timing-sensitive SQLite WAL smoke test; run explicitly with --ignored
[INFO] [stdout] test sqlite_writers_serialise_without_panic ... ignored, timing-sensitive SQLite WAL smoke test; run explicitly with --ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test open_sqlite_in_unwritable_dir_returns_actionable_error ... ok
[INFO] [stdout] test open_postgres_with_invalid_url_returns_actionable_error ... ok
[INFO] [stdout] test query_one_errors_when_no_rows_match ... ok
[INFO] [stdout] test query_one_errors_when_multiple_rows_match ... ok
[INFO] [stdout] test db_row_accessor_type_mismatch_returns_anyhow_error ... ok
[INFO] [stdout] test transaction_rolls_back_on_panic_inside_closure ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_helpers.rs (/opt/rustwide/target/debug/build/skillnet/7f1690ac8f5f8871/out/calibration_helpers-7f1690ac8f5f8871)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test helper_commands_appear_in_help ... ok
[INFO] [stdout] test init_produces_sidecar_and_record_ingests_it ... ok
[INFO] [stdout] test eval_json_matches_recorded_triggers ... ok
[INFO] [stdout] test init_refuses_overwrite_and_force_preserves_state ... ok
[INFO] [stdout] test meta_heuristics_shape_hash_and_heuristics_commands_work ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.46s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_inspect.rs (/opt/rustwide/target/debug/build/skillnet/2b835b407bc8c5bc/out/calibration_inspect-2b835b407bc8c5bc)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test show_unknown_id_fails_clearly ... ok
[INFO] [stdout] test tag_show_and_untag_manage_user_tags ... ok
[INFO] [stdout] test tag_key_validation_and_auto_tag_protection_are_enforced ... ok
[INFO] [stdout] test query_json_export_migrate_and_vacuum_work ... ok
[INFO] [stderr]      Running tests/calibration_record.rs (/opt/rustwide/target/debug/build/skillnet/052b139d46fb85b0/out/calibration_record-052b139d46fb85b0)
[INFO] [stdout] test query_filters_by_tags_and_triggers ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.51s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test wrong_schema_version_is_rejected ... ok
[INFO] [stdout] test malformed_json_reports_parse_location ... ok
[INFO] [stdout] test record_writes_rows_and_is_idempotent ... ok
[INFO] [stdout] test verify_requires_section_then_records_outcome_tag ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.35s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/calibration_walkthrough.rs (/opt/rustwide/target/debug/build/skillnet/a572c32ad0b90651/out/calibration_walkthrough-a572c32ad0b90651)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test walkthrough_without_since_dumps_full_history ... ok
[INFO] [stdout] test walkthrough_skill_md_detects_latest_changelog_date ... ok
[INFO] [stdout] test walkthrough_accept_writes_accepted_proposal_and_threshold ... ok
[INFO] [stdout] test walkthrough_since_future_emits_empty_changelog ... ok
[INFO] [stdout] test walkthrough_missing_decision_defaults_to_skip ... ok
[INFO] [stdout] test walkthrough_dry_run_writes_nothing ... ok
[INFO] [stdout] test walkthrough_skip_writes_no_proposal ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.81s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/catalog.rs (/opt/rustwide/target/debug/build/skillnet/958b33010c7fa9df/out/catalog-958b33010c7fa9df)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test catalog_is_readable_by_name_category_and_iteration ... ok
[INFO] [stdout] test meta_heuristics_fire_and_miss_on_synthetic_inputs ... ok
[INFO] [stdout] test every_heuristic_fires_and_misses_on_synthetic_inputs ... ok
[INFO] [stderr]      Running tests/catalog_defaults.rs (/opt/rustwide/target/debug/build/skillnet/ef9b2bcd7607f0e7/out/catalog_defaults-ef9b2bcd7607f0e7)
[INFO] [stdout] test threshold_store_seeds_preserves_and_persists_overrides ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test default_threshold_snapshot ... ok
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/build/skillnet/bd9908865e7b6c1c/out/cli-bd9908865e7b6c1c)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 84 tests
[INFO] [stdout] test allow_dirty_destination_bypasses_git_write_guard ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test auto_detect_falls_back_to_error_outside_any_project ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test auto_detect_picks_deepest_project_on_nested_match ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test auto_detects_scope_from_cwd_inside_registered_project ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test cache_is_best_effort_for_status ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test catalog_generate_creates_docs_and_project_indexes ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test catalog_lint_rejects_invalid_metadata ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test dirty_git_destination_blocks_mutating_mirror_commands ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test doctor_clean_config_exits_zero_with_no_findings ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test doctor_does_not_warn_on_project_scopes ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test doctor_does_not_warn_when_only_one_agent_source ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test doctor_is_listed_in_top_level_help ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test doctor_warns_on_asymmetric_fanout ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test doctor_warns_on_missing_sync_path_parent ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test global_dry_run_sync_push_plans_all_configured_scopes ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test invalid_scope_reports_valid_configured_scopes ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test no_args_requires_scope_outside_project ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test project_add_dry_run_does_not_mutate_config ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test project_add_remove_and_list_update_config ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test project_scopes_are_pulled_with_all_and_empty_projects_get_manifests ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_failure_does_not_perturb_existing_destination_content ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_then_push_emits_deprecation_note ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_then_push_handles_skill_with_nested_subdirs ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_then_push_is_idempotent_in_content ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_then_push_leaves_agents_and_claude_byte_identical ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_then_push_with_symlinked_file_keeps_symlink_in_both_destinations ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test pull_then_push_with_three_sync_paths_keeps_all_three_in_parity ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test push_summary_counts_match_actual_changes ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test push_summary_is_omitted_in_dry_run ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test push_summary_lists_every_destination ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test removing_a_skill_from_all_sources_removes_it_from_both_destinations ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test roundtrip_check_exits_nonzero_when_destinations_would_change ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test roundtrip_check_exits_zero_when_destinations_are_in_sync ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test roundtrip_command_matches_pull_then_push ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test roundtrip_on_pull_failure_does_not_push ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test skill_delete_honors_global_dry_run ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test skill_list_scope_list_and_scope_sources_report_configured_state ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test skill_rename_and_move_update_mirrored_skill_directories ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test skill_show_and_catalog_search_use_effective_metadata ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test skill_show_missing_skill_reports_not_found ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test status_json_emits_schema_v1_with_all_fields ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test status_json_omits_last_pulled_at_when_never_pulled ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test status_reports_git_destination_from_skills_root ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test status_json_emits_would_promote_and_tie_break_counts ... ok
[INFO] [stdout] test project_add_refuses_when_config_under_nix_store ... ok
[INFO] [stdout] test catalog_generate_dry_run_does_not_write_generated_docs ... ok
[INFO] [stdout] test sync_pull_auto_commit_bubbles_codex_failure ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_auto_commit_cli_overrides_model_and_effort ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_auto_commit_rejects_unrelated_dirty_paths ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_auto_commit_requires_codex_on_path ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_auto_commit_requires_new_commit_and_clean_repo ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_auto_commits_selected_scope_dirty_paths_before_pulling ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_equal_mtime_conflict_fails_without_allow_older ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_only_writes_the_selected_mirror_scope ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_overwrites_older_mirror_when_source_is_newer ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_preserves_mirror_only_skill_by_default ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_skips_older_source_by_default ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_then_push_does_not_push_after_a_pull_failure ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_pull_then_push_writes_live_targets_and_removes_stale_codex_skills ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_push_allow_delete_prunes_destination_only_skill ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_push_overwrites_older_destination_when_mirror_is_newer ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_push_preserves_destination_only_skill_by_default ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_push_skips_older_mirror_by_default ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test status_accepts_project_skills_as_canonical ... ok
[INFO] [stdout] test status_json_leaves_legacy_fields_unchanged ... ok
[INFO] [stdout] test sync_apply_promote_on_view_newer_fixture_succeeds ... ok
[INFO] [stdout] test sync_status_reports_clean_and_then_diverged ... ignored, removed by P4: pre-Option-B reconcile CLI coverage
[INFO] [stdout] test sync_dry_run_collapses_code_2_to_code_0 ... ok
[INFO] [stdout] test catalog_lint_uses_configured_global_canonical_path ... ok
[INFO] [stdout] test sync_default_on_view_newer_fixture_exits_2_and_does_not_mutate ... ok
[INFO] [stdout] test sync_help_lists_command ... ok
[INFO] [stdout] test sync_help_output_matches_snapshot ... ok
[INFO] [stdout] test sync_with_allow_dirty_destination_bypasses_per_project_gate ... ok
[INFO] [stdout] test view_sync_adopts_loose_dir_instead_of_wiping ... ok
[INFO] [stdout] test sync_scope_projects_materializes_only_project_targets ... ok
[INFO] [stdout] test sync_no_promote_on_view_newer_fixture_errors ... ok
[INFO] [stdout] test sync_scope_global_materializes_only_global_target ... ok
[INFO] [stdout] test sync_dry_run_does_not_mutate ... ok
[INFO] [stdout] test sync_per_project_dirty_gate_refuses_promotion ... ok
[INFO] [stdout] test sync_creates_global_and_project_symlinks ... ok
[INFO] [stdout] test sync_short_circuits_on_view_failure ... ok
[INFO] [stdout] test status_accepts_scope_projects_and_all_selectors ... ok
[INFO] [stdout] test sync_forwards_allow_delete_and_force ... ok
[INFO] [stdout] test project_add_rejects_selector_tokens_as_reserved_names ... ok
[INFO] [stderr]      Running tests/config_migrate.rs (/opt/rustwide/target/debug/build/skillnet/a9502d1d06cd5eb1/out/config_migrate-a9502d1d06cd5eb1)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 23 passed; 0 failed; 61 ignored; 0 measured; 0 filtered out; finished in 0.48s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test migrate_moves_legacy_to_xdg_when_xdg_absent ... ok
[INFO] [stdout] test migrate_noop_when_only_xdg_present ... ok
[INFO] [stdout] test migrate_deletes_legacy_when_xdg_equal ... ok
[INFO] [stdout] test migrate_remove_breadcrumbs_deletes_them ... ok
[INFO] [stdout] test migrate_overwrites_xdg_with_force ... ok
[INFO] [stdout] test deprecation_warning_fires_on_legacy_pickup ... ok
[INFO] [stdout] test migrate_noop_when_neither_present ... ok
[INFO] [stdout] test no_deprecation_warning_on_xdg_pickup ... ok
[INFO] [stdout] test migrate_refuses_when_xdg_differs_without_force ... ok
[INFO] [stdout] test migrate_dry_run_makes_no_changes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/dirty_gate.rs (/opt/rustwide/target/debug/build/skillnet/d6d6ce0ad6d164e7/out/dirty_gate-d6d6ce0ad6d164e7)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test non_git_target_skips_gate ... ok
[INFO] [stdout] test per_project_dirty_gate_refuses_promotion ... ok
[INFO] [stderr]      Running tests/doctor.rs (/opt/rustwide/target/debug/build/skillnet/26b98831fa14c6be/out/doctor-26b98831fa14c6be)
[INFO] [stdout] test per_project_dirty_gate_bypassed_with_allow_dirty ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test doctor_classifies_both_advanced_as_error ... ok
[INFO] [stdout] test doctor_classifies_adopt_candidate_as_info ... ok
[INFO] [stdout] test doctor_classifies_canonical_newer_as_error ... ok
[INFO] [stdout] test doctor_handles_classify_io_error_gracefully ... ok
[INFO] [stdout] test doctor_classifies_identical_non_symlink_as_info ... ok
[INFO] [stdout] test doctor_classifies_view_newer_as_warn ... ok
[INFO] [stdout] test doctor_falls_through_for_other_drift_kinds ... ok
[INFO] [stderr]      Running tests/doctor_global.rs (/opt/rustwide/target/debug/build/skillnet/2202b7085a2f82a0/out/doctor_global-2202b7085a2f82a0)
[INFO] [stdout] test doctor_classifies_equal_mtime_different_content_as_error ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test doctor_flags_global_orphan_and_broken_view_symlinks ... ok
[INFO] [stderr]      Running tests/doctor_missing_repo.rs (/opt/rustwide/target/debug/build/skillnet/25c49ffe4fb16df3/out/doctor_missing_repo-25c49ffe4fb16df3)
[INFO] [stdout] test doctor_reads_a_configured_immutable_bundle ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test doctor_warns_when_project_repo_is_missing ... ok
[INFO] [stderr]      Running tests/doctor_project.rs (/opt/rustwide/target/debug/build/skillnet/26df26da05f7b230/out/doctor_project-26df26da05f7b230)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test doctor_reports_diverged_hardlink_aggregator_files_as_error ... ok
[INFO] [stdout] test doctor_accepts_clean_hardlinked_project_aggregator ... ok
[INFO] [stdout] test doctor_reports_severed_identical_hardlink_aggregator_files_as_warning ... ok
[INFO] [stdout] test doctor_reports_legacy_symlink_aggregator_under_hardlink_strategy ... ok
[INFO] [stdout] test doctor_reports_legacy_skills_as_info_only ... ok
[INFO] [stdout] test doctor_reports_symlink_entries_inside_project_canonical ... ok
[INFO] [stdout] test doctor_keeps_symlink_strategy_aggregator_checks ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/export.rs (/opt/rustwide/target/debug/build/skillnet/2930cc4614d5e2a5/out/export-2930cc4614d5e2a5)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test export_dry_run_does_not_write_files ... ok
[INFO] [stdout] test export_copies_source_skills_to_global_and_syncs_view ... ok
[INFO] [stdout] test export_filter_copies_only_requested_skill ... ok
[INFO] [stdout] test export_filtered_prune_keeps_unselected_skills_present_in_source ... ok
[INFO] [stdout] test export_rejects_non_directory_source_entries ... ok
[INFO] [stdout] test export_prune_removes_stale_skill_dirs_and_preserves_non_skills ... ok
[INFO] [stdout] test export_filter_errors_when_requested_skill_is_missing ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/hook_e2e.rs (/opt/rustwide/target/debug/build/skillnet/becfd8d59c0f7e8e/out/hook_e2e-becfd8d59c0f7e8e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/hook_ingest.rs (/opt/rustwide/target/debug/build/skillnet/3fb0a4331c01eadb/out/hook_ingest-3fb0a4331c01eadb)
[INFO] [stdout] test hook_install_ingest_and_uninstall_round_trip ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test hook_ingest_non_strict_exits_zero_on_database_failure ... ok
[INFO] [stdout] test hook_ingest_strict_rejects_malformed_payload ... ok
[INFO] [stdout] test hook_ingest_records_post_tool_use_skill_payload ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/hook_install.rs (/opt/rustwide/target/debug/build/skillnet/3cfcebbdc66b5611/out/hook_install-3cfcebbdc66b5611)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test install_preserves_unrelated_post_tool_use_entry ... ok
[INFO] [stdout] test install_empty_file_adds_one_post_tool_use_managed_entry ... ok
[INFO] [stdout] test status_reports_not_installed_then_installed ... ok
[INFO] [stdout] test uninstall_removes_managed_entries_and_preserves_user_settings ... ok
[INFO] [stdout] test install_twice_is_byte_idempotent ... ok
[INFO] [stdout] test uninstall_missing_settings_file_is_noop ... ok
[INFO] [stdout] test install_existing_file_creates_single_backup_with_original_bytes ... ok
[INFO] [stdout] test install_refuses_invalid_json_without_truncating_file ... ok
[INFO] [stdout] test uninstall_removes_empty_hooks_object_after_fresh_install ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/hook_usage.rs (/opt/rustwide/target/debug/build/skillnet/5b5c5abd260acb6a/out/hook_usage-5b5c5abd260acb6a)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test usage_report_zero_fills_current_catalog ... ok
[INFO] [stdout] test usage_record_is_idempotent_and_privacy_preserving ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/project_clone_dry_run.rs (/opt/rustwide/target/debug/build/skillnet/783aed81d433143c/out/project_clone_dry_run-783aed81d433143c)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test project_clone_all_dry_run_prints_missing_project_clones ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/project_sync.rs (/opt/rustwide/target/debug/build/skillnet/a4200b3d5a30b9c7/out/project_sync-a4200b3d5a30b9c7)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test materialize_project_repairs_symlink_only_canonical_from_legacy_skills ... ok
[INFO] [stdout] test materialize_project_hardlinks_aggregator_and_repairs_severed_files ... ok
[INFO] [stdout] test materialize_project_preserves_symlink_aggregator_for_symlink_strategy ... ok
[INFO] [stdout] test materialize_project_does_not_import_from_legacy_skills ... ok
[INFO] [stdout] test materialize_project_repairs_diverged_hardlink_working_copy_files ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/skill_new_auto_syncs.rs (/opt/rustwide/target/debug/build/skillnet/c5c1c4d4cf3c8624/out/skill_new_auto_syncs-c5c1c4d4cf3c8624)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test skill_new_global_auto_syncs_configured_views ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/subscription_sync.rs (/opt/rustwide/target/debug/build/skillnet/84b07c50edf2683a/out/subscription_sync-84b07c50edf2683a)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] Initialized empty Git repository in /tmp/.tmpPIG52J/source/.git/
[INFO] [stdout] Initialized empty Git repository in /tmp/.tmpbQqWtA/source/.git/
[INFO] [stdout] Initialized empty Git repository in /tmp/.tmpuktw6q/source/.git/
[INFO] [stdout] [main (root-commit) 40d0cb1] initial
[INFO] [stdout]  1 file changed, 1 insertion(+)
[INFO] [stdout]  create mode 100644 global_skills/alpha/SKILL.md
[INFO] [stdout] [main (root-commit) 40d0cb1] initial
[INFO] [stdout]  1 file changed, 1 insertion(+)
[INFO] [stdout]  create mode 100644 global_skills/alpha/SKILL.md
[INFO] [stdout] [main (root-commit) 40d0cb1] initial
[INFO] [stdout]  1 file changed, 1 insertion(+)
[INFO] [stdout]  create mode 100644 global_skills/alpha/SKILL.md
[INFO] [stdout] test subscription_sync_rejects_canonical_targets ... ok
[INFO] [stdout] [main 50f0e34] replace alpha with beta
[INFO] [stdout]  2 files changed, 1 insertion(+), 1 deletion(-)
[INFO] [stdout]  delete mode 100644 global_skills/alpha/SKILL.md
[INFO] [stdout]  create mode 100644 global_skills/beta/SKILL.md
[INFO] [stdout] [main 50f0e34] replace alpha with beta
[INFO] [stdout]  2 files changed, 1 insertion(+), 1 deletion(-)
[INFO] [stdout]  delete mode 100644 global_skills/alpha/SKILL.md
[INFO] [stdout]  create mode 100644 global_skills/beta/SKILL.md
[INFO] [stdout] test subscription_sync_prune_removes_skills_deleted_upstream ... ok
[INFO] [stdout] test subscription_sync_keep_preserves_skills_deleted_upstream ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/view_sync.rs (/opt/rustwide/target/debug/build/skillnet/115dbb88ba124b00/out/view_sync-115dbb88ba124b00)
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test canonical_newer_force_demote_destroys_view_content ... ok
[INFO] [stdout] test identical_demotes_to_symlink ... ok
[INFO] [stdout] test both_advanced_default_needs_tie_break ... ok
[INFO] [stdout] test promote_preserves_mtimes ... ok
[INFO] [stdout] test materialize_view_creates_idempotent_symlinks_and_fixes_wrong_targets ... ok
[INFO] [stdout] test view_newer_default_records_would_promote ... ok
[INFO] [stdout] test equal_mtime_with_prefer_view_promotes ... ok
[INFO] [stdout] test materialize_view_supports_hardlinked_global_views ... ok
[INFO] [stdout] test view_newer_apply_promote_pulls_and_demotes ... ok
[INFO] [stdout] test partial_failure_leaves_per_skill_atomicity ... ok
[INFO] [stdout] test equal_mtime_different_content_needs_tie_break ... ok
[INFO] [stdout] test adopt_candidate_default_noops ... ok
[INFO] [stdout] test adopt_candidate_with_adopt_new_promotes ... ok
[INFO] [stdout] test drift_entry_missing_serializes_reconcile_fields_as_null ... ok
[INFO] [stdout] test future_mtime_downgrades_to_tie_break ... ok
[INFO] [stdout] test equal_mtime_with_prefer_canonical_demotes ... ok
[INFO] [stdout] test canonical_newer_default_records_would_demote_destructive ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests skillnet
[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" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d", kill_on_drop: false }`
[INFO] [stdout] 1cd478648c8198dd023caef38666102ead400c5f64a50d533ae2d994dea8388d
