[INFO] fetching crate zkv 0.3.0...
[INFO] testing zkv-0.3.0 against 1.98.0-beta.1 for beta-1.98-1
[INFO] extracting crate zkv 0.3.0 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate zkv 0.3.0
[INFO] finished tweaking crates.io crate zkv 0.3.0
[INFO] tweaked toml for crates.io crate zkv 0.3.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate zkv 0.3.0 on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zkv 0.3.0 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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3
[INFO] running `Command { std: "docker" "start" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", 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" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", 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" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling cc v1.2.64
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling time v0.3.49
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling line-clipping v0.3.7
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]    Compiling pulldown-cmark v0.13.4
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling zune-core v0.5.1
[INFO] [stderr]    Compiling g2poly v1.2.2
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]    Compiling pxfm v0.1.29
[INFO] [stderr]    Compiling zune-jpeg v0.5.15
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling lru v0.18.0
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling getopts v0.2.24
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling base64ct v1.8.3
[INFO] [stderr]    Compiling indenter v0.3.4
[INFO] [stderr]    Compiling pulldown-cmark-escape v0.11.0
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling libsqlite3-sys v0.38.1
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling rustc-demangle v0.1.27
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling hashlink v0.12.0
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling tracing-error v0.2.1
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling rtoolbox v0.0.5
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling rpassword v7.5.4
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling backtrace v0.3.76
[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 zeroize_derive v1.5.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling g2gen v1.2.2
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling g2p v1.2.2
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling secrecy v0.10.3
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling color-eyre v0.6.5
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling webpki-roots v1.0.8
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling ratatui-core v0.1.1
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling clap_complete v4.6.5
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling ratatui-widgets v0.3.1
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling ratatui-macros v0.7.1
[INFO] [stderr]    Compiling ratatui v0.30.1
[INFO] [stderr]    Compiling ratatui-style v0.2.0
[INFO] [stderr]    Compiling ratatui-sci-fi v0.2.0
[INFO] [stderr]    Compiling image v0.25.9
[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 ureq v2.12.1
[INFO] [stderr]    Compiling rqrr v0.8.0
[INFO] [stderr]    Compiling rusqlite v0.40.1
[INFO] [stderr]    Compiling zkv v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.20s
[INFO] running `Command { std: "docker" "inspect" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", 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" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling qrcode v0.14.1
[INFO] [stderr]    Compiling zkv v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.67s
[INFO] running `Command { std: "docker" "inspect" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", 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" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/zkv-5a92b22edd13ca19)
[INFO] [stdout] 
[INFO] [stdout] running 245 tests
[INFO] [stdout] test agent::imp::tests::enabled_gate ... ok
[INFO] [stdout] test agent::imp::tests::ttl_secs_parsing_mirrors_ui ... ok
[INFO] [stdout] test agent::imp::tests::canonical_resolves_existing_file ... ok
[INFO] [stdout] test agent::imp::tests::serde_roundtrip_all_variants ... ok
[INFO] [stdout] test app::tests::apply_totp_to_draft_overwrites_totp_field ... ok
[INFO] [stdout] test app::tests::apply_totp_to_draft_adds_field_when_absent ... ok
[INFO] [stdout] test agent::imp::tests::version_mismatch_returns_error ... ok
[INFO] [stdout] test agent::imp::tests::client_server_cache_roundtrip ... ok
[INFO] [stdout] test app::tests::copy_totp_finds_totp_field ... ok
[INFO] [stdout] test app::tests::editor_ctrl_t_import_totp_sets_secret ... ok
[INFO] [stdout] test app::tests::editor_tab_cycles_cursors ... ok
[INFO] [stdout] test app::tests::from_unlocked_loads_items ... ok
[INFO] [stdout] test app::tests::import_totp_bad_input_stays_in_modal ... ok
[INFO] [stdout] test app::tests::import_totp_esc_cancels_back_to_editor ... ok
[INFO] [stdout] test app::tests::lock_keeps_path_and_enters_prompt_for_reunlock ... ok
[INFO] [stdout] test app::tests::category_mgr_rename_works ... ok
[INFO] [stdout] test app::tests::attachments_export_roundtrips_blob ... ok
[INFO] [stdout] test app::tests::boot_async_unlock_completes ... ok
[INFO] [stdout] test app::tests::attachments_jk_moves_selection ... ok
[INFO] [stdout] test app::tests::normal_jk_moves_selection ... ok
[INFO] [stdout] test app::tests::normal_l_locks_clears_db ... ok
[INFO] [stdout] test app::tests::attachments_add_esc_cancels ... ok
[INFO] [stdout] test app::tests::normal_n_enters_pick_template ... ok
[INFO] [stdout] test app::tests::normal_q_returns_quit ... ok
[INFO] [stdout] test app::tests::normal_y_does_not_panic_without_clipboard ... ok
[INFO] [stdout] test app::tests::normal_o_handles_no_totp ... ok
[INFO] [stdout] test app::tests::boot_async_wrong_pass_returns_to_prompt ... ok
[INFO] [stdout] test app::tests::pick_template_esc_returns_normal ... ok
[INFO] [stdout] test app::tests::pick_template_jk_and_enter_starts_editor ... ok
[INFO] [stdout] test app::tests::resolve_totp_input_empty_is_none ... ok
[INFO] [stdout] test app::tests::resolve_totp_input_local_path_missing_errors ... ok
[INFO] [stdout] test app::tests::resolve_totp_input_routes_otpauth_uri ... ok
[INFO] [stdout] test app::tests::search_esc_does_not_apply ... ok
[INFO] [stdout] test app::tests::category_mgr_add_empty_name_aborts ... ok
[INFO] [stdout] test app::tests::search_filters_items ... ok
[INFO] [stdout] test app::tests::attachments_delete_empties_list ... ok
[INFO] [stdout] test app::tests::mgr_browse_esc_returns_normal ... ok
[INFO] [stdout] test app::tests::attachments_a_enters_mode_and_targets_selected ... ok
[INFO] [stdout] test app::tests::write_and_backspace_field_by_cursor ... ok
[INFO] [stdout] test app::tests::attachments_a_without_item_errors ... ok
[INFO] [stdout] test cli::tests::build_backup_json_has_envelope_shape ... ok
[INFO] [stdout] test cli::tests::csv_export_passwords_only_and_escapes ... ok
[INFO] [stdout] test cli::tests::csv_import_missing_columns_default_empty ... ok
[INFO] [stdout] test cli::tests::csv_import_missing_title_header_errors ... ok
[INFO] [stdout] test cli::tests::csv_import_skips_bad_rows ... ok
[INFO] [stdout] test cli::tests::csv_roundtrip_password_fields ... ok
[INFO] [stdout] test app::tests::mgr_enter_resets_state ... ok
[INFO] [stdout] test app::tests::create_item_increments_count ... ok
[INFO] [stdout] test app::tests::passphrase_wrong_stays_in_prompt ... ok
[INFO] [stdout] test cli::tests::display_width_strips_ansi_and_counts_cjk ... ok
[INFO] [stdout] test cli::tests::edit_fields_apply_card_fields ... ok
[INFO] [stdout] test cli::tests::edit_fields_apply_note_content ... ok
[INFO] [stdout] test cli::tests::edit_fields_apply_password ... ok
[INFO] [stdout] test app::tests::tag_mgr_rename_works ... ok
[INFO] [stdout] test app::tests::category_mgr_add_works ... ok
[INFO] [stdout] test app::tests::category_mgr_delete_works ... ok
[INFO] [stdout] test cli::tests::fetch_url_bytes_data_url_missing_payload ... ok
[INFO] [stdout] test cli::tests::fetch_url_bytes_rejects_unsupported_scheme ... ok
[INFO] [stdout] test app::tests::confirm_delete_y_removes_item ... ok
[INFO] [stdout] test app::tests::passphrase_correct_opens ... ok
[INFO] [stdout] test cli::tests::fmt_timestamp_known_epochs ... ok
[INFO] [stdout] test cli::tests::generate_password_default_length_and_charset ... ok
[INFO] [stdout] test cli::tests::generate_password_length_respected ... ok
[INFO] [stdout] test app::tests::mgr_browse_jk_moves_selection ... ok
[INFO] [stdout] test cli::tests::generate_password_no_symbols ... ok
[INFO] [stdout] test cli::tests::generate_password_too_long_errors ... ok
[INFO] [stdout] test cli::tests::fetch_url_bytes_data_url_base64_full_chain ... ok
[INFO] [stdout] test cli::tests::generate_password_too_short_errors ... ok
[INFO] [stdout] test cli::tests::generate_password_two_runs_differ ... ok
[INFO] [stdout] test cli::tests::import_json_bad_overall_errors ... ok
[INFO] [stdout] test cli::tests::guess_mime_known_and_unknown ... ok
[INFO] [stdout] test cli::tests::import_json_envelope_yields_attachments ... ok
[INFO] [stdout] test cli::tests::import_json_plain_array_backward_compat ... ok
[INFO] [stdout] test cli::tests::item_field_note_and_card_mapping ... ok
[INFO] [stdout] test cli::tests::generate_password_no_ambiguous ... ok
[INFO] [stdout] test cli::tests::item_field_password_mapping ... ok
[INFO] [stdout] test cli::tests::json_roundtrip_lossless ... ok
[INFO] [stdout] test cli::tests::item_field_unknown_field_errors ... ok
[INFO] [stdout] test cli::tests::otpauth_from_qr_bytes_not_an_image ... ok
[INFO] [stdout] test app::tests::tag_mgr_delete_works ... ok
[INFO] [stdout] test cli::tests::otp_of_item_no_secret_errors ... ok
[INFO] [stdout] test cli::tests::parse_otpauth_bad_prefix_errors ... ok
[INFO] [stdout] test cli::tests::parse_otpauth_extracts_secret ... ok
[INFO] [stdout] test cli::tests::parse_otpauth_no_secret_errors ... ok
[INFO] [stdout] test cli::tests::parse_otpauth_percent_decodes_secret ... ok
[INFO] [stdout] test cli::tests::parse_otpauth_without_other_params ... ok
[INFO] [stdout] test cli::tests::otpauth_from_qr_bytes_wrong_payload ... ok
[INFO] [stdout] test app::tests::mgr_edit_esc_cancels ... ok
[INFO] [stdout] test app::tests::attachments_add_inserts_and_lists ... ok
[INFO] [stdout] test cli::tests::render_table_plain_when_color_off ... ok
[INFO] [stdout] test cli::tests::otpauth_from_qr_bytes_roundtrip ... ok
[INFO] [stdout] test app::tests::tag_mgr_add_works ... ok
[INFO] [stdout] test cli::tests::attachment_belongs_to_logic ... ok
[INFO] [stdout] test cli::tests::find_item_id_exact_then_prefix ... ok
[INFO] [stdout] test cli::tests::find_item_id_ambiguous_and_none ... ok
[INFO] [stdout] test cli::tests::otp_of_item_returns_six_digits ... ok
[INFO] [stdout] test cli::tests::resolve_id_prefers_positional_then_find ... ok
[INFO] [stdout] test cli::tests::run_add_bad_data_json_errors ... ok
[INFO] [stdout] test cli::tests::run_add_gen_password_non_password_errors ... ok
[INFO] [stdout] test cli::tests::export_import_csv_end_to_end ... ok
[INFO] [stdout] test cli::tests::run_add_gen_password_overrides_field ... ok
[INFO] [stdout] test cli::tests::run_add_otpauth_coexists_with_gen_password ... ok
[INFO] [stdout] test cli::tests::export_import_json_end_to_end ... ok
[INFO] [stdout] test cli::tests::run_add_otpauth_non_password_errors ... ok
[INFO] [stdout] test cli::tests::run_add_otpauth_overrides_totp_secret ... ok
[INFO] [stdout] test cli::tests::backup_json_roundtrip_preserves_attachment_blob ... ok
[INFO] [stdout] test cli::tests::run_attach_add_guesses_mime_from_extension ... ok
[INFO] [stdout] test cli::tests::run_add_inserts_and_persists ... ok
[INFO] [stdout]  ID  FILENAME              MIME        SIZE
[INFO] [stdout]  ──  ────────────────────  ──────────  ────
[INFO] [stdout]   1  zkv_att_2335_src.txt  text/plain    18
[INFO] [stdout] test cli::tests::run_attach_add_missing_file_errors ... ok
[INFO] [stdout] test cli::tests::run_attach_add_missing_item_errors ... ok
[INFO] [stdout] test cli::tests::run_cat_add_bad_parent_errors ... ok
[INFO] [stdout] (no attachments)
[INFO] [stdout] test cli::tests::run_attach_ls_empty_prints_no_attachments ... ok
[INFO] [stdout] test cli::tests::default_vault_path_missing_home_errors ... ok
[INFO] [stdout] test cli::tests::default_path_init_then_ls_roundtrip ... ok
[INFO] [stdout] test cli::tests::default_vault_path_uses_home ... ok
[INFO] [stdout] test cli::tests::read_new_passphrase_env_paths ... ok
[INFO] [stdout] test cli::tests::read_passphrase_env_paths ... ok
[INFO] [stdout] test cli::tests::read_passphrase_missing_passfile_errors ... ok
[INFO] [stdout] test cli::tests::resolve_vault_path_some_and_none ... ok
[INFO] [stdout] 5WQ-5Dm%2wAgi2DM
[INFO] [stdout] pW9LxKGA
[INFO] [stdout] test cli::tests::run_gen_prints_password ... ok
[INFO] [stdout]  ID  NAME      PARENT    ORDER
[INFO] [stdout]  ──  ────────  ────────  ─────
[INFO] [stdout]   1  Personal  -             0
[INFO] [stdout]   2  Banking   Personal      0
[INFO] [stdout] test cli::tests::run_cp_missing_item_errors ... ok
[INFO] [stdout] test cli::tests::run_edit_add_and_rm_tag ... ok
[INFO] [stdout] test cli::tests::run_edit_data_conflicts_with_field_flags ... ok
[INFO] [stdout] test cli::tests::run_attach_add_ls_get_rm_roundtrip ... ok
[INFO] [stdout] test cli::tests::run_edit_missing_item_errors ... ok
[INFO] [stdout] test cli::tests::run_edit_nothing_to_change_errors ... ok
[INFO] [stdout] test cli::tests::run_init_refuses_existing_vault ... ok
[INFO] [stdout] test cli::tests::run_edit_otpauth_overrides_totp_secret ... ok
[INFO] [stdout] s3cret
[INFO] [stdout] GitHub
[INFO] [stdout] password · vip, work
[INFO] [stdout] ────────────────────────
[INFO] [stdout] id        1
[INFO] [stdout] type      password
[INFO] [stdout] username  alice
[INFO] [stdout] password  s3cret
[INFO] [stdout] url       https://github.com
[INFO] [stdout] totp      JBSWY3DPEHPK3PXP
[INFO] [stdout] notes     main
[INFO] [stdout] created   2026-07-11 13:31
[INFO] [stdout] updated   2026-07-11 13:31
[INFO] [stdout] {
[INFO] [stdout]   "id": 1,
[INFO] [stdout]   "template_id": "password",
[INFO] [stdout]   "title": "GitHub",
[INFO] [stdout]   "category_id": null,
[INFO] [stdout]   "fields": [
[INFO] [stdout]     {
[INFO] [stdout]       "name": "username",
[INFO] [stdout]       "value": "alice",
[INFO] [stdout]       "kind": "text",
[INFO] [stdout]       "protected": false
[INFO] [stdout]     },
[INFO] [stdout]     {
[INFO] [stdout]       "name": "password",
[INFO] [stdout]       "value": "s3cret",
[INFO] [stdout]       "kind": "secret",
[INFO] [stdout]       "protected": true
[INFO] [stdout]     },
[INFO] [stdout]     {
[INFO] [stdout]       "name": "url",
[INFO] [stdout]       "value": "https://github.com",
[INFO] [stdout]       "kind": "text",
[INFO] [stdout]       "protected": false
[INFO] [stdout]     },
[INFO] [stdout]     {
[INFO] [stdout]       "name": "totp",
[INFO] [stdout]       "value": "JBSWY3DPEHPK3PXP",
[INFO] [stdout]       "kind": "totp",
[INFO] [stdout]       "protected": true
[INFO] [stdout]     },
[INFO] [stdout]     {
[INFO] [stdout]       "name": "notes",
[INFO] [stdout]       "value": "main",
[INFO] [stdout]       "kind": "multiline",
[INFO] [stdout]       "protected": false
[INFO] [stdout]     }
[INFO] [stdout]   ],
[INFO] [stdout]   "favorite": false,
[INFO] [stdout]   "tags": [
[INFO] [stdout]     "vip",
[INFO] [stdout]     "work"
[INFO] [stdout]   ],
[INFO] [stdout]   "created_at": 1783776666,
[INFO] [stdout]   "updated_at": 1783776666
[INFO] [stdout] }
[INFO] [stdout] test cli::tests::run_get_found_and_missing ... ok
[INFO] [stdout] test cli::tests::run_edit_sets_category ... ok
[INFO] [stdout] test cli::tests::run_export_to_file_empty_vault ... ok
[INFO] [stdout] test cli::tests::run_cat_add_ls_rm_roundtrip ... ok
[INFO] [stdout] test cli::tests::run_edit_partial_title_only ... ok
[INFO] [stdout] test cli::tests::run_edit_tag_conflicts_with_delta ... ok
[INFO] [stdout] test cli::tests::run_edit_single_field_username ... ok
[INFO] [stdout] alice
[INFO] [stdout] test cli::tests::run_get_via_find_locates_item ... ok
[INFO] [stdout] test cli::tests::run_import_creates_duplicates ... ok
[INFO] [stdout] test cli::tests::strip_trailing_newline_both_styles ... ok
[INFO] [stdout] test cli::tests::tag_delta_add_dedup_and_remove ... ok
[INFO] [stdout] test cli::tests::to_search_filter_maps_fields ... ok
[INFO] [stdout] test cli::tests::run_import_csv_partial_success ... ok
[INFO] [stdout] test cli::tests::write_item_human_renders_banner_dates_and_multiline ... ok
[INFO] [stdout] test clipboard::tests::copy_and_clear_manual ... ignored
[INFO] [stdout] test clipboard::tests::copy_returns_err_when_no_backend ... ok
[INFO] [stdout] test crypto::tests::decrypt_tampered_ciphertext_fails ... ok
[INFO] [stdout] test crypto::tests::decrypt_tampered_nonce_fails ... ok
[INFO] [stdout] test cli::tests::run_import_envelope_bad_attachment_counts_failed ... ok
[INFO] [stdout] test cli::tests::run_import_json_bad_data_counts_failed ... ok
[INFO] [stdout] test crypto::tests::decrypt_with_wrong_key_fails ... ok
[INFO] [stdout] test crypto::tests::gen_salt_and_nonce_are_random ... ok
[INFO] [stdout] test crypto::tests::kdf_params_default_matches_prd ... ok
[INFO] [stdout] test db::tests::dump_from_bytes_roundtrip_preserves_data ... ok
[INFO] [stdout] test db::tests::insert_item_and_fts_hit ... ok
[INFO] [stdout] test db::tests::migrate_data_converts_three_variants_and_corrupt ... ok
[INFO] [stdout] test db::tests::migrate_data_handles_mixed_new_and_legacy_shapes ... ok
[INFO] [stdout] test db::tests::migrate_data_is_idempotent ... ok
[INFO] [stdout] test db::tests::migrate_data_noop_on_fresh_empty_db ... ok
[INFO] [stdout] test db::tests::open_in_memory_and_migrate_ok ... ok
[INFO] [stdout] test db::tests::templates_table_exists_after_migrate ... ok
[INFO] [stdout] test model::tests::builtin_template_field_alignment ... ok
[INFO] [stdout] test model::tests::builtin_templates_has_eight_unique ... ok
[INFO] [stdout] test model::tests::category_tag_attachment_roundtrip ... ok
[INFO] [stdout] test model::tests::field_kind_serde_renames ... ok
[INFO] [stdout] test model::tests::field_serde_roundtrip ... ok
[INFO] [stdout] test model::tests::fields_search_text_excludes_secret_and_totp ... ok
[INFO] [stdout] test model::tests::fields_search_text_skips_empty ... ok
[INFO] [stdout] test model::tests::get_builtin_returns_some_and_none ... ok
[INFO] [stdout] test model::tests::instantiate_template_note_format_defaults_text ... ok
[INFO] [stdout] test model::tests::instantiate_template_produces_empty_fields ... ok
[INFO] [stdout] test model::tests::instantiate_template_unknown_returns_none ... ok
[INFO] [stdout] test model::tests::item_field_helpers ... ok
[INFO] [stdout] test model::tests::item_struct_roundtrip ... ok
[INFO] [stdout] test model::tests::legacy_item_data_deserializes_historical_json ... ok
[INFO] [stdout] test model::tests::legacy_to_fields_card ... ok
[INFO] [stdout] test model::tests::legacy_to_fields_note ... ok
[INFO] [stdout] test model::tests::legacy_to_fields_password ... ok
[INFO] [stdout] test model::tests::template_display_name_known_and_unknown ... ok
[INFO] [stdout] test model::tests::template_serde_roundtrip ... ok
[INFO] [stdout] test search::tests::combined_filter ... ok
[INFO] [stdout] test crypto::tests::encrypt_decrypt_roundtrip ... ok
[INFO] [stdout] test search::tests::filter_by_category ... ok
[INFO] [stdout] test search::tests::filter_by_tags ... ok
[INFO] [stdout] test search::tests::filter_favorite_only ... ok
[INFO] [stdout] test search::tests::fts_does_not_match_secret_values ... ok
[INFO] [stdout] test search::tests::filter_by_template_id ... ok
[INFO] [stdout] test search::tests::query_empty_returns_all ... ok
[INFO] [stdout] test search::tests::sanitize_fts_quotes_tokens ... ok
[INFO] [stdout] test store::tests::attachment_crud_and_blob_roundtrip ... ok
[INFO] [stdout] test search::tests::query_hit_and_miss ... ok
[INFO] [stdout] test store::tests::data_json_roundtrip ... ok
[INFO] [stdout] test store::tests::category_crud ... ok
[INFO] [stdout] test store::tests::insert_get_item_roundtrip ... ok
[INFO] [stdout] test store::tests::delete_item_removes_row_and_cascades_tags ... ok
[INFO] [stdout] test store::tests::search_text_column_excludes_title ... ok
[INFO] [stdout] test store::tests::tag_delete_removes_row ... ok
[INFO] [stdout] test store::tests::tag_ensure_idempotent ... ok
[INFO] [stdout] test store::tests::tag_update_renames ... ok
[INFO] [stdout] test crypto::tests::derive_key_is_deterministic_for_same_inputs ... ok
[INFO] [stdout] test style::tests::compute_accent_is_pink ... ok
[INFO] [stdout] test style::tests::compute_ok_is_green ... ok
[INFO] [stdout] test style::tests::paint_disabled_is_plain ... ok
[INFO] [stdout] test style::tests::paint_enabled_wraps_truecolor ... ok
[INFO] [stdout] test style::tests::paint_merges_modifier_and_color ... ok
[INFO] [stdout] test style::tests::theme_css_parses ... ok
[INFO] [stdout] test totp::tests::base32_accepts_lowercase_and_spaces ... ok
[INFO] [stdout] test totp::tests::base32_empty_errors ... ok
[INFO] [stdout] test totp::tests::base32_invalid_errors ... ok
[INFO] [stdout] test totp::tests::current_and_at_are_consistent ... ok
[INFO] [stdout] test totp::tests::format_digits_leading_zeros ... ok
[INFO] [stdout] test totp::tests::rfc6238_vectors_8_digit ... ok
[INFO] [stdout] test totp::tests::rfc6238_via_totp_raw_matches_hotp ... ok
[INFO] [stdout] test totp::tests::totp_changes_with_step ... ok
[INFO] [stdout] test ui::detail::tests::totp_code_line_empty_secret_shows_dash ... ok
[INFO] [stdout] test ui::detail::tests::totp_code_line_invalid_secret_shows_invalid ... ok
[INFO] [stdout] test ui::detail::tests::totp_code_line_valid_secret_has_six_digits ... ok
[INFO] [stdout] test ui::input::tests::mask_renders_bullets ... ok
[INFO] [stdout] test ui::input::tests::push_and_backspace ... ok
[INFO] [stdout] test ui::tests::lock_timeout_secs_reads_env ... ok
[INFO] [stdout] test ui::tests::passphrase_input_keeps_content_row_on_short_terminal ... ok
[INFO] [stdout] test ui::theme::tests::theme_caching_is_stable ... ok
[INFO] [stdout] test ui::theme::tests::theme_styles_match_cyberpunk_palette ... ok
[INFO] [stdout] test cli::tests::run_edit_updates_fields_and_type ... ok
[INFO] [stdout] test cli::tests::run_ls_filter_by_type_and_tag ... ok
[INFO] [stdout]  ID  TYPE      TITLE  TAGS           UPDATED
[INFO] [stdout]  ──  ────────  ─────  ────  ────────────────
[INFO] [stdout]   3  password  Fav    -     2026-07-11 13:31
[INFO] [stdout] test cli::tests::run_ls_favorite_only_returns_favorites ... ok
[INFO] [stdout]  ID  TYPE      TITLE   TAGS                UPDATED
[INFO] [stdout]  ──  ────────  ──────  ─────────  ────────────────
[INFO] [stdout]   1  password  GitHub  vip, work  2026-07-11 13:31
[INFO] [stdout]   2  note      Ideas   work       2026-07-11 13:31
[INFO] [stdout] [
[INFO] [stdout]   {
[INFO] [stdout]     "id": 1,
[INFO] [stdout]     "template_id": "password",
[INFO] [stdout]     "title": "GitHub",
[INFO] [stdout]     "category_id": null,
[INFO] [stdout]     "fields": [
[INFO] [stdout]       {
[INFO] [stdout]         "name": "username",
[INFO] [stdout]         "value": "alice",
[INFO] [stdout]         "kind": "text",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       },
[INFO] [stdout]       {
[INFO] [stdout]         "name": "password",
[INFO] [stdout]         "value": "s3cret",
[INFO] [stdout]         "kind": "secret",
[INFO] [stdout]         "protected": true
[INFO] [stdout]       },
[INFO] [stdout]       {
[INFO] [stdout]         "name": "url",
[INFO] [stdout]         "value": "https://github.com",
[INFO] [stdout]         "kind": "text",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       },
[INFO] [stdout]       {
[INFO] [stdout]         "name": "totp",
[INFO] [stdout]         "value": "JBSWY3DPEHPK3PXP",
[INFO] [stdout]         "kind": "totp",
[INFO] [stdout]         "protected": true
[INFO] [stdout]       },
[INFO] [stdout]       {
[INFO] [stdout]         "name": "notes",
[INFO] [stdout]         "value": "main",
[INFO] [stdout]         "kind": "multiline",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       }
[INFO] [stdout]     ],
[INFO] [stdout]     "favorite": false,
[INFO] [stdout]     "tags": [
[INFO] [stdout]       "vip",
[INFO] [stdout]       "work"
[INFO] [stdout]     ],
[INFO] [stdout]     "created_at": 1783776670,
[INFO] [stdout]     "updated_at": 1783776670
[INFO] [stdout]   },
[INFO] [stdout]   {
[INFO] [stdout]     "id": 2,
[INFO] [stdout]     "template_id": "note",
[INFO] [stdout]     "title": "Ideas",
[INFO] [stdout]     "category_id": null,
[INFO] [stdout]     "fields": [
[INFO] [stdout]       {
[INFO] [stdout]         "name": "format",
[INFO] [stdout]         "value": "markdown",
[INFO] [stdout]         "kind": "text",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       },
[INFO] [stdout]       {
[INFO] [stdout]         "name": "content",
[INFO] [stdout]         "value": "# hello world",
[INFO] [stdout]         "kind": "multiline",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       }
[INFO] [stdout]     ],
[INFO] [stdout]     "favorite": false,
[INFO] [stdout]     "tags": [
[INFO] [stdout]       "work"
[INFO] [stdout]     ],
[INFO] [stdout]     "created_at": 1783776670,
[INFO] [stdout]     "updated_at": 1783776670
[INFO] [stdout]   }
[INFO] [stdout] ]
[INFO] [stdout] test cli::tests::run_ls_returns_ok ... ok
[INFO] [stdout] test vault::tests::header_parse_rejects_bad_magic_and_short ... ok
[INFO] [stdout] test vault::tests::header_roundtrip_and_constants ... ok
[INFO] [stdout] test cli::tests::run_ls_unknown_category_errors ... ok
[INFO] [stdout] test vault::tests::corrupted_magic_yields_corrupt_file ... ok
[INFO] [stdout] test vault::tests::create_unlock_roundtrip ... ok
[INFO] [stdout] test cli::tests::run_rm_missing_item_errors ... ok
[INFO] [stdout] 431489
[INFO] [stdout] test cli::tests::run_otp_ok_and_missing_errors ... ok
[INFO] [stdout] test store::tests::list_items_ordered_by_updated_at_desc ... ok
[INFO] [stdout] test store::tests::update_item_refreshes_search_text_and_updated_at ... ok
[INFO] [stdout]  ID  NAME
[INFO] [stdout]  ──  ────
[INFO] [stdout]   2  vip
[INFO] [stdout]   1  work
[INFO] [stdout] test vault::tests::wrong_passphrase_yields_bad_passphrase ... ok
[INFO] [stdout]  ID  TYPE  TITLE  TAGS           UPDATED
[INFO] [stdout]  ──  ────  ─────  ────  ────────────────
[INFO] [stdout]   2  note  Ideas  work  2026-07-11 13:31
[INFO] [stdout] [
[INFO] [stdout]   {
[INFO] [stdout]     "id": 2,
[INFO] [stdout]     "template_id": "note",
[INFO] [stdout]     "title": "Ideas",
[INFO] [stdout]     "category_id": null,
[INFO] [stdout]     "fields": [
[INFO] [stdout]       {
[INFO] [stdout]         "name": "format",
[INFO] [stdout]         "value": "markdown",
[INFO] [stdout]         "kind": "text",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       },
[INFO] [stdout]       {
[INFO] [stdout]         "name": "content",
[INFO] [stdout]         "value": "# hello world",
[INFO] [stdout]         "kind": "multiline",
[INFO] [stdout]         "protected": false
[INFO] [stdout]       }
[INFO] [stdout]     ],
[INFO] [stdout]     "favorite": false,
[INFO] [stdout]     "tags": [
[INFO] [stdout]       "work"
[INFO] [stdout]     ],
[INFO] [stdout]     "created_at": 1783776671,
[INFO] [stdout]     "updated_at": 1783776671
[INFO] [stdout]   }
[INFO] [stdout] ]
[INFO] [stdout] test cli::tests::run_search_ok ... ok
[INFO] [stdout] test vault::tests::change_passphrase_wrong_old_yields_bad_passphrase ... ok
[INFO] [stdout] test vault::tests::save_then_unlock_preserves_changes ... ok
[INFO] [stdout] test vault::tests::save_each_time_new_nonce ... ok
[INFO] [stdout] test vault::tests::change_passphrase_roundtrip ... ok
[INFO] [stdout] test cli::tests::run_rm_yes_deletes ... ok
[INFO] [stdout] test cli::tests::run_tag_ls_rm_mv_roundtrip ... ok
[INFO] [stdout] test cli::tests::run_init_creates_unlockable_empty_vault ... ok
[INFO] [stdout] test cli::tests::unlocked_save_roundtrips ... ok
[INFO] [stdout] test cli::tests::run_passwd_roundtrip_and_old_fails ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 244 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 34.91s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/zkv-5d41155fe77b4c0d)
[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]    Doc-tests zkv
[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" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3", kill_on_drop: false }`
[INFO] [stdout] 39a48301788ed4b63240c59c60c05c9eb702a305dbc333df882f0beab04e09e3
