[INFO] cloning repository https://github.com/luizribeiro/inv [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/luizribeiro/inv" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluizribeiro%2Finv", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluizribeiro%2Finv'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a4f76e9a671f385c7950cf3dd5ef20be37373de6 [INFO] testing luizribeiro/inv against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluizribeiro%2Finv" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/luizribeiro/inv [INFO] finished tweaking git repo https://github.com/luizribeiro/inv [INFO] tweaked toml for git repo https://github.com/luizribeiro/inv written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/luizribeiro/inv on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/luizribeiro/inv 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" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded uuid v1.21.0 [INFO] [stderr] Downloaded shell-words v1.1.1 [INFO] [stderr] Downloaded fancy-regex v0.13.0 [INFO] [stderr] Downloaded tempfile v3.26.0 [INFO] [stderr] Downloaded getrandom v0.4.1 [INFO] [stderr] Downloaded assert_cmd v2.1.2 [INFO] [stderr] Downloaded nom v8.0.0 [INFO] [stderr] Downloaded jsonschema v0.18.3 [INFO] [stderr] Downloaded qrcode v0.14.1 [INFO] [stderr] Downloaded iso8601 v0.6.3 [INFO] [stderr] Downloaded png v0.18.1 [INFO] [stderr] Downloaded moxcms v0.7.11 [INFO] [stderr] Downloaded image v0.25.9 [INFO] [stderr] Downloaded pxfm v0.1.28 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4e6f668b02e9d67faae64272ebc263a7ff09425e80cd3dda8f61df4bddb4dfdd [INFO] running `Command { std: "docker" "start" "-a" "4e6f668b02e9d67faae64272ebc263a7ff09425e80cd3dda8f61df4bddb4dfdd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4e6f668b02e9d67faae64272ebc263a7ff09425e80cd3dda8f61df4bddb4dfdd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4e6f668b02e9d67faae64272ebc263a7ff09425e80cd3dda8f61df4bddb4dfdd", kill_on_drop: false }` [INFO] [stdout] 4e6f668b02e9d67faae64272ebc263a7ff09425e80cd3dda8f61df4bddb4dfdd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ae106751bd6b9952543d173b316e669a7cf72524671a7ee0c9e297d132478b88 [INFO] running `Command { std: "docker" "start" "-a" "ae106751bd6b9952543d173b316e669a7cf72524671a7ee0c9e297d132478b88", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling getrandom v0.4.1 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling num-conv v0.2.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Compiling pxfm v0.1.28 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling time-macros v0.2.27 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling bytecount v0.6.9 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling num-cmp v0.1.0 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling fraction v0.15.3 [INFO] [stderr] Compiling moxcms v0.7.11 [INFO] [stderr] Compiling uuid v1.21.0 [INFO] [stderr] Compiling iso8601 v0.6.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 serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling dialoguer v0.11.0 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling fancy-regex v0.13.0 [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 clap v4.5.60 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling chrono v0.4.44 [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 image v0.25.9 [INFO] [stderr] Compiling jsonschema v0.18.3 [INFO] [stderr] Compiling qrcode v0.14.1 [INFO] [stderr] Compiling inv v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 07s [INFO] running `Command { std: "docker" "inspect" "ae106751bd6b9952543d173b316e669a7cf72524671a7ee0c9e297d132478b88", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae106751bd6b9952543d173b316e669a7cf72524671a7ee0c9e297d132478b88", kill_on_drop: false }` [INFO] [stdout] ae106751bd6b9952543d173b316e669a7cf72524671a7ee0c9e297d132478b88 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 01686a100df746e0064e27330eddfb02c2fc2e13960f825770462e1b671cc228 [INFO] running `Command { std: "docker" "start" "-a" "01686a100df746e0064e27330eddfb02c2fc2e13960f825770462e1b671cc228", kill_on_drop: false }` [INFO] [stderr] Compiling predicates-core v1.0.10 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling normalize-line-endings v0.3.0 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling assert_cmd v2.1.2 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling predicates-tree v1.0.13 [INFO] [stderr] Compiling predicates v3.1.4 [INFO] [stderr] Compiling inv v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.09s [INFO] running `Command { std: "docker" "inspect" "01686a100df746e0064e27330eddfb02c2fc2e13960f825770462e1b671cc228", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "01686a100df746e0064e27330eddfb02c2fc2e13960f825770462e1b671cc228", kill_on_drop: false }` [INFO] [stdout] 01686a100df746e0064e27330eddfb02c2fc2e13960f825770462e1b671cc228 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 603ffc0cbe107ec8c8296ea695fd438b972d8c2c33339f111a0bf5637e6b8d7d [INFO] running `Command { std: "docker" "start" "-a" "603ffc0cbe107ec8c8296ea695fd438b972d8c2c33339f111a0bf5637e6b8d7d", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/inv-86126f3b4e024f8e) [INFO] [stdout] [INFO] [stdout] running 57 tests [INFO] [stdout] test app::tests::run_rejects_invalid_ios_setup_url ... ok [INFO] [stdout] test app::tests::run_resolves_db_path_from_env_when_cli_override_missing ... ok [INFO] [stdout] test app::tests::run_resolves_db_path_to_default_when_no_overrides ... ok [INFO] [stdout] test commands::add::tests::add_build_item_can_be_validated_and_persisted_in_doc ... ok [INFO] [stdout] test commands::add::tests::add_build_item_rejects_empty_name ... ok [INFO] [stdout] test commands::add::tests::add_collect_input_prioritizes_stdin_json_over_test_env ... ok [INFO] [stdout] test commands::update::tests::update_apply_update_keeps_existing_fields_when_input_omits_them ... ok [INFO] [stdout] test commands::add::tests::add_build_item_uses_defaults_and_normalization ... ok [INFO] [stdout] test commands::update::tests::update_apply_update_rejects_empty_name_when_provided ... ok [INFO] [stdout] test commands::update::tests::update_apply_update_can_clear_optional_fields_with_null ... ok [INFO] [stdout] test commands::add::tests::add_parse_tags_csv_trims_and_drops_empty_entries ... ok [INFO] [stdout] test commands::add::tests::add_build_item_applies_explicit_values ... ok [INFO] [stdout] test commands::update::tests::update_apply_update_changes_selected_fields_and_normalizes_values ... ok [INFO] [stdout] test commands::remove::tests::remove_run_with_confirm_true_removes_item ... ok [INFO] [stdout] test commands::remove::tests::remove_run_with_confirm_false_keeps_inventory_unchanged ... ok [INFO] [stdout] test model::tests::serde_inventory_doc_deserialize_applies_defaults ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_uses_default_when_no_overrides ... ok [INFO] [stdout] test model::tests::serde_item_deserialize_applies_defaults ... ok [INFO] [stdout] test model::tests::serde_item_deserialize_rejects_invalid_uuid ... ok [INFO] [stdout] test model::tests::serde_item_with_required_fields_sets_defaults ... ok [INFO] [stdout] test commands::remove::tests::remove_is_interactive_honors_force_non_interactive_env ... ok [INFO] [stdout] test config::tests::resolve_db_path_prefers_cli_override ... ok [INFO] [stdout] test commands::update::tests::update_collect_input_prioritizes_stdin_json_over_test_env ... ok [INFO] [stdout] test config::tests::resolve_db_path_uses_default_when_no_overrides ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_prefers_cli_override ... ok [INFO] [stdout] test model::tests::validate_semantics_rejects_duplicate_ids ... ok [INFO] [stdout] test model::tests::validate_semantics_rejects_invalid_source_url ... ok [INFO] [stdout] test model::tests::validate_semantics_accepts_valid_items ... ok [INFO] [stdout] test model::tests::validate_semantics_rejects_non_http_source_url_scheme ... ok [INFO] [stdout] test model::tests::serde_roundtrip_inventory_doc_with_item ... ok [INFO] [stdout] test schema::tests::semantic_validation_failures_are_reported_after_schema_validation ... ok [INFO] [stdout] test schema::tests::valid_document_passes_schema_and_semantic_validation ... ok [INFO] [stdout] test schema::tests::malformed_shape_fails_schema_validation ... ok [INFO] [stdout] test storage::tests::load::reports_malformed_json_with_parse_location ... ok [INFO] [stdout] test storage::tests::load::reports_missing_file_with_context ... ok [INFO] [stdout] test storage::tests::load::reports_schema_validation_with_file_context ... ok [INFO] [stdout] test schema::tests::unknown_field_fails_schema_validation ... ok [INFO] [stdout] test commands::add::tests::add_collect_input_uses_test_hook_json ... ok [INFO] [stdout] test model::tests::serde_item_refresh_updated_at_changes_timestamp ... ok [INFO] [stdout] test storage::tests::load::reports_semantic_validation_with_file_context ... ok [INFO] [stdout] test storage::tests::save::save_reports_create_temp_error_when_parent_directory_is_missing ... ok [INFO] [stdout] test app::tests::run_resolves_db_path_preferring_cli_override ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_rejects_malformed_url ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_rejects_non_https_env_url ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_rejects_malformed_env_url ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_rejects_non_https_url ... ok [INFO] [stdout] test config::tests::resolve_db_path_falls_back_to_env_var ... ok [INFO] [stdout] test commands::update::tests::update_collect_input_uses_test_hook_json ... ok [INFO] [stdout] test config::tests::resolve_ios_shortcut_url_falls_back_to_env_var ... ok [INFO] [stdout] test terminal_qr::tests::render_rejects_empty_payload ... ok [INFO] [stdout] test storage::tests::load::succeeds_for_well_formed_inventory_file ... ok [INFO] [stdout] test storage::tests::save::save_replaces_existing_inventory_file_contents ... ok [INFO] [stdout] test storage::tests::save::save_orders_items_by_uuid_for_deterministic_output ... ok [INFO] [stdout] test storage::tests::save::roundtrip_save_and_load_inventory ... ok [INFO] [stdout] test terminal_qr::tests::render_is_deterministic_for_same_payload ... ok [INFO] [stdout] test storage::tests::save::save_cleans_up_temp_file_when_rename_fails ... ok [INFO] [stdout] test terminal_qr::tests::render_contains_multiple_lines_and_block_glyphs ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 57 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/cli_add.rs (/opt/rustwide/target/debug/deps/cli_add-6fd946369ffa3d7a) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test add_fails_when_inventory_file_is_missing ... ok [INFO] [stdout] test add_stdin_json_rejects_invalid_json_payload ... ok [INFO] [stdout] test add_persists_explicit_fields_from_test_input_hook ... ok [INFO] [stdout] test add_fails_semantic_validation_and_keeps_inventory_unchanged ... ok [INFO] [stdout] test add_fails_when_test_input_hook_is_invalid_json ... ok [INFO] [stdout] test add_persists_new_item_with_defaults_using_test_input_hook ... ok [INFO] [stderr] Running tests/cli_init.rs (/opt/rustwide/target/debug/deps/cli_init-30d6354790397e68) [INFO] [stdout] test add_accepts_non_interactive_stdin_json_input ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test init_creates_default_inventory_json ... ok [INFO] [stdout] test init_fails_when_inventory_file_already_exists ... ok [INFO] [stderr] Running tests/cli_ios_setup.rs (/opt/rustwide/target/debug/deps/cli_ios_setup-2b205a62ec03f2f8) [INFO] [stdout] test init_honors_db_path_override ... ok [INFO] [stderr] Running tests/cli_label.rs (/opt/rustwide/target/debug/deps/cli_label-39f6f1ff366bb6cd) [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test ios_setup_rejects_non_https_url ... ok [INFO] [stdout] test ios_setup_prints_instructions_url_and_terminal_qr ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test label_json_output_matches_expected_shape ... ok [INFO] [stdout] test label_fails_when_item_is_not_found ... ok [INFO] [stdout] test label_human_output_prints_placeholder_spec ... ok [INFO] [stdout] test label_human_output_uses_not_set_for_missing_optional_fields ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/cli_list.rs (/opt/rustwide/target/debug/deps/cli_list-a8a443b0954ba83b) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test list_fails_when_inventory_file_is_missing ... ok [INFO] [stdout] test list_human_output_includes_expected_row_format ... ok [INFO] [stdout] test list_json_output_for_empty_inventory_is_empty_array ... ok [INFO] [stdout] test list_json_output_is_valid_array_of_items ... ok [INFO] [stdout] test list_human_output_for_empty_inventory_shows_friendly_message ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/cli_parse.rs (/opt/rustwide/target/debug/deps/cli_parse-fb65c9640686eab7) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test add_help_mentions_stdin_json_flag ... ok [INFO] [stdout] test label_subcommand_is_wired_and_no_longer_reports_not_implemented ... ok [INFO] [stdout] test qr_subcommand_is_wired_and_no_longer_reports_not_implemented ... ok [INFO] [stdout] test remove_subcommand_is_wired_and_no_longer_reports_not_implemented ... ok [INFO] [stdout] test help_smoke_test ... ok [INFO] [stdout] test update_help_mentions_stdin_json_flag ... ok [INFO] [stdout] test ios_setup_subcommand_is_wired_and_no_longer_reports_not_implemented ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/cli_qr.rs (/opt/rustwide/target/debug/deps/cli_qr-d8366a7e7313d4be) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test qr_fails_when_item_is_not_found ... ok [INFO] [stdout] test qr_uses_default_output_path_when_out_is_not_provided ... ok [INFO] [stdout] test qr_writes_png_file_for_existing_item ... ok [INFO] [stderr] Running tests/cli_remove.rs (/opt/rustwide/target/debug/deps/cli_remove-859ea365943e5e95) [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test remove_with_yes_removes_matching_item ... ok [INFO] [stdout] test remove_fails_when_item_is_not_found ... ok [INFO] [stdout] test remove_requires_yes_in_non_interactive_mode ... ok [INFO] [stdout] test remove_with_yes_bypasses_non_interactive_guard ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/cli_search.rs (/opt/rustwide/target/debug/deps/cli_search-7ad4564fd3215320) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test search_fails_when_inventory_file_is_missing ... ok [INFO] [stdout] test search_matches_by_description_case_insensitively ... ok [INFO] [stdout] test search_fails_for_malformed_inventory_file ... ok [INFO] [stdout] test search_json_output_shape_is_array_of_matching_items ... ok [INFO] [stdout] test search_matches_by_name_case_insensitively ... ok [INFO] [stdout] test search_no_match_returns_success_with_friendly_message ... ok [INFO] [stdout] test search_json_output_for_no_matches_is_empty_array ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] [stderr] Running tests/cli_show.rs (/opt/rustwide/target/debug/deps/cli_show-977c1d6465e6d080) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test show_fails_for_invalid_uuid ... ok [INFO] [stdout] test show_human_output_succeeds_for_existing_item ... ok [INFO] [stdout] test show_json_output_matches_selected_item ... ok [INFO] [stdout] test show_fails_when_item_is_not_found ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/cli_update.rs (/opt/rustwide/target/debug/deps/cli_update-7755813d53a8b966) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test update_fails_semantic_validation_and_keeps_inventory_unchanged ... ok [INFO] [stdout] test update_fails_for_invalid_uuid ... ok [INFO] [stdout] test update_fails_when_test_input_hook_is_invalid_json ... ok [INFO] [stdout] test update_stdin_json_rejects_invalid_json_payload ... ok [INFO] [stdout] test update_fails_when_item_is_not_found ... ok [INFO] [stdout] test update_persists_changes_using_test_input_hook ... ok [INFO] [stderr] Running tests/cli_validate.rs (/opt/rustwide/target/debug/deps/cli_validate-c7204da202379b8d) [INFO] [stdout] test update_accepts_non_interactive_stdin_json_patch ... 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] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test validate_fails_when_inventory_file_is_missing ... ok [INFO] [stdout] test validate_passes_for_valid_inventory_file ... ok [INFO] [stdout] test validate_fails_for_schema_invalid_inventory_file ... ok [INFO] [stdout] test validate_fails_for_semantic_invalid_inventory_file ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "603ffc0cbe107ec8c8296ea695fd438b972d8c2c33339f111a0bf5637e6b8d7d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "603ffc0cbe107ec8c8296ea695fd438b972d8c2c33339f111a0bf5637e6b8d7d", kill_on_drop: false }` [INFO] [stdout] 603ffc0cbe107ec8c8296ea695fd438b972d8c2c33339f111a0bf5637e6b8d7d