[INFO] fetching crate oximedia-edit 0.1.5...
[INFO] testing oximedia-edit-0.1.5 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate oximedia-edit 0.1.5 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate oximedia-edit 0.1.5
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate oximedia-edit 0.1.5
[INFO] tweaked toml for crates.io crate oximedia-edit 0.1.5 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate oximedia-edit 0.1.5 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate oximedia-edit 0.1.5 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9be883eca2feb087117496ec8f3536005d4d08d70f40b4a0c6dbf0d1c33019ee
[INFO] running `Command { std: "docker" "start" "-a" "9be883eca2feb087117496ec8f3536005d4d08d70f40b4a0c6dbf0d1c33019ee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9be883eca2feb087117496ec8f3536005d4d08d70f40b4a0c6dbf0d1c33019ee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9be883eca2feb087117496ec8f3536005d4d08d70f40b4a0c6dbf0d1c33019ee", kill_on_drop: false }`
[INFO] [stdout] 9be883eca2feb087117496ec8f3536005d4d08d70f40b4a0c6dbf0d1c33019ee
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 09365f02778fd6e8ce75a31e5a4d834a39a3d84cb96a654ebd2c1a61750e7986
[INFO] running `Command { std: "docker" "start" "-a" "09365f02778fd6e8ce75a31e5a4d834a39a3d84cb96a654ebd2c1a61750e7986", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling audio-core v0.2.1
[INFO] [stderr]    Compiling strength_reduce v0.2.4
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling oxifft v0.2.0
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling spin v0.10.0
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling seahash v4.1.0
[INFO] [stderr]    Compiling ttf-parser v0.21.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling fontdue v0.9.3
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling audioadapter v3.0.0
[INFO] [stderr]    Compiling audioadapter-sample v3.0.0
[INFO] [stderr]    Compiling windowfunctions v0.1.1
[INFO] [stderr]    Compiling jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling transpose v0.2.3
[INFO] [stderr]    Compiling primal-check v0.3.4
[INFO] [stderr]    Compiling audioadapter-buffers v3.0.0
[INFO] [stderr]    Compiling rustfft v6.4.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling oxifft-codegen v0.2.0
[INFO] [stderr]    Compiling visibility v0.1.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tokio v1.52.1
[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-deflate v0.2.6
[INFO] [stderr]    Compiling realfft v3.5.0
[INFO] [stderr]    Compiling rubato v2.0.0
[INFO] [stderr]    Compiling oximedia-core v0.1.5
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling oximedia-io v0.1.5
[INFO] [stderr]    Compiling oximedia-audio v0.1.5
[INFO] [stderr]    Compiling oximedia-codec v0.1.5
[INFO] [stderr]    Compiling oximedia-graph v0.1.5
[INFO] [stderr]    Compiling oximedia-edit v0.1.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 24s
[INFO] running `Command { std: "docker" "inspect" "09365f02778fd6e8ce75a31e5a4d834a39a3d84cb96a654ebd2c1a61750e7986", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "09365f02778fd6e8ce75a31e5a4d834a39a3d84cb96a654ebd2c1a61750e7986", kill_on_drop: false }`
[INFO] [stdout] 09365f02778fd6e8ce75a31e5a4d834a39a3d84cb96a654ebd2c1a61750e7986
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fd035b250644f8680636306f14eaaf32797b9f93045e0f2029c459ca4bd57e0a
[INFO] running `Command { std: "docker" "start" "-a" "fd035b250644f8680636306f14eaaf32797b9f93045e0f2029c459ca4bd57e0a", kill_on_drop: false }`
[INFO] [stderr]    Compiling oximedia-edit v0.1.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 11.02s
[INFO] running `Command { std: "docker" "inspect" "fd035b250644f8680636306f14eaaf32797b9f93045e0f2029c459ca4bd57e0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd035b250644f8680636306f14eaaf32797b9f93045e0f2029c459ca4bd57e0a", kill_on_drop: false }`
[INFO] [stdout] fd035b250644f8680636306f14eaaf32797b9f93045e0f2029c459ca4bd57e0a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 897b8d4a2698322ccc75d1e8184576d47cb08e6875d485a04f2babf56c8b091c
[INFO] running `Command { std: "docker" "start" "-a" "897b8d4a2698322ccc75d1e8184576d47cb08e6875d485a04f2babf56c8b091c", 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_edit-11e2a13baeb762cd)
[INFO] [stdout] 
[INFO] [stdout] running 792 tests
[INFO] [stdout] test auto_edit::tests::test_auto_clip_zero_duration ... ok
[INFO] [stdout] test auto_edit::tests::test_auto_clip_duration ... ok
[INFO] [stdout] test auto_edit::tests::test_detect_gaps ... ok
[INFO] [stdout] test auto_edit::tests::test_duck_config_default ... ok
[INFO] [stdout] test auto_edit::tests::test_ducked_level_below_threshold ... ok
[INFO] [stdout] test auto_edit::tests::test_ripple_close_gaps ... ok
[INFO] [stdout] test auto_edit::tests::test_sequence_fixed_gap ... ok
[INFO] [stdout] test auto_edit::tests::test_sequence_overlap ... ok
[INFO] [stdout] test auto_edit::tests::test_sequence_sort_by_timecode ... ok
[INFO] [stdout] test blade_tool::tests::test_all_tracks_cuts_all ... ok
[INFO] [stdout] test auto_edit::tests::test_sequence_empty ... ok
[INFO] [stdout] test auto_edit::tests::test_sequence_back_to_back ... ok
[INFO] [stdout] test auto_edit::tests::test_ducked_level_above_threshold ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_cut_at_frame ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_mode_labels ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_result_cuts_applied ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_tool_cut_single_clip ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_tool_default_fields ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_tool_no_cut_at_boundary ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_tool_no_cut_outside_range ... ok
[INFO] [stdout] test blade_tool::tests::test_linked_not_all ... ok
[INFO] [stdout] test blade_tool::tests::test_preview_cut_matches_cut ... ok
[INFO] [stdout] test blade_tool::tests::test_single_not_all ... ok
[INFO] [stdout] test clip_arrange::tests::test_align_ends ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_result_empty ... ok
[INFO] [stdout] test blade_tool::tests::test_blade_tool_all_tracks_cut_multiple ... ok
[INFO] [stdout] test clip_arrange::tests::test_align_starts ... ok
[INFO] [stdout] test clip_arrange::tests::test_close_gaps_already_contiguous ... ok
[INFO] [stdout] test clip_arrange::tests::test_close_gaps_removes_all_gaps ... ok
[INFO] [stdout] test clip_arrange::tests::test_close_gaps_single_clip_noop ... ok
[INFO] [stdout] test clip_arrange::tests::test_distribute_evenly_overflow_packs ... ok
[INFO] [stdout] test clip_arrange::tests::test_snap_to_grid_rounds_nearest ... ok
[INFO] [stdout] test clip_arrange::tests::test_snap_to_grid_zero_grid_noop ... ok
[INFO] [stdout] test clip_arrange::tests::test_total_gap_empty ... ok
[INFO] [stdout] test clip_arrange::tests::test_total_gap_with_gaps ... ok
[INFO] [stdout] test clip_arrange::tests::test_total_span_empty ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_is_slow_motion_false_variable ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_is_slow_motion_true ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_output_duration_slow_motion ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_output_duration_variable ... ok
[INFO] [stdout] test clip_speed::tests::test_freeze_frame_returns_none_for_non_freeze ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_constant_double ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_constant_half ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_output_duration_normal ... ok
[INFO] [stdout] test clip_arrange::tests::test_distribute_evenly_single_clip ... ok
[INFO] [stdout] test clip_arrange::tests::test_reverse_order_three_clips ... ok
[INFO] [stdout] test clip_arrange::tests::test_ripple_insert_gap ... ok
[INFO] [stdout] test clip_arrange::tests::test_total_gap_contiguous ... ok
[INFO] [stdout] test clip_speed::tests::test_constant_factor_returns_none_for_non_constant ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_normal ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_normal_with_source_offset ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_constant_with_offset ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_variable_ramp ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_default_is_normal ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_variable_single_constant_segment ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_effect_variable_empty_keyframes ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_freeze_frame ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_keyframe_interpolate_end ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_output_duration_reverse ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_not_normal_when_reverse ... ok
[INFO] [stdout] test clip_arrange::tests::test_reverse_order_single_noop ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_is_slow_motion_false_fast ... ok
[INFO] [stdout] test clip_speed::tests::test_clip_speed_is_normal ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_keyframe_interpolate_midpoint ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_keyframe_interpolate_start ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_keyframe_t_at_frame ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_keyframe_t_at_frame_same_frame_returns_none ... ok
[INFO] [stdout] test collab_edit::tests::test_ot_delete_wins_over_move ... ok
[INFO] [stdout] test collab_edit::tests::test_ot_non_concurrent_ops_pass_through ... ok
[INFO] [stdout] test collab_edit::tests::test_shared_edit_state_operations ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_mode_is_reverse ... ok
[INFO] [stdout] test collab_edit::tests::test_add_remove_peer ... ok
[INFO] [stdout] test collab_edit::tests::test_apply_edit_increments_revision ... ok
[INFO] [stdout] test collab_edit::tests::test_new_session ... ok
[INFO] [stdout] test color_grade_edit::tests::test_grade_node_name_curves ... ok
[INFO] [stdout] test color_grade_edit::tests::test_grade_node_name_lgg ... ok
[INFO] [stdout] test clip_speed::tests::test_speed_mode_is_variable ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_apply_identity_lgg ... ok
[INFO] [stdout] test color_grade_edit::tests::test_grade_node_name_hsl ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_edits_len ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_hsl_full_saturation ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_lut_identity_opacity ... ok
[INFO] [stdout] test color_grade_edit::tests::test_grade_node_name_lut ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_apply_empty ... ok
[INFO] [stdout] test collab_edit::tests::test_ot_concurrent_trims_suppressed ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_apply_bypass_skips_node ... ok
[INFO] [stdout] test color_grade_edit::tests::test_stack_node_count ... ok
[INFO] [stdout] test color_grade_edit::tests::test_toggle_bypass ... ok
[INFO] [stdout] test color_label::tests::test_color_label_invalid_rgb ... ok
[INFO] [stdout] test color_label::tests::test_color_label_rgb ... ok
[INFO] [stdout] test color_label::tests::test_color_label_rgb_white ... ok
[INFO] [stdout] test color_label::tests::test_color_label_shortcut_clamp_zero ... ok
[INFO] [stdout] test color_label::tests::test_color_label_without_shortcut_is_none ... ok
[INFO] [stdout] test color_label::tests::test_color_label_rgb_black ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_add_remove ... ok
[INFO] [stdout] test color_label::tests::test_color_label_rgb_lowercase_hex ... ok
[INFO] [stdout] test color_label::tests::test_color_label_rgb_short_hex_invalid ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_clear ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_find_by_tag ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_find_clips ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_known_keys ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_clip_label ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_clip_tags ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_clips_with_tag_value_exact_match ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_clips_with_label_empty_when_none_assigned ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_known_tag_keys_deduplicated ... ok
[INFO] [stdout] test color_label::tests::test_color_label_shortcut ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_multiple_tags_same_key_different_values ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_remove_clip ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_remove_clip_clears_both_label_and_tags ... ok
[INFO] [stdout] test color_label::tests::test_label_manager_set_clip_label_updates_existing ... ok
[INFO] [stdout] test color_label::tests::test_removing_label_definition_removes_from_clips ... ok
[INFO] [stdout] test color_label::tests::test_standard_labels ... ok
[INFO] [stdout] test color_label::tests::test_standard_labels_all_have_shortcuts ... ok
[INFO] [stdout] test color_label::tests::test_standard_labels_all_have_valid_rgb ... ok
[INFO] [stdout] test edit_context::tests::test_context_scope_stored ... ok
[INFO] [stdout] test color_label::tests::test_tag_equality ... ok
[INFO] [stdout] test edit_context::tests::test_edit_context_has_undo_false ... ok
[INFO] [stdout] test edit_context::tests::test_manager_current_is_latest ... ok
[INFO] [stdout] test edit_context::tests::test_manager_new_empty ... ok
[INFO] [stdout] test edit_context::tests::test_manager_depth_grows ... ok
[INFO] [stdout] test edit_context::tests::test_edit_context_has_undo_true ... ok
[INFO] [stdout] test edit_context::tests::test_manager_pop_empty_is_none ... ok
[INFO] [stdout] test color_label::tests::test_tag_creation ... ok
[INFO] [stdout] test edit_context::tests::test_manager_pop_returns_context ... ok
[INFO] [stdout] test edit_context::tests::test_manager_push_returns_id ... ok
[INFO] [stdout] test edit_context::tests::test_scope_local_not_downstream ... ok
[INFO] [stdout] test edit_context::tests::test_reversible_contexts_filtered ... ok
[INFO] [stdout] test clip_arrange::tests::test_total_span ... ok
[INFO] [stdout] test edit_macro::tests::test_action_display_all_variants ... ok
[INFO] [stdout] test edit_macro::tests::test_action_label ... ok
[INFO] [stdout] test collab_edit::tests::test_broadcast_drains_events ... ok
[INFO] [stdout] test edit_context::tests::test_scope_track_downstream ... ok
[INFO] [stdout] test edit_context::tests::test_scope_global_downstream ... ok
[INFO] [stdout] test edit_context::tests::test_scope_labels ... ok
[INFO] [stdout] test edit_macro::tests::test_action_targets_clip ... ok
[INFO] [stdout] test edit_macro::tests::test_library_crud ... ok
[INFO] [stdout] test edit_macro::tests::test_library_find_missing_returns_none ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_chain ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_display ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_compact_removes_noops ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_repeat ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_to_text ... ok
[INFO] [stdout] test edit_macro::tests::test_recorder_basic_flow ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_remap_ids ... ok
[INFO] [stdout] test edit_macro::tests::test_recorder_finish_stops_recording ... ok
[INFO] [stdout] test edit_macro::tests::test_remap_noop_and_gap_unchanged ... ok
[INFO] [stdout] test edit_preset::tests::test_builtin_montage ... ok
[INFO] [stdout] test edit_macro::tests::test_macro_referenced_clip_ids ... ok
[INFO] [stdout] test edit_macro::tests::test_recorder_undo_last ... ok
[INFO] [stdout] test edit_preset::tests::test_library_empty ... ok
[INFO] [stdout] test edit_preset::tests::test_library_remove ... ok
[INFO] [stdout] test edit_preset::tests::test_library_by_category ... ok
[INFO] [stdout] test edit_preset::tests::test_library_register_get ... ok
[INFO] [stdout] test edit_preset::tests::test_preset_new ... ok
[INFO] [stdout] test edit_preset::tests::test_builtin_pip ... ok
[INFO] [stdout] test edit_preset::tests::test_track_layout_opacity_clamped ... ok
[INFO] [stdout] test edit_preset::tests::test_track_layout_transform ... ok
[INFO] [stdout] test edit_preset::tests::test_track_layout_video ... ok
[INFO] [stdout] test edl::ale::tests::test_ale_custom_columns ... ok
[INFO] [stdout] test edl::ale::tests::test_parse_ale ... ok
[INFO] [stdout] test edl::ale::tests::test_write_ale ... ok
[INFO] [stdout] test edl::ale::tests::test_ale_to_edl ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_parse_freeze_frame ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_parse_dissolve ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_timecode_conversion ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_timecode_parse ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_parse_motion_effect ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_timecode_format ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_write_edl ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_parse_simple_edl ... ok
[INFO] [stdout] test edl_import::tests::test_clip_ids_match_event_numbers ... ok
[INFO] [stdout] test edl_import::tests::test_from_cmx3600_cut_events_only ... ok
[INFO] [stdout] test edl_import::tests::test_parse_timecode_drop_frame_semicolon ... ok
[INFO] [stdout] test edl_import::tests::test_clip_types_inferred_from_track ... ok
[INFO] [stdout] test edl_import::tests::test_parse_timecode_invalid ... ok
[INFO] [stdout] test edl_import::tests::test_parse_timecode_basic ... ok
[INFO] [stdout] test edl_import::tests::test_empty_edl ... ok
[INFO] [stdout] test edl_import::tests::test_reel_name_in_metadata ... ok
[INFO] [stdout] test edl_import::tests::test_source_in_out_in_frames ... ok
[INFO] [stdout] test edl_import::tests::test_timeline_position_in_frames ... ok
[INFO] [stdout] test edl_import::tests::test_with_fps_25 ... ok
[INFO] [stdout] test export::tests::test_export_csv_has_header ... ok
[INFO] [stdout] test export::tests::test_collect_clips_event_numbers_sequential ... ok
[INFO] [stdout] test export::tests::test_export_csv_speed_column ... ok
[INFO] [stdout] test export::tests::test_export_csv_escapes_comma_in_name ... ok
[INFO] [stdout] test export::tests::test_export_csv_row_count ... ok
[INFO] [stdout] test export::tests::test_export_csv_muted_flag ... ok
[INFO] [stdout] test export::tests::test_export_edl_clip_name_comments ... ok
[INFO] [stdout] test export::tests::test_export_edl_drop_frame_mode ... ok
[INFO] [stdout] test export::tests::test_export_edl_track_label_audio ... ok
[INFO] [stdout] test export::tests::test_export_edl_event_count ... ok
[INFO] [stdout] test export::tests::test_export_edl_has_fcm ... ok
[INFO] [stdout] test export::tests::test_export_edl_has_title ... ok
[INFO] [stdout] test export::tests::test_export_edl_track_label_video ... ok
[INFO] [stdout] test export::tests::test_export_xml_escapes_special_chars ... ok
[INFO] [stdout] test export::tests::test_export_xml_clipitem_count ... ok
[INFO] [stdout] test export::tests::test_export_xml_has_audio_block ... ok
[INFO] [stdout] test export::tests::test_frames_to_tc_one_hour ... ok
[INFO] [stdout] test export::tests::test_export_xml_has_video_block ... ok
[INFO] [stdout] test export::tests::test_frames_to_tc_zero ... ok
[INFO] [stdout] test edl::cmx3600::tests::test_roundtrip ... ok
[INFO] [stdout] test export::tests::test_export_xml_has_sequence_name ... ok
[INFO] [stdout] test export::tests::test_frames_to_tc_compound ... ok
[INFO] [stdout] test export::tests::test_export_xml_has_xmeml_root ... ok
[INFO] [stdout] test export::tests::test_frames_to_tc_roundtrip ... ok
[INFO] [stdout] test export::tests::test_xml_escape_all_chars ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_does_not_go_below_zero ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_does_not_exceed_max_position ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_forward_playback ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_invalidate ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_stationary ... ok
[INFO] [stdout] test frame_prefetch::tests::test_prefetch_config_default ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_disabled ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_reverse_playback ... ok
[INFO] [stdout] test frame_prefetch::tests::test_prefetch_request ... ok
[INFO] [stdout] test frame_prefetch::tests::test_prefetch_config_for_playback ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_chain_preset_effect_count ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_chain_preset_name ... ok
[INFO] [stdout] test frame_prefetch::tests::test_engine_mark_cached ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_chain_preset_to_strip ... ok
[INFO] [stdout] test frame_prefetch::tests::test_cached_positions_not_re_requested ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_slot_disable_enable ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_slot_is_enabled_default ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_active_count_all_enabled ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_add_effect ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_active_count_after_disable ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_disable_all_active_zero ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_enable_disable_returns_false_oob ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_len_and_is_empty ... ok
[INFO] [stdout] test fx_strip::tests::test_fx_strip_enable_returns_true ... ok
[INFO] [stdout] test group_edit::tests::test_batch_op_display ... ok
[INFO] [stdout] test group_edit::tests::test_batch_result_default ... ok
[INFO] [stdout] test group_edit::tests::test_batch_result_with_errors ... ok
[INFO] [stdout] test group_edit::tests::test_delete_group_cleans_reverse_index ... ok
[INFO] [stdout] test group_edit::tests::test_edit_group_new ... ok
[INFO] [stdout] test group_edit::tests::test_group_behavior_display ... ok
[INFO] [stdout] test group_edit::tests::test_edit_group_add_remove_member ... ok
[INFO] [stdout] test group_edit::tests::test_registry_groups_for_clip ... ok
[INFO] [stdout] test group_edit::tests::test_registry_plan_batch_op ... ok
[INFO] [stdout] test group_edit::tests::test_registry_add_clip_to_group ... ok
[INFO] [stdout] test group_edit::tests::test_edit_group_builders ... ok
[INFO] [stdout] test group_edit::tests::test_group_id_display ... ok
[INFO] [stdout] test history::tests::test_action_descriptions ... ok
[INFO] [stdout] test group_edit::tests::test_registry_plan_batch_op_locked ... ok
[INFO] [stdout] test group_edit::tests::test_registry_default ... ok
[INFO] [stdout] test history::tests::test_max_depth_enforced ... ok
[INFO] [stdout] test history::tests::test_move_clip_action ... ok
[INFO] [stdout] test history::tests::test_default_max_depth ... ok
[INFO] [stdout] test edit_preset::tests::test_library_builtins ... ok
[INFO] [stdout] test edit_preset::tests::test_preset_builder ... ok
[INFO] [stdout] test group_edit::tests::test_registry_create_delete ... ok
[INFO] [stdout] test group_edit::tests::test_registry_remove_clip_from_group ... ok
[INFO] [stdout] test history::tests::test_new_history_is_empty ... ok
[INFO] [stdout] test history::tests::test_clear_resets_both_stacks ... ok
[INFO] [stdout] test history::tests::test_multiple_undo_redo_cycle ... ok
[INFO] [stdout] test history::tests::test_push_clears_redo_stack ... ok
[INFO] [stdout] test history::tests::test_redo_empty_returns_none ... ok
[INFO] [stdout] test history::tests::test_redo_returns_action ... ok
[INFO] [stdout] test history::tests::test_trim_clip_action ... ok
[INFO] [stdout] test history::tests::test_undo_empty_returns_none ... ok
[INFO] [stdout] test history::tests::test_undo_enables_redo ... ok
[INFO] [stdout] test history::tests::test_push_enables_undo ... ok
[INFO] [stdout] test history_tree::tests::test_action_descriptions ... ok
[INFO] [stdout] test history_tree::tests::test_action_inverse ... ok
[INFO] [stdout] test history_tree::tests::test_clear ... ok
[INFO] [stdout] test history_tree::tests::test_branch_list ... ok
[INFO] [stdout] test history_tree::tests::test_compound_action ... ok
[INFO] [stdout] test history_tree::tests::test_branching ... ok
[INFO] [stdout] test history_tree::tests::test_create_named_branch ... ok
[INFO] [stdout] test history_tree::tests::test_deserialize_invalid_data ... ok
[INFO] [stdout] test history_tree::tests::test_diff_branches_diverged ... ok
[INFO] [stdout] test history_tree::tests::test_diff_branches_identical ... ok
[INFO] [stdout] test history_tree::tests::test_get_node ... ok
[INFO] [stdout] test history_tree::tests::test_empty_tree ... ok
[INFO] [stdout] test history_tree::tests::test_max_nodes_pruning ... ok
[INFO] [stdout] test history_tree::tests::test_path_to_branch_tip ... ok
[INFO] [stdout] test history_tree::tests::test_merge_with_conflict ... ok
[INFO] [stdout] test history_tree::tests::test_push_and_undo ... ok
[INFO] [stdout] test history_tree::tests::test_default_tree ... ok
[INFO] [stdout] test history_tree::tests::test_prune_branch ... ok
[INFO] [stdout] test history_tree::tests::test_merge_no_conflict ... ok
[INFO] [stdout] test history_tree::tests::test_prune_all_except ... ok
[INFO] [stdout] test history_tree::tests::test_path_to_cursor ... ok
[INFO] [stdout] test history_tree::tests::test_prune_active_branch_fails ... ok
[INFO] [stdout] test history_tree::tests::test_rename_branch ... ok
[INFO] [stdout] test history_tree::tests::test_serialize_deserialize_roundtrip ... ok
[INFO] [stdout] test history_tree::tests::test_serialize_compound_action ... ok
[INFO] [stdout] test history::tests::test_undo_returns_action ... ok
[INFO] [stdout] test history_tree::tests::test_current_action ... ok
[INFO] [stdout] test history_tree::tests::test_switch_to_named_branch_and_push ... ok
[INFO] [stdout] test history_tree::tests::test_undo_redo_cycle ... ok
[INFO] [stdout] test history_tree::tests::test_switch_branch ... ok
[INFO] [stdout] test history_tree::tests::test_serialize_with_branches ... ok
[INFO] [stdout] test incremental_render::tests::test_dirty_region_frame_count ... ok
[INFO] [stdout] test incremental_render::tests::test_mark_all_dirty ... ok
[INFO] [stdout] test incremental_render::tests::test_clear_dirty ... ok
[INFO] [stdout] test incremental_render::tests::test_merge_adjacent_regions ... ok
[INFO] [stdout] test incremental_render::tests::test_mark_dirty_and_is_dirty ... ok
[INFO] [stdout] test incremental_render::tests::test_non_overlapping_regions_stay_separate ... ok
[INFO] [stdout] test incremental_render::tests::test_merge_overlapping_regions ... ok
[INFO] [stdout] test incremental_render::tests::test_dirty_region_merge ... ok
[INFO] [stdout] test incremental_render::tests::test_render_incremental_clears_dirty ... ok
[INFO] [stdout] test insert_mode::tests::test_insert_point_new ... ok
[INFO] [stdout] test insert_mode::tests::test_overwrite_description ... ok
[INFO] [stdout] test insert_mode::tests::test_overwrite_does_not_shift ... ok
[INFO] [stdout] test insert_mode::tests::test_overwrite_within_timeline ... ok
[INFO] [stdout] test insert_mode::tests::test_push_pull_description ... ok
[INFO] [stdout] test insert_mode::tests::test_push_pull_resulting_duration ... ok
[INFO] [stdout] test insert_mode::tests::test_ripple_description ... ok
[INFO] [stdout] test insert_mode::tests::test_ripple_resulting_duration ... ok
[INFO] [stdout] test insert_mode::tests::test_ripple_shifts ... ok
[INFO] [stdout] test insert_mode::tests::test_snap_to_nearest_within_threshold ... ok
[INFO] [stdout] test interval_tree::tests::test_build_from_timeline ... ok
[INFO] [stdout] test insert_mode::tests::test_snap_outside_threshold_no_snap ... ok
[INFO] [stdout] test interval_tree::tests::test_clip_interval_contains_point ... ok
[INFO] [stdout] test insert_mode::tests::test_snap_empty_candidates ... ok
[INFO] [stdout] test interval_tree::tests::test_clip_interval_duration ... ok
[INFO] [stdout] test interval_tree::tests::test_clip_interval_overlaps ... ok
[INFO] [stdout] test history_tree::tests::test_serialize_empty_tree ... ok
[INFO] [stdout] test interval_tree::tests::test_build_tree ... ok
[INFO] [stdout] test interval_tree::tests::test_empty_tree ... ok
[INFO] [stdout] test interval_tree::tests::test_interval_tree_query ... ok
[INFO] [stdout] test interval_tree::tests::test_nearest_edge ... ok
[INFO] [stdout] test interval_tree::tests::test_many_intervals ... ok
[INFO] [stdout] test interval_tree::tests::test_nearest_edge_empty_tree ... ok
[INFO] [stdout] test interval_tree::tests::test_range_query_all ... ok
[INFO] [stdout] test interval_tree::tests::test_range_query_no_results ... ok
[INFO] [stdout] test interval_tree::tests::test_range_query ... ok
[INFO] [stdout] test interval_tree::tests::test_point_query ... ok
[INFO] [stdout] test interval_tree::tests::test_single_interval ... ok
[INFO] [stdout] test magnetic_snap::tests::test_all_enabled_config ... ok
[INFO] [stdout] test magnetic_snap::tests::test_beat_grid_generate ... ok
[INFO] [stdout] test clip_arrange::tests::test_distribute_evenly_two_clips ... ok
[INFO] [stdout] test insert_mode::tests::test_overwrite_extending_timeline ... ok
[INFO] [stdout] test insert_mode::tests::test_push_pull_shifts ... ok
[INFO] [stdout] test interval_tree::tests::test_query_point_no_match ... ok
[INFO] [stdout] test magnetic_snap::tests::test_beat_grid_with_offset ... ok
[INFO] [stdout] test magnetic_snap::tests::test_default_config ... ok
[INFO] [stdout] test magnetic_snap::tests::test_collect_targets_excludes_clips ... ok
[INFO] [stdout] test magnetic_snap::tests::test_collect_targets_from_timeline ... ok
[INFO] [stdout] test magnetic_snap::tests::test_detect_gaps_no_gaps ... ok
[INFO] [stdout] test magnetic_snap::tests::test_disabled_engine_returns_no_snap ... ok
[INFO] [stdout] test magnetic_snap::tests::test_detect_gaps ... ok
[INFO] [stdout] test magnetic_snap::tests::test_extended_engine_markers ... ok
[INFO] [stdout] test magnetic_snap::tests::test_extended_engine_with_beats ... ok
[INFO] [stdout] test magnetic_snap::tests::test_find_fitting_gap ... ok
[INFO] [stdout] test magnetic_snap::tests::test_gap_to_snap_targets ... ok
[INFO] [stdout] test magnetic_snap::tests::test_beat_grid_interval ... ok
[INFO] [stdout] test magnetic_snap::tests::test_grid_snapping ... ok
[INFO] [stdout] test magnetic_snap::tests::test_multitrack_target_collection ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_clip_region ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_edge_enum ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_multitrack_ignores_same_track ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_marker_creation ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_picks_closest ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_result_no_snap ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_on_timeline ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_result_snapped ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_target_creation ... ok
[INFO] [stdout] test magnetic_snap::tests::test_extended_engine_snap_with_zones ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_strength_multiplier ... ok
[INFO] [stdout] test magnetic_snap::tests::test_beat_grid_to_snap_targets ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_within_threshold ... ok
[INFO] [stdout] test magnetic_snap::tests::test_strength_zone_at_boundary ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_contains_position_point ... ok
[INFO] [stdout] test magnetic_snap::tests::test_strength_zone_at_center ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_contains_position_range ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_nudge_negative_clamps ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_nudge ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_nudge_range ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_point ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_nudge_locked ... ok
[INFO] [stdout] test magnetic_snap::tests::test_strength_zone_interpolation ... ok
[INFO] [stdout] test marker_edit::tests::test_edit_marker_range ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_filter_by_category ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_clear ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_markers_at ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_default ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_delete_by_category ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_nudge_all ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_category_display ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_add_and_get ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_sorted ... ok
[INFO] [stdout] test marker_edit::tests::test_snap_to_nearest_found ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_builders ... ok
[INFO] [stdout] test multi_export::tests::test_completed_count ... ok
[INFO] [stdout] test multi_export::tests::test_export_job_progress ... ok
[INFO] [stdout] test multi_export::tests::test_export_profile_pixel_count ... ok
[INFO] [stdout] test multi_export::tests::test_export_profile_defaults ... ok
[INFO] [stdout] test multi_export::tests::test_export_profile_zero_height ... ok
[INFO] [stdout] test multi_export::tests::test_export_profile_aspect_ratio ... ok
[INFO] [stdout] test multi_export::tests::test_multi_export_manager ... ok
[INFO] [stdout] test multi_export::tests::test_overall_progress ... ok
[INFO] [stdout] test multi_export::tests::test_queue_all ... ok
[INFO] [stdout] test multi_export::tests::test_queue_export ... ok
[INFO] [stdout] test multi_export::tests::test_standard_presets ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_camera_track_clip_at_ms_found ... ok
[INFO] [stdout] test marker_edit::tests::test_marker_editor_remove ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_camera_track_add_and_count ... ok
[INFO] [stdout] test marker_edit::tests::test_snap_to_nearest_not_found ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_clip_ref_creation ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_clip_ref_end_ms ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_add_cut_invalid_from_camera ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_add_cut_invalid_to_camera ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_cuts_sorted ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_add_cut_valid ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_generate_timeline_empty_cuts ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_remove_cut_at_found ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_generate_timeline_single_cut ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_editor_remove_cut_at_not_found ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_multicam_cut_creation ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_session_camera_local_ms ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_session_add_camera ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_sync_both_empty ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_session_set_sync_offset_valid ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_sync_empty_a ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_sync_empty_b ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_sync_identical_signals_zero_lag ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_sync_shifted_signal ... ok
[INFO] [stdout] test multicam::tests::test_camera_angle_clips ... ok
[INFO] [stdout] test multicam::tests::test_camera_angle_compute_alignment ... ok
[INFO] [stdout] test multicam::tests::test_camera_angle_compute_alignment_weighted ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_session_set_sync_offset_out_of_bounds ... ok
[INFO] [stdout] test multi_export::tests::test_export_status ... ok
[INFO] [stdout] test multicam::tests::test_multicam_group_add_remove_angle ... ok
[INFO] [stdout] test multicam::tests::test_multicam_group_remove_angle_removes_switches ... ok
[INFO] [stdout] test multicam::tests::test_multicam_group_switches ... ok
[INFO] [stdout] test multicam::tests::test_multicam_group_remove_switch ... ok
[INFO] [stdout] test multicam::tests::test_multicam_manager ... ok
[INFO] [stdout] test multicam::tests::test_multicam_manager_all_groups ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_camera_track_clip_at_ms_not_found ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_camera_track_clip_at_ms_second_clip ... ok
[INFO] [stdout] test multicam::tests::test_multicam_group_sync_all_angles ... ok
[INFO] [stdout] test multicam::multicam_session_tests::test_camera_track_timecode_start_offset ... ok
[INFO] [stdout] test auto_edit::tests::test_detect_no_gaps ... ok
[INFO] [stdout] test color_grade_edit::tests::test_color_grade_edit_is_destructive ... ok
[INFO] [stdout] test color_grade_edit::tests::test_color_grade_edit_not_destructive ... ok
[INFO] [stdout] test edit_preset::tests::test_preset_metadata ... ok
[INFO] [stdout] test edit_preset::tests::test_track_layout_audio ... ok
[INFO] [stdout] test interval_tree::tests::test_point_query_at_boundary ... ok
[INFO] [stdout] test magnetic_snap::tests::test_snap_multitrack_cross_track ... ok
[INFO] [stdout] test multi_export::tests::test_all_done ... ok
[INFO] [stdout] test multi_export::tests::test_clear_jobs ... ok
[INFO] [stdout] test multicam::tests::test_angle_switch_creation ... ok
[INFO] [stdout] test multitrack::tests::test_is_audible_muted ... ok
[INFO] [stdout] test multitrack::tests::test_is_audible_solo_mode_is_soloed ... ok
[INFO] [stdout] test multitrack::tests::test_is_audible_solo_mode_not_soloed ... ok
[INFO] [stdout] test multitrack::tests::test_multitrack_add_track ... ok
[INFO] [stdout] test multitrack::tests::test_multitrack_audible_tracks_all_active ... ok
[INFO] [stdout] test multitrack::tests::test_is_audible_no_solo_not_muted ... ok
[INFO] [stdout] test multitrack::tests::test_multitrack_mute_track ... ok
[INFO] [stdout] test multitrack::tests::test_track_lock_locked_cannot_edit ... ok
[INFO] [stdout] test multitrack::tests::test_track_type_audio_is_av ... ok
[INFO] [stdout] test multitrack::tests::test_track_type_effect_not_av ... ok
[INFO] [stdout] test multitrack::tests::test_multitrack_solo_track ... ok
[INFO] [stdout] test multitrack::tests::test_track_type_video_is_av ... ok
[INFO] [stdout] test multitrack::tests::test_track_type_title_not_av ... ok
[INFO] [stdout] test multitrack::tests::test_track_visibility_defaults ... ok
[INFO] [stdout] test multitrack::tests::test_track_lock_new_unlocked ... ok
[INFO] [stdout] test nested_sequence::tests::test_conform_method_display ... ok
[INFO] [stdout] test nested_sequence::tests::test_frame_rate_as_f64 ... ok
[INFO] [stdout] test multitrack::tests::test_multitrack_lock_track ... ok
[INFO] [stdout] test multicam::tests::test_sync_method_label ... ok
[INFO] [stdout] test multicam::tests::test_sync_point_confidence_clamped ... ok
[INFO] [stdout] test multicam::tests::test_sync_point_creation ... ok
[INFO] [stdout] test multicam::tests::test_sync_point_is_confident ... ok
[INFO] [stdout] test nested_sequence::tests::test_frame_rate_display_integer ... ok
[INFO] [stdout] test nested_sequence::tests::test_frame_rate_display_rational ... ok
[INFO] [stdout] test nested_sequence::tests::test_frame_rate_zero_den ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_ref_duration_double_speed ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_ref_end_position ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_ref_duration_zero_speed ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_sequence_add_and_remove_ref ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_ref_duration_normal_speed ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_sequence_builders ... ok
[INFO] [stdout] test nested_sequence::tests::test_nested_ref_with_conform ... ok
[INFO] [stdout] test nested_sequence::tests::test_registry_default ... ok
[INFO] [stdout] test nested_sequence::tests::test_registry_remove_cleans_refs ... ok
[INFO] [stdout] test nested_sequence::tests::test_sequence_id_display ... ok
[INFO] [stdout] test parallel_render::tests::test_render_chunk_frame_count ... ok
[INFO] [stdout] test parallel_render::tests::test_split_chunks_exact_multiple ... ok
[INFO] [stdout] test parallel_render::tests::test_split_chunks_non_multiple ... ok
[INFO] [stdout] test parallel_render::tests::test_split_chunks_zero_frames ... ok
[INFO] [stdout] test nested_sequence::tests::test_registry_create_and_get ... ok
[INFO] [stdout] test nested_sequence::tests::test_registry_cycle_detection_indirect ... ok
[INFO] [stdout] test nested_sequence::tests::test_registry_depth ... ok
[INFO] [stdout] test nested_sequence::tests::test_registry_cycle_detection_self ... ok
[INFO] [stdout] test parallel_render::tests::test_config_builder ... ok
[INFO] [stdout] test parallel_render::tests::test_render_parallel_all_succeed ... ok
[INFO] [stdout] test parallel_render::tests::test_total_frames_for ... ok
[INFO] [stdout] test picture_in_picture::pip_compositor_tests::test_pip_compositor_clamped_to_main_bounds ... ok
[INFO] [stdout] test picture_in_picture::pip_compositor_tests::test_pip_compositor_fully_opaque_overwrites ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_animation_add_keyframes_sorted ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_animation_layout_at_step_hold ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_animation_no_keyframes_returns_none ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_layout_compute_rect_stays_within_frame ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_layout_with_size ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_layout_with_opacity_clamped ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_position_anchor_pct_custom ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_position_anchor_pct_named ... ok
[INFO] [stdout] test pip::tests::test_pip_layout_active_at ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_position_name ... ok
[INFO] [stdout] test pip::tests::test_pip_layout_keyframe_before_first ... ok
[INFO] [stdout] test pip::tests::test_pip_layout_keyframe_interpolation ... ok
[INFO] [stdout] test pip::tests::test_pip_layout_no_keyframes_returns_default ... ok
[INFO] [stdout] test pip::tests::test_pip_layout_keyframe_after_last ... ok
[INFO] [stdout] test pip::tests::test_pip_layout_remove_keyframes_at ... ok
[INFO] [stdout] test pip::tests::test_pip_manager_active_at ... ok
[INFO] [stdout] test pip::tests::test_pip_state_invisible ... ok
[INFO] [stdout] test pip::tests::test_pip_presets_normalised_range ... ok
[INFO] [stdout] test pip::tests::test_pip_state_pixel_rect ... ok
[INFO] [stdout] test pip::tests::test_pip_manager_add_remove ... ok
[INFO] [stdout] test proxy::tests::test_generation_queue_basic_flow ... ok
[INFO] [stdout] test proxy::tests::test_fnv_hash_deterministic ... ok
[INFO] [stdout] test proxy::tests::test_generation_queue_failure ... ok
[INFO] [stdout] test proxy::tests::test_generation_queue_overall_progress ... ok
[INFO] [stdout] test proxy::tests::test_generation_queue_idle_after_drain ... ok
[INFO] [stdout] test proxy::tests::test_generation_queue_progress ... ok
[INFO] [stdout] test proxy::tests::test_proxy_chain_add_and_select ... ok
[INFO] [stdout] test proxy::tests::test_proxy_chain_no_ready ... ok
[INFO] [stdout] test proxy::tests::test_proxy_chain_sorted_by_scale ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_layout_compute_rect_proportions ... ok
[INFO] [stdout] test picture_in_picture::pip_compositor_tests::test_pip_compositor_fully_transparent_keeps_main ... ok
[INFO] [stdout] test picture_in_picture::pip_compositor_tests::test_pip_compositor_output_size ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_animation_duration_empty ... ok
[INFO] [stdout] test picture_in_picture::tests::test_pip_animation_duration_secs ... ok
[INFO] [stdout] test proxy::tests::test_proxy_chain_fallback_to_highest_ready ... ok
[INFO] [stdout] test proxy::tests::test_proxy_codec_labels ... ok
[INFO] [stdout] test proxy::tests::test_proxy_manager_pending_generation ... ok
[INFO] [stdout] test proxy::tests::test_proxy_manager_register_and_resolve ... ok
[INFO] [stdout] test proxy::tests::test_proxy_manager_source_count ... ok
[INFO] [stdout] test proxy::tests::test_proxy_mapping_scale_factor ... ok
[INFO] [stdout] test proxy::tests::test_proxy_mapping_zero_original_width ... ok
[INFO] [stdout] test proxy::tests::test_proxy_mode_logic ... ok
[INFO] [stdout] test proxy::tests::test_proxy_resolution_dimensions ... ok
[INFO] [stdout] test proxy::tests::test_proxy_status_is_usable ... ok
[INFO] [stdout] test proxy::tests::test_relinker_hash_match ... ok
[INFO] [stdout] test proxy::tests::test_proxy_resolution_zero_dimensions ... ok
[INFO] [stdout] test proxy::tests::test_relinker_no_match ... ok
[INFO] [stdout] test proxy::tests::test_workflow_manager_select_for_zoom ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_basic_get_or_render ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_capacity_32 ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_capacity_clamped_to_one ... ok
[INFO] [stdout] test proxy::tests::test_workflow_manager_register_with_chain ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_debug_format ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_clear ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_eviction_order ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_insert_and_get ... ok
[INFO] [stdout] test proxy::tests::test_workflow_manager_enqueue_pending ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_get_missing ... ok
[INFO] [stdout] test render_queue::tests::test_add_job_assigns_sequential_ids ... ok
[INFO] [stdout] test render_queue::tests::test_add_job_len_increases ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_lru_eviction ... ok
[INFO] [stdout] test render_queue::tests::test_cancel_pending_job ... ok
[INFO] [stdout] test proxy::tests::test_relinker_stem_match ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_invalidate ... ok
[INFO] [stdout] test render::raw_cache_tests::test_raw_frame_cache_is_empty_initially ... ok
[INFO] [stdout] test render_queue::tests::test_complete_job_sets_progress_100 ... ok
[INFO] [stdout] test render_queue::tests::test_cancel_running_job_via_update_status ... ok
[INFO] [stdout] test render_queue::tests::test_fail_job_sets_error_message ... ok
[INFO] [stdout] test render_queue::tests::test_get_job_found ... ok
[INFO] [stdout] test render_queue::tests::test_get_job_not_found ... ok
[INFO] [stdout] test render_queue::tests::test_export_config_default_resolution ... ok
[INFO] [stdout] test render_queue::tests::test_job_status_is_terminal ... ok
[INFO] [stdout] test render_queue::tests::test_export_config_new_sets_path ... ok
[INFO] [stdout] test render_queue::tests::test_complete_job ... ok
[INFO] [stdout] test render_queue::tests::test_fail_job_error_message_stored ... ok
[INFO] [stdout] test render_queue::tests::test_jobs_with_status ... ok
[INFO] [stdout] test render_queue::tests::test_next_job_skips_cancelled_pending ... ok
[INFO] [stdout] test render_queue::tests::test_next_job_returns_highest_priority ... ok
[INFO] [stdout] test render_queue::tests::test_next_job_transitions_status_to_running ... ok
[INFO] [stdout] test render_queue::tests::test_pending_count ... ok
[INFO] [stdout] test render_queue::tests::test_next_job_returns_none_when_empty ... ok
[INFO] [stdout] test render_queue::tests::test_purge_completed_removes_terminal ... ok
[INFO] [stdout] test render_queue::tests::test_purge_completed_retains_pending_and_running ... ok
[INFO] [stdout] test render_queue::tests::test_remove_job_returns_correct_job ... ok
[INFO] [stdout] test render_queue::tests::test_remove_nonexistent_job_returns_none ... ok
[INFO] [stdout] test render_queue::tests::test_next_job_fifo_within_same_priority ... ok
[INFO] [stdout] test render_queue::tests::test_render_job_initial_progress_is_zero ... ok
[INFO] [stdout] test ripple::tests::test_clip_end ... ok
[INFO] [stdout] test render_queue::tests::test_render_queue_get_job_mut ... ok
[INFO] [stdout] test render_queue::tests::test_set_progress_clamps_to_100 ... ok
[INFO] [stdout] test ripple::tests::test_ripple_delete_returns_deleted_duration ... ok
[INFO] [stdout] test render_queue::tests::test_set_progress_on_pending_job_fails ... ok
[INFO] [stdout] test ripple::tests::test_ripple_delete_zero_range ... ok
[INFO] [stdout] test ripple::tests::test_ripple_insert_different_track_unchanged ... ok
[INFO] [stdout] test ripple::tests::test_ripple_insert_shifts_clips_after_point ... ok
[INFO] [stdout] test ripple::tests::test_ripple_mode_overwrite_no_shift ... ok
[INFO] [stdout] test ripple::tests::test_ripple_trim_left_clip_not_found ... ok
[INFO] [stdout] test ripple::tests::test_ripple_trim_left_shortens_clip ... ok
[INFO] [stdout] test ripple::tests::test_ripple_trim_right_clip_not_found ... ok
[INFO] [stdout] test ripple::tests::test_ripple_trim_right_shortens_clip ... ok
[INFO] [stdout] test ripple::tests::test_ripple_trim_right_zero_duration_error ... ok
[INFO] [stdout] test selection::tests::test_clear ... ok
[INFO] [stdout] test ripple::tests::test_three_point_edit_invalid_range ... ok
[INFO] [stdout] test selection::tests::test_edit_selection_add_and_contains ... ok
[INFO] [stdout] test ripple::tests::test_three_point_edit_insert ... ok
[INFO] [stdout] test selection::tests::test_edit_selection_add_no_duplicate ... ok
[INFO] [stdout] test selection::tests::test_edit_selection_clear ... ok
[INFO] [stdout] test render_queue::tests::test_job_label ... ok
[INFO] [stdout] test render_queue::tests::test_render_job_is_pending_after_creation ... ok
[INFO] [stdout] test selection::tests::test_is_empty_initially ... ok
[INFO] [stdout] test selection::tests::test_linked_selection_add_group ... ok
[INFO] [stdout] test selection::tests::test_linked_selection_clip_not_in_any_group ... ok
[INFO] [stdout] test selection::tests::test_linked_selection_empty_group_ignored ... ok
[INFO] [stdout] test selection::tests::test_edit_selection_remove ... ok
[INFO] [stdout] test selection::tests::test_edit_selection_tracks_unique ... ok
[INFO] [stdout] test proxy::tests::test_proxy_job_progress_complete ... ok
[INFO] [stdout] test selection::tests::test_linked_selection_multiple_groups ... ok
[INFO] [stdout] test selection::tests::test_linked_selection_no_links ... ok
[INFO] [stdout] test selection::tests::test_range_contains_time ... ok
[INFO] [stdout] test selection::tests::test_edit_selection_count ... ok
[INFO] [stdout] test selection::tests::test_range_duration ... ok
[INFO] [stdout] test selection::tests::test_merge_overlapping_three_ranges ... ok
[INFO] [stdout] test selection::tests::test_select_all_in_range ... ok
[INFO] [stdout] test selection::tests::test_range_overlaps ... ok
[INFO] [stdout] test selection::tests::test_select_clip_add_no_duplicates ... ok
[INFO] [stdout] test selection::tests::test_select_range_add_merges ... ok
[INFO] [stdout] test selection::tests::test_select_clip_toggle ... ok
[INFO] [stdout] test selection::tests::test_range_merge ... ok
[INFO] [stdout] test selection::tests::test_select_range_subtract ... ok
[INFO] [stdout] test selection::tests::test_select_range_replace ... ok
[INFO] [stdout] test selection::tests::test_selected_duration ... ok
[INFO] [stdout] test selection::tests::test_selection_item_same_track_false ... ok
[INFO] [stdout] test selection::tests::test_selection_item_same_track_true ... ok
[INFO] [stdout] test selection::tests::test_track_selection ... ok
[INFO] [stdout] test slip_slide::tests::test_extend_edit_duration_change_negative ... ok
[INFO] [stdout] test slip_slide::tests::test_extend_edit_duration_change_zero ... ok
[INFO] [stdout] test slip_slide::tests::test_extend_edit_new ... ok
[INFO] [stdout] test slip_slide::tests::test_slide_edit_is_forward_negative ... ok
[INFO] [stdout] test slip_slide::tests::test_slide_edit_is_forward_positive ... ok
[INFO] [stdout] test slip_slide::tests::test_slide_edit_zero_shift ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_apply_clamps_above_duration ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_apply_clamps_below_zero ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_apply_valid_backward ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_apply_exact_boundary ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_apply_valid_forward ... ok
[INFO] [stdout] test slip_slide::tests::test_slide_edit_new ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_apply_zero_offset ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_edit_is_forward_negative ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_edit_is_forward_positive ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_edit_is_forward_zero ... ok
[INFO] [stdout] test slip_slide::tests::test_slip_edit_new ... ok
[INFO] [stdout] test slip_slide::tests::test_validate_slide_negative_result ... ok
[INFO] [stdout] test slip_slide::tests::test_validate_slide_valid ... ok
[INFO] [stdout] test slip_slide::tests::test_validate_slip_valid ... ok
[INFO] [stdout] test slip_slide::tests::test_validate_slide_zero_shift ... ok
[INFO] [stdout] test slip_slide::tests::test_validate_slip_invalid_out_of_bounds ... ok
[INFO] [stdout] test selection::tests::test_select_clip_replace ... ok
[INFO] [stdout] test slip_slide::tests::test_validate_slip_zero_offset_always_valid ... ok
[INFO] [stdout] test slip_slide::tests::test_extend_edit_duration_change_positive ... ok
[INFO] [stdout] test smart_trim::tests::test_analyze_clip_audio_returns_two_suggestions ... ok
[INFO] [stdout] test smart_trim::tests::test_analyze_all_clips_in_timeline ... ok
[INFO] [stdout] test smart_trim::tests::test_analyze_clip_subtitle_returns_empty ... ok
[INFO] [stdout] test smart_trim::tests::test_analyze_clip_video_returns_two_suggestions ... ok
[INFO] [stdout] test smart_trim::tests::test_apply_suggestions_returns_count ... ok
[INFO] [stdout] test smart_trim::tests::test_apply_suggestions_skips_low_confidence ... ok
[INFO] [stdout] test smart_trim::tests::test_apply_suggestions_skips_missing_clips ... ok
[INFO] [stdout] test smart_trim::tests::test_config_builder ... ok
[INFO] [stdout] test smart_trim::tests::test_suggest_out_point ... ok
[INFO] [stdout] test timeline_export::tests::test_edl_empty_timeline ... ok
[INFO] [stdout] test timeline_export::tests::test_edl_event_count_matches_clips ... ok
[INFO] [stdout] test smart_trim::tests::test_suggest_in_point ... ok
[INFO] [stdout] test timeline_export::tests::test_edl_source_name_from_metadata ... ok
[INFO] [stdout] test timeline_export::tests::test_edl_timecode_accuracy ... ok
[INFO] [stdout] test timeline_export::tests::test_frames_to_timecode ... ok
[INFO] [stdout] test timeline_export::tests::test_ms_to_frames ... ok
[INFO] [stdout] test timeline_export::tests::test_timeline_edl_export_has_events ... ok
[INFO] [stdout] test timeline_export::tests::test_xml_duration_field ... ok
[INFO] [stdout] test timeline_export::tests::test_xml_structure ... ok
[INFO] [stdout] test timeline_export::tests::test_xml_valid_xml_like_structure ... ok
[INFO] [stdout] test timeline_validator::tests::test_duplicate_clip_id_error ... ok
[INFO] [stdout] test timeline_validator::tests::test_empty_track_info ... ok
[INFO] [stdout] test timeline_validator::tests::test_duration_mismatch_warning ... ok
[INFO] [stdout] test timeline_validator::tests::test_empty_timeline_is_valid ... ok
[INFO] [stdout] test timeline_validator::tests::test_gap_detected ... ok
[INFO] [stdout] test timeline_validator::tests::test_invalid_source_range_error ... ok
[INFO] [stdout] test timeline_validator::tests::test_negative_speed_error ... ok
[INFO] [stdout] test timeline_validator::tests::test_negative_timeline_start_warning ... ok
[INFO] [stdout] test timeline_validator::tests::test_opacity_out_of_range_warning ... ok
[INFO] [stdout] test timeline_validator::tests::test_overlapping_clips_detected ... ok
[INFO] [stdout] test timeline_validator::tests::test_report_is_clean_when_no_issues ... ok
[INFO] [stdout] test timeline_validator::tests::test_severity_label ... ok
[INFO] [stdout] test timeline_validator::tests::test_severity_ordering ... ok
[INFO] [stdout] test timeline_validator::tests::test_single_clip_no_issues ... ok
[INFO] [stdout] test timeline_validator::tests::test_zero_duration_clip_error ... ok
[INFO] [stdout] test title_overlay::tests::test_background_fills_buffer ... ok
[INFO] [stdout] test title_overlay::tests::test_font_scale_factors ... ok
[INFO] [stdout] test title_overlay::tests::test_glyph_pixel_space_is_blank ... ok
[INFO] [stdout] test title_overlay::tests::test_glyph_pixel_uppercase_a_has_pixels ... ok
[INFO] [stdout] test title_overlay::tests::test_glyph_unknown_char_returns_question_mark ... ok
[INFO] [stdout] test title_overlay::tests::test_overlay_manager_active_at ... ok
[INFO] [stdout] test title_overlay::tests::test_overlay_renderer_composites_white_pixel ... ok
[INFO] [stdout] test title_overlay::tests::test_overlay_renderer_inactive_not_rendered ... ok
[INFO] [stdout] test proxy::tests::test_proxy_job_progress_new ... ok
[INFO] [stdout] test title_overlay::tests::test_overlay_manager_add_remove ... ok
[INFO] [stdout] test proxy::tests::test_proxy_manager_mark_outdated ... ok
[INFO] [stdout] test title_overlay::tests::test_position_keyframes_before_first ... ok
[INFO] [stdout] test proxy::tests::test_proxy_manager_unknown_path_returns_false ... ok
[INFO] [stdout] test proxy::tests::test_proxy_resolution_label ... ok
[INFO] [stdout] test proxy::tests::test_proxy_workflow_config_defaults ... ok
[INFO] [stdout] test render_queue::tests::test_status_counts ... ok
[INFO] [stdout] test render_queue::tests::test_status_counts_all_statuses ... ok
[INFO] [stdout] test render_queue::tests::test_timeline_snapshot_fields ... ok
[INFO] [stdout] test render_queue::tests::test_update_status_invalid_transition_rejected ... ok
[INFO] [stdout] test ripple::tests::test_ripple_delete_removes_clips_inside_range ... ok
[INFO] [stdout] test title_overlay::tests::test_position_keyframes_interpolation ... ok
[INFO] [stdout] test title_overlay::tests::test_title_overlay_is_active_at ... ok
[INFO] [stdout] test title_overlay::tests::test_title_overlay_text_width ... ok
[INFO] [stdout] test title_overlay::tests::test_title_overlay_text_width_empty ... ok
[INFO] [stdout] test track_lock::tests::test_check_clip_lock_overrides ... ok
[INFO] [stdout] test track_lock::tests::test_check_content_locked_allows_move ... ok
[INFO] [stdout] test track_lock::tests::test_check_fully_locked_track ... ok
[INFO] [stdout] test track_lock::tests::test_check_position_locked_allows_content_edit ... ok
[INFO] [stdout] test track_lock::tests::test_check_unlocked ... ok
[INFO] [stdout] test track_lock::tests::test_clear_all ... ok
[INFO] [stdout] test track_lock::tests::test_clip_lock_new ... ok
[INFO] [stdout] test track_lock::tests::test_lock_level_blocks_content ... ok
[INFO] [stdout] test track_lock::tests::test_lock_level_blocks_position ... ok
[INFO] [stdout] test track_lock::tests::test_lock_level_is_locked ... ok
[INFO] [stdout] test track_lock::tests::test_manager_lock_unlock_track ... ok
[INFO] [stdout] test track_lock::tests::test_manager_lock_unlock_clip ... ok
[INFO] [stdout] test track_lock::tests::test_manager_pin_unpin ... ok
[INFO] [stdout] test track_lock::tests::test_operation_kind_classification ... ok
[INFO] [stdout] test track_lock::tests::test_track_lock_new ... ok
[INFO] [stdout] test trim_mode::tests::test_dual_roller_get_transition_point ... ok
[INFO] [stdout] test trim_mode::tests::test_dual_roller_new ... ok
[INFO] [stdout] test trim_mode::tests::test_dual_roller_shift_backward ... ok
[INFO] [stdout] test trim_mode::tests::test_dual_roller_shift_forward ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_constraints_validate_minimum ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_constraints_default ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_constraints_validate_valid ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_constraints_validate_zero_duration ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_duration_constraints_clamp_to_max ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_duration_constraints_clamp_to_min ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_duration_constraints_clamp_within_bounds ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_edge_opposite_in_point ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_constraints_validate_negative_duration ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_history_can_undo_after_push ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_history_max_undos_enforced ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_history_push_clears_redo ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_history_redo_after_undo ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_history_undo_returns_op ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_mode_affects_neighbors ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_operation_is_extend_in_point_negative ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_edge_opposite_out_point ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_operation_is_shrink_out_point_negative ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_roller_offset_positive ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_operation_zero_delta_neither ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_operation_is_extend_out_point_positive ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_roller_new ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_mode_description_not_empty ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_operation_is_shrink_in_point_positive ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_both_boundaries ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_side_both ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_roller_offset_negative ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_clips_fully_inside ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_clips_fully_outside ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_empty_range ... ok
[INFO] [stdout] test waveform::tests::test_generate_zero_width_clamps_to_one ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_left_boundary ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_multiple_clips_mixed ... ok
[INFO] [stdout] test trim_selection::tests::test_trim_right_boundary ... ok
[INFO] [stdout] test waveform::tests::test_generate_empty_audio_returns_silent ... ok
[INFO] [stdout] test waveform::tests::test_generate_single_pixel_output ... ok
[INFO] [stdout] test waveform::tests::test_generate_width_matches_request ... ok
[INFO] [stdout] test waveform::tests::test_generator_default_is_mono ... ok
[INFO] [stdout] test waveform::tests::test_generator_zero_channels_clamped_to_one ... ok
[INFO] [stdout] test waveform::tests::test_multichannel_four_channels ... ok
[INFO] [stdout] test waveform::tests::test_normalised_clamps_rms_proportionally ... ok
[INFO] [stdout] test waveform::tests::test_normalised_peak_is_one ... ok
[INFO] [stdout] test waveform::tests::test_normalised_silent_does_not_divide_by_zero ... ok
[INFO] [stdout] test title_overlay::tests::test_position_no_keyframes_returns_static ... ok
[INFO] [stdout] test title_overlay::tests::test_rgba_white_black ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_roller_offset_zero ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_side_in_is_in_point ... ok
[INFO] [stdout] test trim_mode::tests::test_trim_side_out_is_out_point ... ok
[INFO] [stdout] test waveform::tests::test_peaks_min_max_sign_convention ... ok
[INFO] [stdout] test waveform::tests::test_peaks_negative_dc ... ok
[INFO] [stdout] test waveform::tests::test_rms_positive_for_non_silent ... ok
[INFO] [stdout] test waveform::tests::test_peak_amplitude_sine ... ok
[INFO] [stdout] test waveform::tests::test_silence_detection ... ok
[INFO] [stdout] test waveform::tests::test_samples_per_pixel_recorded ... ok
[INFO] [stdout] test waveform::tests::test_total_samples_after_stereo_mixdown ... ok
[INFO] [stdout] test waveform::tests::test_waveform_peak_is_silent_true ... ok
[INFO] [stdout] test waveform::tests::test_waveform_data_width_matches_peaks_len ... ok
[INFO] [stdout] test waveform::tests::test_total_samples_matches_input_length_mono ... ok
[INFO] [stdout] test waveform::tests::test_waveform_data_peak_amplitude_silent ... ok
[INFO] [stdout] test waveform::tests::test_stereo_mixdown ... ok
[INFO] [stdout] test waveform::tests::test_waveform_peak_is_silent_false_nonzero_max ... ok
[INFO] [stdout] test waveform::tests::test_waveform_peak_is_silent_false_nonzero_rms ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 792 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests oximedia_edit
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test src/edl/mod.rs - edl (line 17) - compile ... ok
[INFO] [stdout] test src/edl/mod.rs - edl (line 36) - compile ... ok
[INFO] [stdout] test src/picture_in_picture.rs - picture_in_picture::PictureInPicture (line 20) - compile ... ok
[INFO] [stdout] test src/timeline_export.rs - timeline_export (line 12) ... ok
[INFO] [stdout] test src/clip_arrange.rs - clip_arrange (line 11) ... ok
[INFO] [stdout] test src/edit_macro.rs - edit_macro (line 8) ... ok
[INFO] [stdout] test src/edl_import.rs - edl_import (line 19) ... ok
[INFO] [stdout] test src/clip_speed.rs - clip_speed::ClipSpeedController (line 175) ... ok
[INFO] [stdout] test src/lib.rs - (line 14) ... ok
[INFO] [stdout] test src/trim_selection.rs - trim_selection (line 11) ... ok
[INFO] [stdout] test src/waveform.rs - waveform::WaveformGenerator (line 79) ... ok
[INFO] [stdout] test src/timeline_validator.rs - timeline_validator (line 8) ... ok
[INFO] [stdout] test src/render.rs - render::RawFrameCache (line 655) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.27s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "897b8d4a2698322ccc75d1e8184576d47cb08e6875d485a04f2babf56c8b091c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "897b8d4a2698322ccc75d1e8184576d47cb08e6875d485a04f2babf56c8b091c", kill_on_drop: false }`
[INFO] [stdout] 897b8d4a2698322ccc75d1e8184576d47cb08e6875d485a04f2babf56c8b091c
