[INFO] fetching crate oximedia-archive-pro 0.1.3... [INFO] testing oximedia-archive-pro-0.1.3 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate oximedia-archive-pro 0.1.3 into /workspace/builds/worker-4-tc1/source [INFO] started tweaking crates.io crate oximedia-archive-pro 0.1.3 [INFO] finished tweaking crates.io crate oximedia-archive-pro 0.1.3 [INFO] tweaked toml for crates.io crate oximedia-archive-pro 0.1.3 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate oximedia-archive-pro 0.1.3 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate oximedia-archive-pro 0.1.3 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded sha1 v0.11.0 [INFO] [stderr] Downloaded oxiarc-bzip2 v0.2.6 [INFO] [stderr] Downloaded oxiarc-brotli v0.2.6 [INFO] [stderr] Downloaded md-5 v0.11.0 [INFO] [stderr] Downloaded oxiarc-deflate v0.2.6 [INFO] [stderr] Downloaded oxiarc-zstd v0.2.6 [INFO] [stderr] Downloaded oxiarc-archive v0.2.6 [INFO] [stderr] Downloaded oxiarc-lz4 v0.2.6 [INFO] [stderr] Downloaded oxiarc-lzhuf v0.2.6 [INFO] [stderr] Downloaded oxiarc-lzma v0.2.6 [INFO] [stderr] Downloaded oximedia-core v0.1.3 [INFO] [stderr] Downloaded oxiarc-core v0.2.6 [INFO] [stderr] Downloaded oxiarc-snappy v0.2.6 [INFO] [stderr] Downloaded oximedia-archive v0.1.3 [INFO] [stderr] Downloaded tokio v1.52.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fcc85379e147fa05aa3246ed4d765474e1b4dba9ccf6d2d75da3ca5c927c983b [INFO] running `Command { std: "docker" "start" "-a" "fcc85379e147fa05aa3246ed4d765474e1b4dba9ccf6d2d75da3ca5c927c983b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fcc85379e147fa05aa3246ed4d765474e1b4dba9ccf6d2d75da3ca5c927c983b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fcc85379e147fa05aa3246ed4d765474e1b4dba9ccf6d2d75da3ca5c927c983b", kill_on_drop: false }` [INFO] [stdout] fcc85379e147fa05aa3246ed4d765474e1b4dba9ccf6d2d75da3ca5c927c983b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 14a5905cf487d85e4824b8a6a6acdfeac51fa70464475549b61f19c4eba8cfdf [INFO] running `Command { std: "docker" "start" "-a" "14a5905cf487d85e4824b8a6a6acdfeac51fa70464475549b61f19c4eba8cfdf", kill_on_drop: false }` [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling typenum v1.19.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling const-oid v0.10.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling blake3 v1.8.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling xxhash-rust v0.8.15 [INFO] [stderr] Compiling quick-xml v0.39.2 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling tokio v1.52.0 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling oxiarc-core v0.2.6 [INFO] [stderr] Compiling oxiarc-snappy v0.2.6 [INFO] [stderr] Compiling oxiarc-brotli v0.2.6 [INFO] [stderr] Compiling oxiarc-lzma v0.2.6 [INFO] [stderr] Compiling oxiarc-bzip2 v0.2.6 [INFO] [stderr] Compiling oxiarc-zstd v0.2.6 [INFO] [stderr] Compiling oxiarc-deflate v0.2.6 [INFO] [stderr] Compiling oxiarc-lz4 v0.2.6 [INFO] [stderr] Compiling oxiarc-lzhuf v0.2.6 [INFO] [stderr] Compiling hybrid-array v0.4.10 [INFO] [stderr] Compiling crypto-common v0.2.1 [INFO] [stderr] Compiling block-buffer v0.12.0 [INFO] [stderr] Compiling oxiarc-archive v0.2.6 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling csv v1.4.0 [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling digest v0.11.2 [INFO] [stderr] Compiling sha1 v0.11.0 [INFO] [stderr] Compiling md-5 v0.11.0 [INFO] [stderr] Compiling sha2 v0.11.0 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling oximedia-core v0.1.3 [INFO] [stderr] Compiling oximedia-archive v0.1.3 [INFO] [stderr] Compiling oximedia-archive-pro v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 43.56s [INFO] running `Command { std: "docker" "inspect" "14a5905cf487d85e4824b8a6a6acdfeac51fa70464475549b61f19c4eba8cfdf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "14a5905cf487d85e4824b8a6a6acdfeac51fa70464475549b61f19c4eba8cfdf", kill_on_drop: false }` [INFO] [stdout] 14a5905cf487d85e4824b8a6a6acdfeac51fa70464475549b61f19c4eba8cfdf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4364c9b42a981a5f35e15b16df4773f1311c314524031bf636f518e7baf760dd [INFO] running `Command { std: "docker" "start" "-a" "4364c9b42a981a5f35e15b16df4773f1311c314524031bf636f518e7baf760dd", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling oximedia-core v0.1.3 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling oximedia-archive-pro v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 17.60s [INFO] running `Command { std: "docker" "inspect" "4364c9b42a981a5f35e15b16df4773f1311c314524031bf636f518e7baf760dd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4364c9b42a981a5f35e15b16df4773f1311c314524031bf636f518e7baf760dd", kill_on_drop: false }` [INFO] [stdout] 4364c9b42a981a5f35e15b16df4773f1311c314524031bf636f518e7baf760dd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 4d6de3947b5f27fc9d60fc3eeda7ef07e60440ea22b16692ae7cd058085447aa [INFO] running `Command { std: "docker" "start" "-a" "4d6de3947b5f27fc9d60fc3eeda7ef07e60440ea22b16692ae7cd058085447aa", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/oximedia_archive_pro-1b4600cce1ff774c) [INFO] [stdout] [INFO] [stdout] running 551 tests [INFO] [stdout] test access_policy::tests::test_access_level_ord ... ok [INFO] [stdout] test access_policy::tests::test_open_does_not_require_auth ... ok [INFO] [stdout] test access_policy::tests::test_policy_confidential_overrides_embargo ... ok [INFO] [stdout] test access_policy::tests::test_policy_allows_at_confidential_denied ... ok [INFO] [stdout] test access_policy::tests::test_policy_set_evaluate_all_open ... ok [INFO] [stdout] test access_policy::tests::test_policy_set_evaluate_one_confidential ... ok [INFO] [stdout] test access_policy::tests::test_policy_set_most_restrictive ... ok [INFO] [stdout] test access_policy::tests::test_policy_embargo_active ... ok [INFO] [stdout] test access_policy::tests::test_policy_embargo_lifted ... ok [INFO] [stdout] test access_policy::tests::test_policy_no_embargo_effective_level ... ok [INFO] [stdout] test access_policy::tests::test_policy_set_len_and_empty ... ok [INFO] [stdout] test access_policy::tests::test_restricted_requires_auth ... ok [INFO] [stdout] test access_policy::tests::test_severity_ordering ... ok [INFO] [stdout] test archive_report::tests::test_events_of_type ... ok [INFO] [stdout] test archive_report::tests::test_failures ... ok [INFO] [stdout] test archive_report::tests::test_report_record_assigns_seq ... ok [INFO] [stdout] test access_policy::tests::test_policy_set_most_restrictive_empty ... ok [INFO] [stdout] test archive_report::tests::test_summary_empty_report ... ok [INFO] [stdout] test archive_report::tests::test_push_pre_built_event ... ok [INFO] [stdout] test archive_report::tests::test_chronological_order ... ok [INFO] [stdout] test archive_report::tests::test_summary_distinct_assets ... ok [INFO] [stdout] test archive_report::tests::test_summary_integrity_errors ... ok [INFO] [stdout] test archive_report::tests::test_summary_timestamps ... ok [INFO] [stdout] test archive_report::tests::test_summary_totals ... ok [INFO] [stdout] test archive_stats::tests::test_archive_health_display ... ok [INFO] [stdout] test archive_stats::tests::test_empty_integrity_rates ... ok [INFO] [stdout] test archive_report::tests::test_event_failure_display ... ok [INFO] [stdout] test access_policy::tests::test_policy_allows_at_open ... ok [INFO] [stdout] test archive_stats::tests::test_empty_snapshot_avg ... ok [INFO] [stdout] test archive_stats::tests::test_format_dist_percentage ... ok [INFO] [stdout] test archive_stats::tests::test_format_dist_record ... ok [INFO] [stdout] test archive_stats::tests::test_format_dist_totals ... ok [INFO] [stdout] test archive_stats::tests::test_integrity_health_critical ... ok [INFO] [stdout] test archive_stats::tests::test_integrity_health_healthy ... ok [INFO] [stdout] test archive_stats::tests::test_integrity_pass_rate ... ok [INFO] [stdout] test archive_stats::tests::test_size_bucket_medium ... ok [INFO] [stdout] test archive_stats::tests::test_size_bucket_small ... ok [INFO] [stdout] test archive_stats::tests::test_integrity_health_degraded ... ok [INFO] [stdout] test archive_stats::tests::test_size_bucket_tiny ... ok [INFO] [stdout] test archive_stats::tests::test_snapshot_avg ... ok [INFO] [stdout] test archive_stats::tests::test_snapshot_human_bytes ... ok [INFO] [stdout] test archive_stats::tests::test_snapshot_record ... ok [INFO] [stdout] test audit_trail::tests::test_audit_event_id ... ok [INFO] [stdout] test archive_stats::tests::test_size_bucket_large ... ok [INFO] [stdout] test audit_trail::tests::test_event_builder ... ok [INFO] [stdout] test audit_trail::tests::test_event_is_failure ... ok [INFO] [stdout] test archive_stats::tests::test_size_bucket_label ... ok [INFO] [stdout] test audit_trail::tests::test_count_at_severity ... ok [INFO] [stdout] test audit_trail::tests::test_query_by_action ... ok [INFO] [stdout] test audit_trail::tests::test_query_by_actor ... ok [INFO] [stdout] test archive_report::tests::test_event_success_display ... ok [INFO] [stdout] test archive_stats::tests::test_integrity_health_warning ... ok [INFO] [stdout] test archive_stats::tests::test_size_bucket_huge ... ok [INFO] [stdout] test audit_trail::tests::test_action_labels ... ok [INFO] [stdout] test audit_trail::tests::test_query_with_limit ... ok [INFO] [stdout] test audit_trail::tests::test_severity_ordering ... ok [INFO] [stdout] test audit_trail::tests::test_severity_priority ... ok [INFO] [stdout] test audit_trail::tests::test_summarize ... ok [INFO] [stdout] test audit_trail::tests::test_trail_events_for_asset ... ok [INFO] [stdout] test audit_trail::tests::test_trail_latest ... ok [INFO] [stdout] test audit_trail::tests::test_trail_record_and_len ... ok [INFO] [stdout] test bit_rot_detection::tests::test_can_recover_n_failures ... ok [INFO] [stdout] test bit_rot_detection::tests::test_infer_random_bit_flip ... ok [INFO] [stdout] test bit_rot_detection::tests::test_infer_sector_erasure ... ok [INFO] [stdout] test bit_rot_detection::tests::test_next_scrub_ms ... ok [INFO] [stdout] test bit_rot_detection::tests::test_overhead_pct ... ok [INFO] [stdout] test bit_rot_detection::tests::test_overhead_zero_data_blocks ... ok [INFO] [stdout] test bit_rot_detection::tests::test_pattern_names ... ok [INFO] [stdout] test bit_rot_detection::tests::test_priority_extension ... ok [INFO] [stdout] test access_policy::tests::test_description_nonempty ... ok [INFO] [stdout] test archive_report::tests::test_event_type_display ... ok [INFO] [stdout] test archive_report::tests::test_event_type_is_error ... ok [INFO] [stdout] test archive_report::tests::test_event_type_is_mutating ... ok [INFO] [stdout] test archive_report::tests::test_event_with_actor ... ok [INFO] [stdout] test archive_report::tests::test_report_event_count ... ok [INFO] [stdout] test bit_rot_detection::tests::test_recovery_not_feasible_sector_erasure ... ok [INFO] [stdout] test bit_rot_detection::tests::test_scan_clean_file ... ok [INFO] [stdout] test bit_rot_detection::tests::test_scan_corrupted_file ... ok [INFO] [stdout] test bit_rot_detection::tests::test_scan_deterministic ... ok [INFO] [stdout] test bit_rot_detection::tests::test_recovery_feasible_random_bit_flip ... ok [INFO] [stdout] test bit_rot_detection::tests::test_statistics_all_clean ... ok [INFO] [stdout] test bit_rot_detection::tests::test_statistics_empty ... ok [INFO] [stdout] test bit_rot_detection::tests::test_statistics_some_corrupted ... ok [INFO] [stdout] test checksum::tests::test_algorithm_names ... ok [INFO] [stdout] test checksum::tests::test_cryptographic_algorithms ... ok [INFO] [stdout] test checksum::tests::test_recommended_algorithm ... ok [INFO] [stdout] test checksum::tree::tests::test_build_merkle_tree ... ok [INFO] [stdout] test checksum::tree::tests::test_detect_corrupted_files_all_corrupted ... ok [INFO] [stdout] test checksum::tree::tests::test_detect_corrupted_files_none_corrupted ... ok [INFO] [stdout] test checksum::tree::tests::test_empty_tree ... ok [INFO] [stdout] test checksum::tree::tests::test_detect_corrupted_files_one_corrupted ... ok [INFO] [stdout] test checksum::tree::tests::test_find_file ... ok [INFO] [stdout] test checksum::tree::tests::test_generate_proof_existing_file ... ok [INFO] [stdout] test checksum::tree::tests::test_leaf_entries ... ok [INFO] [stdout] test checksum::generate::tests::test_multiple_algorithms ... ok [INFO] [stdout] test checksum::tree::tests::test_merkle_node_internal ... ok [INFO] [stdout] test checksum::tree::tests::test_generate_proof_nonexistent_file ... ok [INFO] [stdout] test checksum::tree::tests::test_merkle_node_leaf ... ok [INFO] [stdout] test checksum::tree::tests::test_proof_blake3_algorithm ... ok [INFO] [stdout] test checksum::generate::tests::test_generate_file_checksum ... ok [INFO] [stdout] test checksum::generate::tests::test_quick_checksum ... ok [INFO] [stdout] test checksum::tree::tests::test_proof_odd_number_of_files ... ok [INFO] [stdout] test checksum::tree::tests::test_proof_single_file_tree ... ok [INFO] [stdout] test checksum::tree::tests::test_verify_single_file_corrupted ... ok [INFO] [stdout] test checksum::tree::tests::test_verify_structure ... ok [INFO] [stdout] test checksum::tree::tests::test_verify_single_file_correct ... ok [INFO] [stdout] test checksum::tree::tests::test_verify_proof_valid ... ok [INFO] [stdout] test checksum::tree::tests::test_verify_proof_wrong_hash ... ok [INFO] [stdout] test checksum::verify::tests::test_verify_batch ... ok [INFO] [stdout] test checksum::verify::tests::test_verify_simple ... ok [INFO] [stdout] test checksum::verify::tests::test_verify_mismatch ... ok [INFO] [stdout] test cold_storage::tests::test_apply_policy_detects_moves ... ok [INFO] [stdout] test checksum::verify::tests::test_verify_success ... ok [INFO] [stdout] test cold_storage::tests::test_asset_count ... ok [INFO] [stdout] test cold_storage::tests::test_assets_in_tier ... ok [INFO] [stdout] test cold_storage::tests::test_completed_transitions_tracking ... ok [INFO] [stdout] test cold_storage::tests::test_estimated_monthly_cost_positive ... ok [INFO] [stdout] test cold_storage::tests::test_execute_all_transitions ... ok [INFO] [stdout] test cold_storage::tests::test_execute_warm_up_resets_access ... ok [INFO] [stdout] test cold_storage::tests::test_plan_cool_downs_identifies_assets ... ok [INFO] [stdout] test cold_storage::tests::test_multiple_cool_downs_sorted_by_priority ... ok [INFO] [stdout] test cold_storage::tests::test_execute_cool_down ... ok [INFO] [stdout] test cold_storage::tests::test_policy_bad_cold_frozen_order ... ok [INFO] [stdout] test cold_storage::tests::test_estimated_monthly_cost_zero_assets ... ok [INFO] [stdout] test cold_storage::tests::test_recommended_tier_hot_recent ... ok [INFO] [stdout] test cold_storage::tests::test_recommended_tier_pinned_stays_hot ... ok [INFO] [stdout] test cold_storage::tests::test_recommended_tier_warm ... ok [INFO] [stdout] test cold_storage::tests::test_recommended_tier_small_file_unchanged ... ok [INFO] [stdout] test cold_storage::tests::test_plan_cool_downs_no_moves_needed ... ok [INFO] [stdout] test cold_storage::tests::test_request_warm_up ... ok [INFO] [stdout] test cold_storage::tests::test_policy_bad_warm_cold_order ... ok [INFO] [stdout] test cold_storage::tests::test_apply_policy_no_move_needed ... ok [INFO] [stdout] test cold_storage::tests::test_policy_default_valid ... ok [INFO] [stdout] test cold_storage::tests::test_recommended_tier_frozen ... ok [INFO] [stdout] test cold_storage::tests::test_request_warm_up_asset_not_found ... ok [INFO] [stdout] test cold_storage::tests::test_request_warm_up_invalid_tier ... ok [INFO] [stdout] test cold_storage::tests::test_tier_display ... ok [INFO] [stdout] test cold_storage::tests::test_tier_retrieval_latency_nonempty ... ok [INFO] [stdout] test cold_storage::tests::test_tier_relative_cost ... ok [INFO] [stdout] test deaccession::tests::test_cancel ... ok [INFO] [stdout] test deaccession::tests::test_approval_workflow ... ok [INFO] [stdout] test deaccession::tests::test_new_request ... ok [INFO] [stdout] test deaccession::tests::test_needs_legal_review ... ok [INFO] [stdout] test deaccession::tests::test_reason_label ... ok [INFO] [stdout] test deaccession::tests::test_status_active ... ok [INFO] [stdout] test deaccession::tests::test_execution_lifecycle ... ok [INFO] [stdout] test deaccession::tests::test_rejection ... ok [INFO] [stdout] test deaccession::tests::test_status_terminal ... ok [INFO] [stdout] test deaccession::tests::test_reason_requires_legal ... ok [INFO] [stdout] test cold_storage::tests::test_transition_direction_display ... ok [INFO] [stdout] test cold_storage::tests::test_tier_ordering ... ok [INFO] [stdout] test deaccession::tests::test_registry_submit_and_lookup ... ok [INFO] [stdout] test cold_storage::tests::test_transition_estimated_duration ... ok [INFO] [stdout] test deep_archive::tests::test_access_record_monthly_cost ... ok [INFO] [stdout] test deaccession::tests::test_registry_by_status ... ok [INFO] [stdout] test deep_archive::tests::test_access_record_recommended_tier_warm ... ok [INFO] [stdout] test deep_archive::tests::test_cost_model_annual_cost ... ok [INFO] [stdout] test deep_archive::tests::test_cost_model_monthly_cost ... ok [INFO] [stdout] test deep_archive::tests::test_cost_model_multi_tier ... ok [INFO] [stdout] test deep_archive::tests::test_storage_tier_cost_ordering ... ok [INFO] [stdout] test deep_archive::tests::test_storage_tier_labels ... ok [INFO] [stdout] test deep_archive::tests::test_access_record_potential_savings ... ok [INFO] [stdout] test deep_archive::tests::test_storage_tier_retrieval_latency_ordering ... ok [INFO] [stdout] test deep_archive::tests::test_tier_classifier_decisions ... ok [INFO] [stdout] test deep_archive::tests::test_access_record_recommended_tier_cold ... ok [INFO] [stdout] test deep_archive::tests::test_access_record_recommended_tier_glacier ... ok [INFO] [stdout] test deep_archive::tests::test_tier_classifier_tier_counts ... ok [INFO] [stdout] test deep_archive::tests::test_access_record_recommended_tier_hot ... ok [INFO] [stdout] test deep_archive::tests::test_tier_classifier_total_cost ... ok [INFO] [stdout] test disaster_recovery::tests::test_critical_path_hours ... ok [INFO] [stdout] test disaster_recovery::tests::test_risk_matrix_custom_entry ... ok [INFO] [stdout] test disaster_recovery::tests::test_dr_validation_severity_ordering ... ok [INFO] [stdout] test disaster_recovery::tests::test_highest_risk_not_none ... ok [INFO] [stdout] test disaster_recovery::tests::test_sim_deterministic ... ok [INFO] [stdout] test disaster_recovery::tests::test_sim_high_success_plan ... ok [INFO] [stdout] test disaster_recovery::tests::test_independent_steps ... ok [INFO] [stdout] test disaster_recovery::tests::test_meets_sla_fail_rpo ... ok [INFO] [stdout] test disaster_recovery::tests::test_sim_rto_positive ... ok [INFO] [stdout] test checksum::tree::tests::test_verify_proof_all_leaves ... ok [INFO] [stdout] test disaster_recovery::tests::test_scenario_names ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_custom_validator_config ... ok [INFO] [stdout] test disaster_recovery::tests::test_meets_sla_fail_rto ... ok [INFO] [stdout] test disaster_recovery::tests::test_meets_sla_pass ... ok [INFO] [stdout] test disaster_recovery::tests::test_probability_per_year_ranges ... ok [INFO] [stdout] test disaster_recovery::tests::test_ranked_descending ... ok [INFO] [stdout] test disaster_recovery::tests::test_recovery_step_is_independent ... ok [INFO] [stdout] test deep_archive::tests::test_tier_classifier_no_decision_when_optimal ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_empty_plan ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_fully_ready ... ok [INFO] [stdout] test disaster_recovery::tests::test_risk_matrix_empty ... ok [INFO] [stdout] test disaster_recovery::tests::test_sim_returns_bottleneck ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_missing_dependency ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_rpo_exceeded ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_rto_exceeded ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_scenario_gap ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_stale_backup ... ok [INFO] [stdout] test disaster_recovery::tests::test_validation_no_backups_at_all ... ok [INFO] [stdout] test docs::descriptive::tests::test_generate_descriptive_doc ... ok [INFO] [stdout] test emulation_planning::tests::test_feasibility_names ... ok [INFO] [stdout] test emulation_planning::tests::test_is_active_old ... ok [INFO] [stdout] test emulation_planning::tests::test_quality_pct_native ... ok [INFO] [stdout] test emulation::package::tests::test_create_emulation_package ... ok [INFO] [stdout] test docs::generate::tests::test_generate_documentation ... ok [INFO] [stdout] test docs::technical::tests::test_generate_technical_doc ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_unverified_backups ... ok [INFO] [stdout] test emulation_planning::tests::test_plan_unknown_format ... ok [INFO] [stdout] test disaster_recovery::tests::test_validation_report_summary ... ok [INFO] [stdout] test emulation_planning::tests::test_recommend_vm_image ... ok [INFO] [stdout] test emulation_planning::tests::test_recommend_vm_video ... ok [INFO] [stdout] test emulation_planning::tests::test_quality_pct_not_feasible ... ok [INFO] [stdout] test emulation_planning::tests::test_recommend_vm_legacy ... ok [INFO] [stdout] test emulation::prepare::tests::test_prepare_emulation ... ok [INFO] [stdout] test emulation_planning::tests::test_plan_known_emulated_format ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_insufficient_backups ... ok [INFO] [stdout] test disaster_recovery::tests::test_validate_no_geo_separation ... ok [INFO] [stdout] test emulation_planning::tests::test_is_active_recent ... ok [INFO] [stdout] test emulation_planning::tests::test_is_usable ... ok [INFO] [stdout] test emulation_planning::tests::test_registry_count ... ok [INFO] [stdout] test emulation_planning::tests::test_registry_find_emulator ... ok [INFO] [stdout] test emulation_planning::tests::test_supports_format_case_insensitive ... ok [INFO] [stdout] test emulation_planning::tests::test_registry_register ... ok [INFO] [stdout] test fixity::report::tests::test_healthy_report ... ok [INFO] [stdout] test fixity::schedule::tests::test_check_frequency_days ... ok [INFO] [stdout] test fixity::report::tests::test_degraded_report ... ok [INFO] [stdout] test fixity::schedule::tests::test_fixity_schedule ... ok [INFO] [stdout] test fixity::schedule::tests::test_mark_checked ... ok [INFO] [stdout] test emulation_planning::tests::test_registry_find_unknown_format ... ok [INFO] [stdout] test format_migration::tests::test_job_new ... ok [INFO] [stdout] test fixity::schedule::tests::test_scheduler ... ok [INFO] [stdout] test format_migration::tests::test_job_valid_transition ... ok [INFO] [stdout] test format_migration::tests::test_migrator_completed_job_allows_replan ... ok [INFO] [stdout] test format_migration::tests::test_migrator_job_count ... ok [INFO] [stdout] test format_migration::tests::test_migrator_duplicate_active_job_rejected ... ok [INFO] [stdout] test fixity::verify::tests::test_store_and_verify ... ok [INFO] [stdout] test fixity::verify::tests::test_verify_without_stored_checksum ... ok [INFO] [stdout] test format_migration::tests::test_job_add_note ... ok [INFO] [stdout] test format_migration::tests::test_job_cancel_any_state ... ok [INFO] [stdout] test format_migration::tests::test_job_invalid_transition ... ok [INFO] [stdout] test format_migration::tests::test_migrator_job_lookup ... ok [INFO] [stdout] test format_migration::tests::test_migrator_jobs_by_status ... ok [INFO] [stdout] test format_migration::tests::test_migrator_plan_increments_id ... ok [INFO] [stdout] test format_migration::tests::test_migrator_plan_returns_id ... ok [INFO] [stdout] test format_migration::tests::test_migrator_status_counts ... ok [INFO] [stdout] test format_migration::tests::test_status_display ... ok [INFO] [stdout] test format_migration::tests::test_status_is_actionable ... ok [INFO] [stdout] test format_migration::tests::test_status_is_terminal ... ok [INFO] [stdout] test format_registry::tests::test_category_display ... ok [INFO] [stdout] test format_registry::tests::test_entry_age ... ok [INFO] [stdout] test format_registry::tests::test_entry_creation ... ok [INFO] [stdout] test emulation_planning::tests::test_vm_spec_is_adequate ... ok [INFO] [stdout] test format_registry::tests::test_entry_migration_target ... ok [INFO] [stdout] test format_registry::tests::test_entry_needs_migration ... ok [INFO] [stdout] test format_registry::tests::test_entry_notes ... ok [INFO] [stdout] test format_registry::tests::test_registry_at_risk ... ok [INFO] [stdout] test format_registry::tests::test_registry_by_extension ... ok [INFO] [stdout] test format_registry::tests::test_registry_by_category ... ok [INFO] [stdout] test format_registry::tests::test_registry_empty ... ok [INFO] [stdout] test format_registry::tests::test_registry_defaults ... ok [INFO] [stdout] test format_registry::tests::test_registry_needing_migration ... ok [INFO] [stdout] test format_registry::tests::test_registry_open_formats ... ok [INFO] [stdout] test format_registry::tests::test_risk_display ... ok [INFO] [stdout] test format_registry::tests::test_registry_remove ... ok [INFO] [stdout] test format_registry::tests::test_risk_ordering ... ok [INFO] [stdout] test format_validator::tests::test_count_by_severity ... ok [INFO] [stdout] test format_validator::tests::test_detect_format_unknown ... ok [INFO] [stdout] test format_validator::tests::test_detect_format_png ... ok [INFO] [stdout] test format_validator::tests::test_finding_with_offset ... ok [INFO] [stdout] test format_validator::tests::test_format_extensions ... ok [INFO] [stdout] test format_validator::tests::test_severity_is_blocking ... ok [INFO] [stdout] test format_validator::tests::test_validate_file_size_too_small ... ok [INFO] [stdout] test format_validator::tests::test_validate_magic_png ... ok [INFO] [stdout] test format_registry::tests::test_registry_register_and_get ... ok [INFO] [stdout] test format_validator::tests::test_validation_report_pass ... ok [INFO] [stdout] test ingest::tests::test_estimated_processing_time_large ... ok [INFO] [stdout] test ingest::tests::test_estimated_processing_time_minimum ... ok [INFO] [stdout] test ingest::tests::test_fail_unknown_path_is_noop ... ok [INFO] [stdout] test ingest::tests::test_ingest_candidate_new ... ok [INFO] [stdout] test format_validator::tests::test_validate_magic_mismatch ... ok [INFO] [stdout] test ingest::tests::test_pipeline_complete ... ok [INFO] [stdout] test format_validator::tests::test_severity_label ... ok [INFO] [stdout] test format_validator::tests::test_validation_report_with_warning ... ok [INFO] [stdout] test ingest::tests::test_ingest_tier_variants ... ok [INFO] [stdout] test format_validator::tests::test_validation_report_fail ... ok [INFO] [stdout] test ingest::tests::test_complete_unknown_path_is_noop ... ok [INFO] [stdout] test ingest::tests::test_pipeline_fail ... ok [INFO] [stdout] test ingest::tests::test_pipeline_start_next_empty ... ok [INFO] [stdout] test ingest::tests::test_pipeline_submit_and_stats ... ok [INFO] [stdout] test ingest::tests::test_pipeline_multiple_operations ... ok [INFO] [stdout] test ingest::tests::test_stats_total_bytes_in_progress ... ok [INFO] [stdout] test integrity_check::tests::test_anomaly_detector_anomalous_assets ... ok [INFO] [stdout] test integrity_check::tests::test_anomaly_detector_global_pass_rate ... ok [INFO] [stdout] test integrity_check::tests::test_anomaly_detector_no_history ... ok [INFO] [stdout] test integrity_check::tests::test_merkle_tree_odd_leaves ... ok [INFO] [stdout] test integrity_check::tests::test_merkle_tree_single_leaf ... ok [INFO] [stdout] test integrity_check::tests::test_hash_algorithm_digest_bytes ... ok [INFO] [stdout] test integrity_check::tests::test_merkle_tree_two_leaves ... ok [INFO] [stdout] test integrity_check::tests::test_merkle_tree_algorithm ... ok [INFO] [stdout] test ingest::tests::test_pipeline_start_next_fifo ... ok [INFO] [stdout] test integrity_check::tests::test_merkle_tree_empty ... ok [INFO] [stdout] test integrity_check::tests::test_schedule_is_due ... ok [INFO] [stdout] test integrity_check::tests::test_verification_result_fail ... ok [INFO] [stdout] test metadata::dublin_core::tests::test_dublin_core_builder ... ok [INFO] [stdout] test integrity_check::tests::test_schedule_weekly ... ok [INFO] [stdout] test metadata::dublin_core::tests::test_dublin_core_empty_record ... ok [INFO] [stdout] test metadata::dublin_core::tests::test_dublin_core_json_roundtrip ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_document_creation ... ok [INFO] [stdout] test integrity_check::tests::test_verification_result_pass ... ok [INFO] [stdout] test metadata::dublin_core::tests::test_dublin_core_xml_serialization ... ok [INFO] [stdout] test metadata::dublin_core::tests::test_dublin_core_xml_roundtrip ... ok [INFO] [stdout] test metadata::dublin_core::tests::test_dublin_core_xml_special_chars ... ok [INFO] [stdout] test metadata::extract::tests::test_extract_basic_metadata ... ok [INFO] [stdout] test metadata::extract::tests::test_extract_sidecar ... ok [INFO] [stdout] test metadata::embed::tests::test_embed_sidecar ... ok [INFO] [stdout] test metadata::embed::tests::test_metadata_embedder ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_with_files ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_xml ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_event_creation ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_metadata_xml ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_save_and_reload ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_rights_copyright_xml ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_object_creation ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_structural_map_nested_subdivisions ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_rights_other_xml ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_metadata_with_rights ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_rights_full_premis_document ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_structural_map_with_order ... ok [INFO] [stdout] test metadata::premis::tests::test_premis_rights_license_xml ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_structural_map_generation ... ok [INFO] [stdout] test metadata::premis::tests::test_rights_basis_label ... ok [INFO] [stdout] test metadata::mets::tests::test_mets_xml_streaming_matches_content ... ok [INFO] [stdout] test metadata::premis::tests::test_for_file ... ok [INFO] [stdout] test metadata::tests::test_dublin_core_creation ... ok [INFO] [stdout] test metadata::tests::test_dublin_core_xml ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_add_multiple_rules ... ok [INFO] [stdout] test integrity_check::tests::test_anomaly_detector_consecutive_failures ... ok [INFO] [stdout] test integrity_check::tests::test_anomaly_detector_empty_pass_rate ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_rules_slice ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_empty_default ... ok [INFO] [stdout] test metadata::tests::test_xml_escaping ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_rule_count ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_rule_transform_value_with_prefix ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_rule_transform_value_no_prefix ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_rule_target_field ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_transform_known_fields ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_transform_wrong_scheme_ignored ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_crosswalk_transform_missing_source_field ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_scheme_prefixes_nonempty ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_scheme_namespaces_nonempty ... ok [INFO] [stdout] test migrate::planner::tests::test_plan_migration ... ok [INFO] [stdout] test migrate::execute::tests::test_dry_run_migration ... ok [INFO] [stdout] test migrate::planner::tests::test_prioritize_plans ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_transform_partial_match ... ok [INFO] [stdout] test migrate::validate::tests::test_generate_report ... ok [INFO] [stdout] test migrate::execute::tests::test_keep_both_strategy ... ok [INFO] [stdout] test migrate::planner::tests::test_format_risk_assessment ... ok [INFO] [stdout] test migrate::validate::tests::test_validate_successful_migration ... ok [INFO] [stdout] test migrate::tests::test_priority_ordering ... ok [INFO] [stdout] test metadata_crosswalk::tests::test_scheme_namespace_dc ... ok [INFO] [stdout] test migration_plan::tests::test_plan_add_tasks ... ok [INFO] [stdout] test migrate::validate::tests::test_validate_failed_migration ... ok [INFO] [stdout] test migration_plan::tests::test_plan_completion_ratio ... ok [INFO] [stdout] test migration_plan::tests::test_plan_creation ... ok [INFO] [stdout] test migration_plan::tests::test_plan_estimated_duration ... ok [INFO] [stdout] test migration_plan::tests::test_plan_filter_by_priority ... ok [INFO] [stdout] test migration_plan::tests::test_plan_is_complete ... ok [INFO] [stdout] test migration_plan::tests::test_plan_metadata ... ok [INFO] [stdout] test migration_plan::tests::test_plan_sort_by_priority ... ok [INFO] [stdout] test migration_plan::tests::test_plan_summary ... ok [INFO] [stdout] test migration_plan::tests::test_plan_validate_ok ... ok [INFO] [stdout] test migration_plan::tests::test_plan_validate_errors ... ok [INFO] [stdout] test migration_plan::tests::test_plan_with_deadline ... ok [INFO] [stdout] test migration_plan::tests::test_priority_display ... ok [INFO] [stdout] test migration_plan::tests::test_status_display ... ok [INFO] [stdout] test migration_plan::tests::test_task_creation ... ok [INFO] [stdout] test migration_plan::tests::test_task_is_actionable ... ok [INFO] [stdout] test migration_plan::tests::test_task_is_terminal ... ok [INFO] [stdout] test migration_plan::tests::test_task_tags ... ok [INFO] [stdout] test migration_plan::tests::test_task_throughput ... ok [INFO] [stdout] test oais_model::tests::test_package_is_complete_false_missing_pdi ... ok [INFO] [stdout] test oais_model::tests::test_package_is_complete_false_no_content ... ok [INFO] [stdout] test oais_model::tests::test_package_is_complete_true ... ok [INFO] [stdout] test oais_model::tests::test_package_new ... ok [INFO] [stdout] test oais_model::tests::test_package_to_dip ... ok [INFO] [stdout] test oais_model::tests::test_pdi_is_complete ... ok [INFO] [stdout] test oais_model::tests::test_pdi_is_complete_missing_field ... ok [INFO] [stdout] test oais_model::tests::test_repository_aip_count ... ok [INFO] [stdout] test oais_model::tests::test_repository_empty_counts ... ok [INFO] [stdout] test oais_model::tests::test_repository_find_missing ... ok [INFO] [stdout] test oais_model::tests::test_repository_ingest_and_find ... ok [INFO] [stdout] test oais_model::tests::test_repository_packages_of_type_dip ... ok [INFO] [stdout] test oais_model::tests::test_repository_sip_count ... ok [INFO] [stdout] test package::bagit::tests::test_bagit_v1_compliance_missing_bagit_txt ... ok [INFO] [stdout] test package::bagit::tests::test_load_bagit_package ... ok [INFO] [stdout] test package::bagit::tests::test_bagit_v1_compliance_valid_bag ... ok [INFO] [stdout] test package::bagit::tests::test_bagit_v1_compliance_with_tagmanifest ... ok [INFO] [stdout] test package::oais::tests::test_create_aip_package ... ok [INFO] [stdout] test package::bagit::tests::test_validate_bagit_package ... ok [INFO] [stdout] test package::bagit::tests::test_incremental_add_and_remove ... ok [INFO] [stdout] test package::bagit::tests::test_bagit_conformance_suite_simulation ... ok [INFO] [stdout] test package::oais::tests::test_create_sip_package ... ok [INFO] [stdout] test package::bagit::tests::test_bagit_v1_compliance_fetch_txt_noted ... ok [INFO] [stdout] test package::bagit::tests::test_incremental_add_file ... ok [INFO] [stdout] test package::oais::tests::test_dip_generation_rejects_non_aip ... ok [INFO] [stdout] test package::bagit::tests::test_incremental_remove_file ... ok [INFO] [stdout] test package::oais::tests::test_load_oais_package ... ok [INFO] [stdout] test package::oais::tests::test_dip_generation_with_max_files ... ok [INFO] [stdout] test package::oais::tests::test_dip_generation_with_format_filter ... ok [INFO] [stdout] test package::oais::tests::test_dip_metadata_references_source_aip ... ok [INFO] [stdout] test package::oais::tests::test_oais_package_types ... ok [INFO] [stdout] test package::tar::tests::test_create_from_directory ... ok [INFO] [stdout] test package::oais::tests::test_dip_generation_with_extra_metadata ... ok [INFO] [stdout] test package::tar::tests::test_extract_tar_archive ... ok [INFO] [stdout] test policy::define::tests::test_default_policy ... ok [INFO] [stdout] test package::oais::tests::test_dip_can_be_loaded_back ... ok [INFO] [stdout] test package::zip::tests::test_uncompressed_archive ... ok [INFO] [stdout] test package::tar::tests::test_list_tar_contents ... ok [INFO] [stdout] test policy::define::tests::test_policy_builder ... ok [INFO] [stdout] test policy::enforce::tests::test_generate_report ... ok [INFO] [stdout] test package::tests::test_package_format_names ... ok [INFO] [stdout] test policy::enforce::tests::test_check_compliance ... ok [INFO] [stdout] test package::oais::tests::test_dip_generation_basic ... ok [INFO] [stdout] test policy::enforce::tests::test_metadata_requirement ... ok [INFO] [stdout] test provenance_chain::tests::test_append_event ... ok [INFO] [stdout] test provenance_chain::tests::test_chain_digest_changes_with_events ... ok [INFO] [stdout] test provenance_chain::tests::test_compute_chain_hash_deterministic ... ok [INFO] [stdout] test provenance_chain::tests::test_chain_integrity_empty ... ok [INFO] [stdout] test provenance_chain::tests::test_chain_integrity_broken ... ok [INFO] [stdout] test provenance_chain::tests::test_chain_integrity_valid ... ok [INFO] [stdout] test policy::define::tests::test_save_and_load_policy ... ok [INFO] [stdout] test provenance_chain::tests::test_current_custodian ... ok [INFO] [stdout] test provenance_chain::tests::test_event_counts ... ok [INFO] [stdout] test provenance_chain::tests::test_event_kind_modifies_content ... ok [INFO] [stdout] test provenance_chain::tests::test_event_with_state_hash_and_metadata ... ok [INFO] [stdout] test provenance_chain::tests::test_event_kind_label ... ok [INFO] [stdout] test provenance_chain::tests::test_event_metadata_included_in_digest ... ok [INFO] [stdout] test provenance_chain::tests::test_events_of_kind ... ok [INFO] [stdout] test provenance_chain::tests::test_hmac_sha256_different_keys_different_output ... ok [INFO] [stdout] test provenance_chain::tests::test_full_verify_broken_chain ... ok [INFO] [stdout] test provenance_chain::tests::test_full_verify_valid ... ok [INFO] [stdout] test provenance_chain::tests::test_hmac_sha256_known_vector ... ok [INFO] [stdout] test provenance_chain::tests::test_latest_event ... ok [INFO] [stdout] test provenance_chain::tests::test_hmac_sha256_long_key ... ok [INFO] [stdout] test provenance_chain::tests::test_new_chain_is_empty ... ok [INFO] [stdout] test provenance_chain::tests::test_sign_deterministic ... ok [INFO] [stdout] test provenance_chain::tests::test_sign_empty_chain ... ok [INFO] [stdout] test provenance_chain::tests::test_sign_produces_signature ... ok [INFO] [stdout] test package::bagit::tests::test_create_bagit_package ... ok [INFO] [stdout] test provenance_chain::tests::test_signed_chain_events_accessible ... ok [INFO] [stdout] test provenance_chain::tests::test_verify_tampered_asset_id ... ok [INFO] [stdout] test provenance_chain::tests::test_signed_chain_to_json ... ok [INFO] [stdout] test provenance_chain::tests::test_verify_tampered_event ... ok [INFO] [stdout] test package::zip::tests::test_extract_zip_archive ... ok [INFO] [stdout] test package::zip::tests::test_create_zip_archive ... ok [INFO] [stdout] test provenance_chain::tests::test_verify_valid_signature ... ok [INFO] [stdout] test provenance_chain::tests::test_verify_wrong_key ... ok [INFO] [stdout] test replication_verify::tests::test_file_replica_info_consistent ... ok [INFO] [stdout] test replication_verify::tests::test_file_replica_info_unchecked ... ok [INFO] [stdout] test replication_verify::tests::test_repair_action_variants ... ok [INFO] [stdout] test replication_verify::tests::test_replica_location_primary ... ok [INFO] [stdout] test replication_verify::tests::test_replica_location_secondary ... ok [INFO] [stdout] test replication_verify::tests::test_verification_summary_all_consistent ... ok [INFO] [stdout] test replication_verify::tests::test_verification_summary_empty ... ok [INFO] [stdout] test replication_verify::tests::test_verification_summary_with_issues ... ok [INFO] [stdout] test package::tar::tests::test_create_tar_archive ... ok [INFO] [stdout] test restore_workflow::tests::test_manager_next_request_priority_order ... ok [INFO] [stdout] test restore_workflow::tests::test_manager_submit_and_len ... ok [INFO] [stdout] test restore_workflow::tests::test_manager_update_status ... ok [INFO] [stdout] test replication_verify::tests::test_verifier_diverged_consistent_files ... ok [INFO] [stdout] test replication_verify::tests::test_file_replica_info_diverged ... ok [INFO] [stdout] test replication_verify::tests::test_verifier_recommend_repairs ... ok [INFO] [stdout] test replication_verify::tests::test_verifier_verify_all ... ok [INFO] [stdout] test restore_workflow::tests::test_restore_priority_labels ... ok [INFO] [stdout] test replication_verify::tests::test_verifier_add_locations ... ok [INFO] [stdout] test restore_workflow::tests::test_manager_update_status_missing ... ok [INFO] [stdout] test restore_workflow::tests::test_restore_request_sla_breached ... ok [INFO] [stdout] test restore_workflow::tests::test_restore_priority_ordering ... ok [INFO] [stdout] test restore_workflow::tests::test_restore_request_sla_deadline ... ok [INFO] [stdout] test restore_workflow::tests::test_restore_request_sla_not_breached ... ok [INFO] [stdout] test restore_workflow::tests::test_sla_breaches_detection ... ok [INFO] [stdout] test restore_workflow::tests::test_sla_report_compliance ... ok [INFO] [stdout] test restore_workflow::tests::test_sla_report_empty_manager ... ok [INFO] [stdout] test restore_workflow::tests::test_sla_secs_ordering ... ok [INFO] [stdout] test retention::tests::test_days_until_expiry_negative_when_expired ... ok [INFO] [stdout] test package::zip::tests::test_list_zip_contents ... ok [INFO] [stdout] test retention::tests::test_days_until_expiry_none_for_permanent ... ok [INFO] [stdout] test retention::tests::test_days_until_expiry_positive ... ok [INFO] [stdout] test retention::tests::test_mark_accessed_advances_review_due ... ok [INFO] [stdout] test retention::tests::test_mark_accessed_updates_timestamp ... ok [INFO] [stdout] test retention::tests::test_review_annually_has_review_due ... ok [INFO] [stdout] test retention::tests::test_scheduler_empty ... ok [INFO] [stdout] test retention::tests::test_permanent_never_expires ... ok [INFO] [stdout] test retention::tests::test_scheduler_due_for_deletion ... ok [INFO] [stdout] test retention::tests::test_scheduler_due_for_review ... ok [INFO] [stdout] test retention::tests::test_review_annually_no_expiry ... ok [INFO] [stdout] test retention::tests::test_until_date_expires ... ok [INFO] [stdout] test retention::tests::test_years_from_creation_expires ... ok [INFO] [stdout] test risk::assess::tests::test_assess_file ... ok [INFO] [stdout] test risk::assess::tests::test_assess_preservation_format ... ok [INFO] [stdout] test risk::assess::tests::test_filter_high_risk ... ok [INFO] [stdout] test retention::tests::test_years_from_creation_not_expired ... ok [INFO] [stdout] test risk::alert::tests::test_no_alert_for_safe_format ... ok [INFO] [stdout] test retention::tests::test_years_from_last_access_uses_last_accessed ... ok [INFO] [stdout] test storage_quota::tests::test_format_bytes_small ... ok [INFO] [stdout] test storage_quota::tests::test_human_readable_used ... ok [INFO] [stdout] test storage_quota::tests::test_manager_add_remove_bytes ... ok [INFO] [stdout] test storage_quota::tests::test_manager_check_ok ... ok [INFO] [stdout] test storage_quota::tests::test_manager_is_blocked ... ok [INFO] [stdout] test storage_quota::tests::test_format_bytes_large ... ok [INFO] [stdout] test storage_quota::tests::test_manager_check_hard_exceeded ... ok [INFO] [stdout] test storage_quota::tests::test_manager_no_quota ... ok [INFO] [stdout] test risk::tests::test_risk_scores ... ok [INFO] [stdout] test risk::assess::tests::test_assess_critical_format ... ok [INFO] [stdout] test storage_quota::tests::test_manager_remaining_bytes ... ok [INFO] [stdout] test risk::tests::test_risk_level_ordering ... ok [INFO] [stdout] test risk::alert::tests::test_create_alert_from_critical_risk ... ok [INFO] [stdout] test storage_quota::tests::test_manager_check_soft_exceeded ... ok [INFO] [stdout] test storage_quota::tests::test_manager_report ... ok [INFO] [stdout] test storage_quota::tests::test_quota_config_from_gb ... ok [INFO] [stdout] test storage_quota::tests::test_quota_config_with_policy ... ok [INFO] [stdout] test storage_quota::tests::test_usage_percentage ... ok [INFO] [stdout] test version::history::tests::test_version_history ... ok [INFO] [stdout] test storage_quota::tests::test_usage_percentage_zero_limit ... ok [INFO] [stdout] test tests::test_preservation_format_extensions ... ok [INFO] [stdout] test tests::test_preservation_format_mime_types ... ok [INFO] [stdout] test version::diff::tests::test_generate_diff ... ok [INFO] [stdout] test version::control::tests::test_add_version ... ok [INFO] [stdout] test version::control::tests::test_multiple_versions ... ok [INFO] [stdout] test workflow_state::tests::test_manager_fail_sets_terminal ... ok [INFO] [stdout] test workflow_state::tests::test_manager_history_length ... ok [INFO] [stdout] test workflow_state::tests::test_manager_item_id ... ok [INFO] [stdout] test workflow_state::tests::test_manager_rollback ... ok [INFO] [stdout] test storage_quota::tests::test_quota_config_from_tb ... ok [INFO] [stdout] test workflow_state::tests::test_manager_advance_full_cycle ... ok [INFO] [stdout] test workflow_state::tests::test_manager_advance_fails_on_terminal ... ok [INFO] [stdout] test workflow_state::tests::test_phase_index_ordering ... ok [INFO] [stdout] test workflow_state::tests::test_phase_labels_nonempty ... ok [INFO] [stdout] test workflow_state::tests::test_terminal_index_is_max ... ok [INFO] [stdout] test workflow_state::tests::test_terminal_phases ... ok [INFO] [stdout] test workflow_state::tests::test_phase_next_chain ... ok [INFO] [stdout] test workflow_state::tests::test_manager_snapshot ... ok [INFO] [stdout] test workflow_state::tests::test_workflow_state_new ... ok [INFO] [stdout] test workflow_state::tests::test_workflow_state_with_notes ... ok [INFO] [stdout] test workflow_state::tests::test_manager_rollback_fails_at_initial ... ok [INFO] [stdout] test version::control::tests::test_prune_versions ... ok [INFO] [stdout] test tests::test_oais_lifecycle ... ok [INFO] [stdout] test archive_stats::tests::test_format_dist_top ... ok [INFO] [stdout] test cold_storage::tests::test_recommended_tier_cold ... ok [INFO] [stdout] test emulation_planning::tests::test_plan_native_format ... ok [INFO] [stdout] test integrity_check::tests::test_hash_algorithm_names ... ok [INFO] [stdout] test risk::monitor::tests::test_risk_monitor ... ok [INFO] [stdout] test package::bagit::tests::test_parallel_manifest_generation ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 551 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s [INFO] [stdout] [INFO] [stderr] Doc-tests oximedia_archive_pro [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/lib.rs - (line 18) - compile ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "4d6de3947b5f27fc9d60fc3eeda7ef07e60440ea22b16692ae7cd058085447aa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4d6de3947b5f27fc9d60fc3eeda7ef07e60440ea22b16692ae7cd058085447aa", kill_on_drop: false }` [INFO] [stdout] 4d6de3947b5f27fc9d60fc3eeda7ef07e60440ea22b16692ae7cd058085447aa