[INFO] fetching crate zenfilters 0.1.0...
[INFO] testing zenfilters-0.1.0 against 1.95.0 for beta-1.96-2
[INFO] extracting crate zenfilters 0.1.0 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate zenfilters 0.1.0
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate zenfilters 0.1.0
[INFO] tweaked toml for crates.io crate zenfilters 0.1.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate zenfilters 0.1.0 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zenfilters 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded by_address v1.2.1
[INFO] [stderr]   Downloaded enough v0.4.3
[INFO] [stderr]   Downloaded serde-big-array v0.5.1
[INFO] [stderr]   Downloaded fd-lock v4.0.4
[INFO] [stderr]   Downloaded novtb v0.1.7
[INFO] [stderr]   Downloaded zenpixels v0.2.2
[INFO] [stderr]   Downloaded codec-corpus v1.0.3
[INFO] [stderr]   Downloaded archmage-macros v0.9.16
[INFO] [stderr]   Downloaded core_affinity v0.8.3
[INFO] [stderr]   Downloaded fast-srgb8 v1.0.0
[INFO] [stderr]   Downloaded zenblend v0.1.2
[INFO] [stderr]   Downloaded safe_unaligned_simd v0.2.5
[INFO] [stderr]   Downloaded garb v0.2.5
[INFO] [stderr]   Downloaded zensim v0.2.4
[INFO] [stderr]   Downloaded whereat v0.1.5
[INFO] [stderr]   Downloaded linear-srgb v0.6.7
[INFO] [stderr]   Downloaded zenpixels-convert v0.2.3
[INFO] [stderr]   Downloaded palette_derive v0.7.6
[INFO] [stderr]   Downloaded zenlayout v0.2.1
[INFO] [stderr]   Downloaded palette v0.7.6
[INFO] [stderr]   Downloaded libblur v0.23.3
[INFO] [stderr]   Downloaded magetypes v0.9.16
[INFO] [stderr]   Downloaded zenresize v0.2.0
[INFO] [stderr]   Downloaded archmage v0.9.16
[INFO] [stderr]   Downloaded zaft v0.3.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3de775a80e67178357543fa7449cea6b2a71937f69c582340ed40d82b7433817
[INFO] running `Command { std: "docker" "start" "-a" "3de775a80e67178357543fa7449cea6b2a71937f69c582340ed40d82b7433817", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3de775a80e67178357543fa7449cea6b2a71937f69c582340ed40d82b7433817", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3de775a80e67178357543fa7449cea6b2a71937f69c582340ed40d82b7433817", kill_on_drop: false }`
[INFO] [stdout] 3de775a80e67178357543fa7449cea6b2a71937f69c582340ed40d82b7433817
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=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" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e630ba0c3ddc92af32ea58619b0af159158894aab9b3c5c7396e8123cedc2145
[INFO] running `Command { std: "docker" "start" "-a" "e630ba0c3ddc92af32ea58619b0af159158894aab9b3c5c7396e8123cedc2145", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling safe_unaligned_simd v0.2.5
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling whereat v0.1.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling archmage-macros v0.9.16
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling zenpixels v0.2.2
[INFO] [stderr]    Compiling archmage v0.9.16
[INFO] [stderr]    Compiling magetypes v0.9.16
[INFO] [stderr]    Compiling garb v0.2.5
[INFO] [stderr]    Compiling linear-srgb v0.6.7
[INFO] [stderr]    Compiling zenpixels-convert v0.2.3
[INFO] [stderr]    Compiling zenfilters v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.85s
[INFO] running `Command { std: "docker" "inspect" "e630ba0c3ddc92af32ea58619b0af159158894aab9b3c5c7396e8123cedc2145", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e630ba0c3ddc92af32ea58619b0af159158894aab9b3c5c7396e8123cedc2145", kill_on_drop: false }`
[INFO] [stdout] e630ba0c3ddc92af32ea58619b0af159158894aab9b3c5c7396e8123cedc2145
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=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" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bc7b4c383993475dd045b51009ff6da9cb76055708a63f6798d87380febe9e7d
[INFO] running `Command { std: "docker" "start" "-a" "bc7b4c383993475dd045b51009ff6da9cb76055708a63f6798d87380febe9e7d", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling as-slice v0.2.1
[INFO] [stderr]    Compiling av-scenechange v0.14.1
[INFO] [stderr]    Compiling built v0.8.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling pastey v0.1.1
[INFO] [stderr]    Compiling imgref v1.12.0
[INFO] [stderr]    Compiling y4m v0.8.0
[INFO] [stderr]    Compiling whereat v0.1.5
[INFO] [stderr]    Compiling aligned v0.4.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling zune-core v0.5.1
[INFO] [stderr]    Compiling core2 v0.4.0
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling bitstream-io v4.9.0
[INFO] [stderr]    Compiling zune-jpeg v0.5.15
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]    Compiling avif-serialize v0.8.8
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling palette v0.7.6
[INFO] [stderr]    Compiling by_address v1.2.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling bit_field v0.10.3
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling pxfm v0.1.28
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling zenresize v0.2.0
[INFO] [stderr]    Compiling lebe v0.5.3
[INFO] [stderr]    Compiling gif v0.14.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling fast-srgb8 v1.0.0
[INFO] [stderr]    Compiling enough v0.4.3
[INFO] [stderr]    Compiling image-webp v0.2.4
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling core_affinity v0.8.3
[INFO] [stderr]    Compiling novtb v0.1.7
[INFO] [stderr]    Compiling libblur v0.23.3
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling codec-corpus v1.0.3
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling archmage-macros v0.9.16
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling palette_derive v0.7.6
[INFO] [stderr]    Compiling profiling v1.0.17
[INFO] [stderr]    Compiling fax v0.2.6
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling equator v0.4.2
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling aligned-vec v0.6.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling v_frame v0.3.9
[INFO] [stderr]    Compiling archmage v0.9.16
[INFO] [stderr]    Compiling rgb v0.8.53
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling av1-grain v0.2.5
[INFO] [stderr]    Compiling magetypes v0.9.16
[INFO] [stderr]    Compiling garb v0.2.5
[INFO] [stderr]    Compiling zenpixels v0.2.2
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling exr v1.74.0
[INFO] [stderr]    Compiling tiff v0.11.3
[INFO] [stderr]    Compiling linear-srgb v0.6.7
[INFO] [stderr]    Compiling zenblend v0.1.2
[INFO] [stderr]    Compiling zenpixels-convert v0.2.3
[INFO] [stderr]    Compiling zensim v0.2.4
[INFO] [stderr]    Compiling ravif v0.13.0
[INFO] [stderr]    Compiling zenfilters v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 17s
[INFO] running `Command { std: "docker" "inspect" "bc7b4c383993475dd045b51009ff6da9cb76055708a63f6798d87380febe9e7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc7b4c383993475dd045b51009ff6da9cb76055708a63f6798d87380febe9e7d", kill_on_drop: false }`
[INFO] [stdout] bc7b4c383993475dd045b51009ff6da9cb76055708a63f6798d87380febe9e7d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=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" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2f127fc076b4f4a758e23320571fa820872a5c0fc5bd4fa4cc8b7cba13675d40
[INFO] running `Command { std: "docker" "start" "-a" "2f127fc076b4f4a758e23320571fa820872a5c0fc5bd4fa4cc8b7cba13675d40", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.25s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/zenfilters-e0c25245817a324f)
[INFO] [stdout] running 443 tests
[INFO] [stdout] test blur::tests::deriche_large_sigma_constant ... ok
[INFO] [stdout] test blur::tests::dispatch_uses_stackblur_for_large_sigma ... ok
[INFO] [stdout] test blur::tests::constant_plane_stays_constant ... ok
[INFO] [stdout] test blur::tests::kernel_weights_sum_to_one ... ok
[INFO] [stdout] test blur::tests::sigma_to_stackblur_radius_sanity ... ok
[INFO] [stdout] test blur::tests::deriche_constant_plane ... ok
[INFO] [stdout] test blur::tests::stackblur_constant_plane ... ok
[INFO] [stdout] test blur::tests::transpose_roundtrip ... ok
[INFO] [stdout] test blur::tests::zero_sigma_is_identity ... ok
[INFO] [stdout] test context::tests::multiple_takes_without_return ... ok
[INFO] [stdout] test context::tests::clear_frees_all ... ok
[INFO] [stdout] test blur::tests::stackblur_preserves_mean ... ok
[INFO] [stdout] test blur::tests::deriche_preserves_mean ... ok
[INFO] [stdout] test context::tests::take_returns_zeroed ... ok
[INFO] [stdout] test context::tests::take_u8_works ... ok
[INFO] [stdout] test context::tests::zeroes_on_reuse ... ok
[INFO] [stdout] test context::tests::smaller_request_reuses_larger_capacity ... ok
[INFO] [stdout] test convenience::tests::apply_exposure_to_srgb_u8 ... ok
[INFO] [stdout] test context::tests::returned_vec_is_reused ... ok
[INFO] [stdout] test convenience::tests::apply_linear_returns_f32 ... ok
[INFO] [stdout] test convenience::tests::bt2020_pq_roundtrip ... ok
[INFO] [stdout] test fast_math::tests::fast_atan2_zero_inputs ... ok
[INFO] [stdout] test convenience::tests::srgb_u8_roundtrip_empty_pipeline ... ok
[INFO] [stdout] test convenience::tests::pipeline_ext_trait ... ok
[INFO] [stdout] test fast_math::tests::fast_powf_accuracy ... ok
[INFO] [stdout] test convenience::tests::multiple_filters_on_srgb ... ok
[INFO] [stdout] test convenience::tests::unknown_primaries_rejected ... ok
[INFO] [stdout] test fast_math::tests::fast_atan2_accuracy ... ok
[INFO] [stdout] test fast_math::tests::fast_atan2_matches_std_range ... ok
[INFO] [stdout] test fast_math::tests::fast_atan2_quadrant_signs ... ok
[INFO] [stdout] test convenience::tests::srgba_u8_roundtrip ... ok
[INFO] [stdout] test convenience::tests::grayscale_layout_rejected ... ok
[INFO] [stdout] test fast_math::tests::fast_powf_edge_cases ... ok
[INFO] [stdout] test fast_math::tests::fast_sincos_accuracy ... ok
[INFO] [stdout] test fast_math::tests::fast_sincos_cardinal_points ... ok
[INFO] [stdout] test fast_math::tests::fast_sincos_large_inputs ... ok
[INFO] [stdout] test filter_compat::tests::suggests_adaptive_sharpen ... ok
[INFO] [stdout] test fast_math::tests::roundtrip_atan2_sincos ... ok
[INFO] [stdout] test filter_compat::tests::correct_order_is_clean ... ok
[INFO] [stdout] test filters::adaptive_sharpen::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::alpha::tests::half_alpha ... ok
[INFO] [stdout] test filters::alpha::tests::no_alpha_is_noop ... ok
[INFO] [stdout] test filters::asc_cdl::tests::default_is_identity ... ok
[INFO] [stdout] test filters::asc_cdl::tests::offset_lifts_shadows ... ok
[INFO] [stdout] test filters::asc_cdl::tests::output_clamped ... ok
[INFO] [stdout] test filters::asc_cdl::tests::per_channel_slope_shifts_color ... ok
[INFO] [stdout] test filters::asc_cdl::tests::power_adjusts_gamma ... ok
[INFO] [stdout] test filter_compat::tests::detects_dual_tone_mapper ... ok
[INFO] [stdout] test filters::asc_cdl::tests::saturation_zero_is_mono ... ok
[INFO] [stdout] test filters::asc_cdl::tests::slope_scales_brightness ... ok
[INFO] [stdout] test filters::auto_exposure::tests::already_correct_is_identity ... ok
[INFO] [stdout] test filters::auto_exposure::tests::darkens_bright_image ... ok
[INFO] [stdout] test filters::auto_exposure::tests::brightens_dark_image ... ok
[INFO] [stdout] test filters::auto_exposure::tests::partial_strength_blends ... ok
[INFO] [stdout] test filters::auto_exposure::tests::respects_max_correction ... ok
[INFO] [stdout] test filters::auto_exposure::tests::scales_chroma_with_luminance ... ok
[INFO] [stdout] test filters::auto_exposure::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filter_compat::tests::detects_wrong_order ... ok
[INFO] [stdout] test filters::adaptive_sharpen::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::auto_levels::tests::already_full_range_unchanged ... ok
[INFO] [stdout] test filters::alpha::tests::does_not_modify_lab ... ok
[INFO] [stdout] test filters::alpha::tests::one_is_identity ... ok
[INFO] [stdout] test filters::auto_levels::tests::flat_image_unchanged ... ok
[INFO] [stdout] test filters::auto_levels::tests::partial_strength_blends ... ok
[INFO] [stdout] test filters::auto_levels::tests::scale_chroma_off_leaves_chroma_unchanged ... ok
[INFO] [stdout] test filters::auto_levels::tests::scale_chroma_on_scales_chroma ... ok
[INFO] [stdout] test filters::auto_levels::tests::smart_detection_ignores_single_pixel_outlier ... ok
[INFO] [stdout] test convenience::tests::p3_linear_f32_roundtrip ... ok
[INFO] [stdout] test filters::adaptive_sharpen::tests::sharpens_textured_areas ... ok
[INFO] [stdout] test filters::adaptive_sharpen::tests::high_masking_restricts_to_edges ... ok
[INFO] [stdout] test filters::adaptive_sharpen::tests::skips_flat_areas ... ok
[INFO] [stdout] test filters::basecurve::tests::chroma_zero_leaves_ab_unchanged ... ok
[INFO] [stdout] test filters::auto_levels::tests::default_is_strength_one ... ok
[INFO] [stdout] test filters::auto_levels::tests::remove_cast_drives_mean_toward_zero ... ok
[INFO] [stdout] test filters::auto_levels::tests::explicit_clip_uses_percentile ... ok
[INFO] [stdout] test filters::alpha::tests::zero_is_transparent ... ok
[INFO] [stdout] test filters::auto_levels::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::auto_levels::tests::stretches_to_full_range ... ok
[INFO] [stdout] test filters::auto_levels::tests::target_midpoint_moves_median ... ok
[INFO] [stdout] test filters::basecurve::tests::chroma_compression_reduces_saturation ... ok
[INFO] [stdout] test filters::basecurve::tests::find_neutral_fallback ... ok
[INFO] [stdout] test filters::basecurve::tests::find_maker_fallback ... ok
[INFO] [stdout] test filters::basecurve::tests::lut_is_monotonic ... ok
[INFO] [stdout] test filters::basecurve::tests::find_exact_camera ... ok
[INFO] [stdout] test filters::basecurve::tests::preserves_hue_during_compression ... ok
[INFO] [stdout] test filters::basecurve::tests::neutral_curve_near_identity ... ok
[INFO] [stdout] test filters::black_point::tests::crushes_shadows ... ok
[INFO] [stdout] test filters::black_point::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::bloom::tests::screen_blend_never_exceeds_one ... ok
[INFO] [stdout] test filters::bloom::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::blur::tests::blur_reduces_contrast ... ok
[INFO] [stdout] test filters::basecurve::tests::lut_preserves_black_and_white ... ok
[INFO] [stdout] test filters::bilateral::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::blur::tests::constant_plane_stays_constant ... ok
[INFO] [stdout] test filters::blur::tests::zero_sigma_is_identity ... ok
[INFO] [stdout] test filters::brilliance::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::bw_mixer::tests::boosting_red_brightens_red_pixels ... ok
[INFO] [stdout] test filters::bw_mixer::tests::always_desaturates ... ok
[INFO] [stdout] test filters::bw_mixer::tests::reducing_blue_darkens_blue_pixels ... ok
[INFO] [stdout] test filters::camera_calibration::tests::blue_saturation_boost ... ok
[INFO] [stdout] test filters::camera_calibration::tests::neutral_pixels_unaffected_by_primaries ... ok
[INFO] [stdout] test filters::camera_calibration::tests::red_hue_shift_rotates_red ... ok
[INFO] [stdout] test filters::camera_calibration::tests::shadow_tint_does_not_affect_highlights ... ok
[INFO] [stdout] test filters::blur::tests::blurs_alpha_when_present ... ok
[INFO] [stdout] test filters::bw_mixer::tests::default_produces_neutral_grayscale ... ok
[INFO] [stdout] test filters::brilliance::tests::lifts_shadows ... ok
[INFO] [stdout] test filters::bw_mixer::tests::neutral_pixels_unaffected_by_weights ... ok
[INFO] [stdout] test filters::camera_calibration::tests::shadow_tint_affects_dark_pixels ... ok
[INFO] [stdout] test filters::bloom::tests::bright_pixels_get_brighter ... ok
[INFO] [stdout] test filters::cat16::tests::d65_to_d65_is_identity ... ok
[INFO] [stdout] test filters::cat16::tests::illuminant_from_neutral_and_cm ... ok
[INFO] [stdout] test filters::cat16::tests::invert_identity ... ok
[INFO] [stdout] test filters::cat16::tests::cat16_roundtrip ... ok
[INFO] [stdout] test filters::cat16::tests::illuminant_from_white_xy ... ok
[INFO] [stdout] test filters::channel_curves::tests::color_space_roundtrip ... ok
[INFO] [stdout] test filters::bilateral::tests::smooths_uniform_noise ... ok
[INFO] [stdout] test filters::channel_curves::tests::from_4point_contrast_boost ... ok
[INFO] [stdout] test filters::cat16::tests::d50_to_d50_is_identity ... ok
[INFO] [stdout] test filters::camera_calibration::tests::default_is_identity ... ok
[INFO] [stdout] test filters::channel_curves::tests::srgb_gamma_roundtrip ... ok
[INFO] [stdout] test filters::cat16::tests::apply_preserves_neutral_at_target ... ok
[INFO] [stdout] test filters::channel_curves::tests::from_4point_identity ... ok
[INFO] [stdout] test filters::channel_curves::tests::identity_preserves_all_channels ... ok
[INFO] [stdout] test filters::channel_curves::tests::red_boost_shifts_hue ... ok
[INFO] [stdout] test filters::chromatic_aberration::tests::does_not_modify_luminance ... ok
[INFO] [stdout] test filters::chromatic_aberration::tests::shift_changes_edge_pixels ... ok
[INFO] [stdout] test filters::clarity::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::chromatic_aberration::tests::center_minimally_affected ... ok
[INFO] [stdout] test filters::color_grading::tests::highlight_tint_affects_bright_pixels ... ok
[INFO] [stdout] test filters::color_grading::tests::balance_shifts_crossover ... ok
[INFO] [stdout] test filters::clarity::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::color_grading::tests::default_is_identity ... ok
[INFO] [stdout] test filters::color_matrix::tests::identity_matrix_is_noop ... ok
[INFO] [stdout] test filters::color_matrix::tests::brightness_via_matrix_bias ... ok
[INFO] [stdout] test filters::clarity::tests::negative_amount_softens ... ok
[INFO] [stdout] test filters::color_matrix::tests::grayscale_via_matrix ... ok
[INFO] [stdout] test filters::contrast::tests::pivot_unchanged ... ok
[INFO] [stdout] test filters::color_grading::tests::does_not_modify_luminance ... ok
[INFO] [stdout] test filters::contrast::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::color_grading::tests::shadow_tint_affects_dark_pixels ... ok
[INFO] [stdout] test filters::clarity::tests::uniform_image_unchanged ... ok
[INFO] [stdout] test filters::contrast::tests::negative_reduces_range ... ok
[INFO] [stdout] test filters::cat16::tests::tungsten_to_d65_warms_blues ... ok
[INFO] [stdout] test filters::chromatic_aberration::tests::zero_shift_is_identity ... ok
[INFO] [stdout] test blur::tests::deriche_vs_fir_accuracy ... ok
[INFO] [stdout] test filters::contrast::tests::positive_increases_range ... ok
[INFO] [stdout] test filters::bilateral::tests::preserves_edges ... ok
[INFO] [stdout] test filters::clarity::tests::positive_amount_enhances_contrast ... ok
[INFO] [stdout] test filters::cube_lut::tests::parse_error_insufficient_data ... ok
[INFO] [stdout] test filters::cube_lut::tests::identity_lut_is_noop ... ok
[INFO] [stdout] test filters::cube_lut::tests::parse_error_missing_size ... ok
[INFO] [stdout] test filters::cube_lut::tests::size_bytes_correct ... ok
[INFO] [stdout] test filters::cube_lut::tests::strength_zero_is_bypass ... ok
[INFO] [stdout] test filters::cube_lut::tests::measure_accuracy_identical ... ok
[INFO] [stdout] test filters::cube_lut::tests::trilinear_interpolation_midpoint ... ok
[INFO] [stdout] test filters::dehaze::tests::does_not_go_negative ... ok
[INFO] [stdout] test filters::devignette::tests::brightens_edges ... ok
[INFO] [stdout] test filters::dehaze::tests::positive_strength_increases_contrast ... ok
[INFO] [stdout] test filters::dehaze::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::devignette::tests::center_minimally_affected ... ok
[INFO] [stdout] test filters::devignette::tests::scales_chroma ... ok
[INFO] [stdout] test filters::cube_lut::tests::strength_partial_blends ... ok
[INFO] [stdout] test filters::devignette::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::dt_sigmoid::tests::apply_preserves_neutral ... ok
[INFO] [stdout] test filters::cube_lut::tests::parse_minimal_cube ... ok
[INFO] [stdout] test filters::cube_lut::tests::parse_with_domain ... ok
[INFO] [stdout] test filters::dehaze::tests::boosts_chroma ... ok
[INFO] [stdout] test filters::dt_sigmoid::tests::sigmoid_preserves_zero ... ok
[INFO] [stdout] test filters::dt_sigmoid::tests::default_params_are_reasonable ... ok
[INFO] [stdout] test filters::edge_detect::tests::canny_constant_plane_no_edges ... ok
[INFO] [stdout] test filters::edge_detect::tests::detects_step_edge_laplacian ... ok
[INFO] [stdout] test filters::dt_sigmoid::tests::sigmoid_maps_middle_grey_correctly ... ok
[INFO] [stdout] test filters::edge_detect::tests::canny_edges_are_thin ... ok
[INFO] [stdout] test filters::edge_detect::tests::constant_plane_has_no_edges ... ok
[INFO] [stdout] test filters::edge_detect::tests::canny_detects_step_edge ... ok
[INFO] [stdout] test filters::edge_detect::tests::detects_step_edge_sobel ... ok
[INFO] [stdout] test filters::edge_detect::tests::strength_amplifies_edges ... ok
[INFO] [stdout] test filters::edge_detect::tests::chroma_is_zeroed ... ok
[INFO] [stdout] test filters::dt_sigmoid::tests::hue_preservation_works ... ok
[INFO] [stdout] test filters::dt_sigmoid::tests::sigmoid_monotonic ... ok
[INFO] [stdout] test filters::exposure::tests::positive_stops_brighten ... ok
[INFO] [stdout] test filters::exposure::tests::scales_chroma_proportionally ... ok
[INFO] [stdout] test filters::film_looks::tests::preset_from_id_roundtrip ... ok
[INFO] [stdout] test filters::edge_detect::tests::canny_output_is_binary ... ok
[INFO] [stdout] test filters::exposure::tests::zero_stops_is_identity ... ok
[INFO] [stdout] test filters::fused_adjust::tests::black_point_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::contrast_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::default_is_identity ... ok
[INFO] [stdout] test filters::fused_adjust::tests::dehaze_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::exposure_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::highlights_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::saturation_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::identity_does_not_modify ... ok
[INFO] [stdout] test filters::fused_adjust::tests::full_chain_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::temperature_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::tint_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::vibrance_matches_standalone ... ok
[INFO] [stdout] test filters::gamut_expand::tests::boosts_green ... ok
[INFO] [stdout] test filters::gamut_expand::tests::boosts_red_orange ... ok
[INFO] [stdout] test filters::fused_adjust::tests::shadows_matches_standalone ... ok
[INFO] [stdout] test filters::fused_adjust::tests::white_point_matches_standalone ... ok
[INFO] [stdout] test filters::gamut_expand::tests::does_not_modify_luminance ... ok
[INFO] [stdout] test filters::gamut_expand::tests::lut_corner_matches_direct ... ok
[INFO] [stdout] test filters::gamut_expand::tests::lut_apply_row ... ok
[INFO] [stdout] test filters::gamut_expand::tests::lut_generation_size ... ok
[INFO] [stdout] test filters::gamut_expand::tests::method_default_is_oklch ... ok
[INFO] [stdout] test filters::gamut_expand::tests::method_direct ... ok
[INFO] [stdout] test filters::gamut_expand::tests::lut_black_maps_to_black ... ok
[INFO] [stdout] test filters::gamut_expand::tests::method_lut ... ok
[INFO] [stdout] test filters::gamut_expand::tests::lut_interpolation_accuracy ... ok
[INFO] [stdout] test filters::gamut_expand::tests::method_mlp ... ok
[INFO] [stdout] test filters::gamut_expand::tests::mlp_apply_row ... ok
[INFO] [stdout] test filters::gamut_expand::tests::minimal_effect_on_yellow ... ok
[INFO] [stdout] test filters::gamut_expand::tests::mlp_default_is_new ... ok
[INFO] [stdout] test filters::gamut_expand::tests::method_oklch ... ok
[INFO] [stdout] test filters::gamut_expand::tests::mlp_structure ... ok
[INFO] [stdout] test filters::gamut_expand::tests::mlp_from_weights_wrong_length ... ok
[INFO] [stdout] test filters::gamut_expand::tests::mlp_from_weights_roundtrip ... ok
[INFO] [stdout] test filters::gamut_expand::tests::oklch_roundtrip ... ok
[INFO] [stdout] test filters::gamut_expand::tests::neutral_unchanged ... ok
[INFO] [stdout] test filters::gamut_expand::tests::protects_already_saturated ... ok
[INFO] [stdout] test filters::gamut_expand::tests::mlp_zero_weights_equals_p3_matrix ... ok
[INFO] [stdout] test filters::gamut_expand::tests::preserves_hue ... ok
[INFO] [stdout] test filters::grain::tests::deterministic ... ok
[INFO] [stdout] test filters::gamut_expand::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::grain::tests::different_seeds_differ ... ok
[INFO] [stdout] test filters::grain::tests::adds_variation ... ok
[INFO] [stdout] test filters::grain::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::grain::tests::less_grain_in_extremes ... ok
[INFO] [stdout] test filters::grain::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::grayscale::tests::zeros_chroma ... ok
[INFO] [stdout] test filters::highlight_recovery::tests::does_not_affect_dark_images ... ok
[INFO] [stdout] test filters::highlight_recovery::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::highlight_recovery::tests::recovers_blown_highlights ... ok
[INFO] [stdout] test filters::highlight_recovery::tests::stronger_recovers_more ... ok
[INFO] [stdout] test filters::highlight_recovery::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::custom_shadow_threshold_narrows_zone ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::custom_highlight_threshold_widens_zone ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::custom_thresholds_zero_amounts_identity ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::default_thresholds ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::highlight_mask_values ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::highlight_recovery_dims_brights ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::shadow_lift_brightens_darks ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::blue_adjustment_does_not_affect_red ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::highlights_shadows::tests::shadow_mask_values ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::default_is_identity ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::hue_shift_rotates_color ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::luminance_offset_changes_l ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::neutral_pixel_unaffected ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::range_weight_at_boundary_is_zero ... ok
[INFO] [stdout] test filters::hue_curves::tests::combined_curves ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::red_saturation_boost_affects_red ... ok
[INFO] [stdout] test filters::hue_curves::tests::default_is_identity ... ok
[INFO] [stdout] test filters::hsl_adjust::tests::range_weight_at_center_is_one ... ok
[INFO] [stdout] test filters::hue_curves::tests::hue_lut_wraps_smoothly ... ok
[INFO] [stdout] test filters::hue_curves::tests::hue_vs_sat_desaturates_reds ... ok
[INFO] [stdout] test filters::hue_curves::tests::lum_vs_sat_desaturates_shadows ... ok
[INFO] [stdout] test filters::hue_curves::tests::neutral_pixels_unaffected_by_hue_curves ... ok
[INFO] [stdout] test filters::hue_rotate::tests::full_rotation_is_identity ... ok
[INFO] [stdout] test filters::hue_rotate::tests::preserves_chroma ... ok
[INFO] [stdout] test filters::hue_rotate::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::invert::tests::double_invert_is_identity ... ok
[INFO] [stdout] test filters::invert::tests::inverts_l ... ok
[INFO] [stdout] test filters::invert::tests::negates_chroma ... ok
[INFO] [stdout] test filters::hue_curves::tests::hue_vs_hue_shifts_color ... ok
[INFO] [stdout] test filters::levels::tests::gamma_brightens_midtones ... ok
[INFO] [stdout] test filters::levels::tests::input_clipping ... ok
[INFO] [stdout] test filters::hue_curves::tests::hue_vs_lum_brightens_yellows ... ok
[INFO] [stdout] test blur::tests::fir_blur_gradient_accuracy ... ok
[INFO] [stdout] test filters::levels::tests::output_range_limits ... ok
[INFO] [stdout] test filters::local_tone_map::tests::compression_reduces_range ... ok
[INFO] [stdout] test filters::local_tone_map::tests::zero_compression_is_identity ... ok
[INFO] [stdout] test filters::local_tone_map::tests::detail_boost_enhances_texture ... ok
[INFO] [stdout] test filters::median_blur::tests::filters_chroma_when_enabled ... ok
[INFO] [stdout] test filters::levels::tests::default_is_identity ... ok
[INFO] [stdout] test filters::local_tone_map::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::median_blur::tests::zero_radius_is_identity ... ok
[INFO] [stdout] test filters::median_blur::tests::removes_salt_and_pepper ... ok
[INFO] [stdout] test filters::noise_reduction::tests::preserves_structure ... ok
[INFO] [stdout] test blur::tests::stackblur_vs_fir_accuracy ... ok
[INFO] [stdout] test filters::noise_reduction::tests::soft_threshold_works ... ok
[INFO] [stdout] test filters::median_blur::tests::preserves_edges ... ok
[INFO] [stdout] test filters::noise_reduction::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::noise_reduction::tests::chroma_denoising ... ok
[INFO] [stdout] test filters::parametric_curve::tests::default_is_identity ... ok
[INFO] [stdout] test filters::parametric_curve::tests::custom_splits_work ... ok
[INFO] [stdout] test filters::noise_reduction::tests::reduces_noise ... ok
[INFO] [stdout] test filters::median_blur::tests::constant_plane_stays_constant ... ok
[INFO] [stdout] test filters::parametric_curve::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::parametric_curve::tests::negative_highlights_dims_brights ... ok
[INFO] [stdout] test filters::parametric_curve::tests::output_in_range ... ok
[INFO] [stdout] test filters::saturation::tests::does_not_modify_l ... ok
[INFO] [stdout] test filters::parametric_curve::tests::zero_adjustments_is_identity ... ok
[INFO] [stdout] test filters::sepia::tests::does_not_modify_l ... ok
[INFO] [stdout] test filters::parametric_curve::tests::positive_shadows_lifts_darks ... ok
[INFO] [stdout] test filters::saturation::tests::zero_is_grayscale ... ok
[INFO] [stdout] test filters::sepia::tests::full_sepia_has_warm_tint ... ok
[INFO] [stdout] test filters::sepia::tests::zero_amount_is_grayscale ... ok
[INFO] [stdout] test filters::saturation::tests::one_is_identity ... ok
[INFO] [stdout] test filters::parametric_curve::tests::curve_is_monotonic ... ok
[INFO] [stdout] test filters::shadow_lift::tests::does_not_affect_bright_images ... ok
[INFO] [stdout] test filters::shadow_lift::tests::lifts_crushed_shadows ... ok
[INFO] [stdout] test filters::shadow_lift::tests::stronger_lifts_more ... ok
[INFO] [stdout] test filters::shadow_lift::tests::maintains_monotonicity ... ok
[INFO] [stdout] test filters::shadow_lift::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::sharpen::tests::enhances_edges ... ok
[INFO] [stdout] test filters::shadow_lift::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::shadow_lift::tests::preserves_midtones ... ok
[INFO] [stdout] test filters::sharpen::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::sigmoid::tests::chroma_compression_desaturates_highlights ... ok
[INFO] [stdout] test filters::sigmoid::tests::chroma_compression_preserves_hue ... ok
[INFO] [stdout] test filters::sigmoid::tests::identity_at_contrast_1 ... ok
[INFO] [stdout] test filters::sigmoid::tests::does_not_modify_chroma_when_zero ... ok
[INFO] [stdout] test filters::sigmoid::tests::clamps_out_of_range ... ok
[INFO] [stdout] test filters::sigmoid::tests::preserves_endpoints ... ok
[INFO] [stdout] test filters::sigmoid::tests::preserves_midpoint_symmetric ... ok
[INFO] [stdout] test filters::sigmoid::tests::skew_shifts_midtones ... ok
[INFO] [stdout] test filters::temperature::tests::positive_warms ... ok
[INFO] [stdout] test filters::temperature::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::texture::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::sigmoid::tests::low_contrast_reduces_range ... ok
[INFO] [stdout] test filters::sigmoid::tests::monotonic ... ok
[INFO] [stdout] test filters::texture::tests::zero_amount_is_identity ... ok
[INFO] [stdout] test filters::tint::tests::positive_shifts_magenta ... ok
[INFO] [stdout] test filters::tint::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::tone_curve::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::tone_curve::tests::from_lut_gamma ... ok
[INFO] [stdout] test filters::tone_curve::tests::from_lut_identity ... ok
[INFO] [stdout] test filters::sigmoid::tests::high_contrast_increases_range ... ok
[INFO] [stdout] test filters::tone_curve::tests::from_lut_small ... ok
[INFO] [stdout] test filters::tone_curve::tests::monotone_interpolation ... ok
[INFO] [stdout] test filters::tone_curve::tests::output_stays_in_range ... ok
[INFO] [stdout] test filters::tone_curve::tests::preserves_endpoints ... ok
[INFO] [stdout] test filters::tone_curve::tests::s_curve_increases_contrast ... ok
[INFO] [stdout] test filters::texture::tests::positive_enhances_detail ... ok
[INFO] [stdout] test filters::tone_equalizer::tests::highlight_compression_darkens_brights ... ok
[INFO] [stdout] test filters::texture::tests::negative_softens ... ok
[INFO] [stdout] test filters::tone_equalizer::tests::shadow_lift_brightens_darks ... ok
[INFO] [stdout] test filters::tone_curve::tests::identity_curve ... ok
[INFO] [stdout] test filters::tone_curve::tests::from_lut_preserves_chroma ... ok
[INFO] [stdout] test filters::tone_equalizer::tests::zero_zones_is_identity ... ok
[INFO] [stdout] test filters::vibrance::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::vibrance::tests::low_saturation_gets_more_boost ... ok
[INFO] [stdout] test filters::vignette::tests::negative_brightens_edges ... ok
[INFO] [stdout] test filters::vignette::tests::positive_darkens_edges ... ok
[INFO] [stdout] test filters::vignette::tests::zero_strength_is_identity ... ok
[INFO] [stdout] test filters::white_point::tests::default_has_zero_headroom ... ok
[INFO] [stdout] test filters::vignette::tests::center_pixel_least_affected ... ok
[INFO] [stdout] test filters::vignette::tests::scales_chroma_with_luminance ... ok
[INFO] [stdout] test filters::white_point::tests::below_one_brightens ... ok
[INFO] [stdout] test filters::white_point::tests::headroom_monotonic ... ok
[INFO] [stdout] test filters::white_point::tests::one_is_identity ... ok
[INFO] [stdout] test filters::white_point::tests::soft_clip_unit ... ok
[INFO] [stdout] test filters::white_point::tests::soft_clip_continuous_at_white_point ... ok
[INFO] [stdout] test filters::white_point::tests::headroom_compresses_super_whites ... ok
[INFO] [stdout] test filters::white_point::tests::headroom_below_white_point_passes_through ... ok
[INFO] [stdout] test filters::whites_blacks::tests::does_not_modify_chroma ... ok
[INFO] [stdout] test filters::white_point::tests::headroom_approaches_limit ... ok
[INFO] [stdout] test filters::whites_blacks::tests::blacks_does_not_affect_highlights ... ok
[INFO] [stdout] test filters::whites_blacks::tests::positive_blacks_lifts_shadows ... ok
[INFO] [stdout] test filters::whites_blacks::tests::positive_whites_brightens_highlights ... ok
[INFO] [stdout] test filters::whites_blacks::tests::whites_does_not_affect_shadows ... ok
[INFO] [stdout] test filters::whites_blacks::tests::zero_is_identity ... ok
[INFO] [stdout] test filters::whites_blacks::tests::output_stays_nonnegative ... ok
[INFO] [stdout] test filters::whites_blacks::tests::negative_whites_darkens_highlights ... ok
[INFO] [stdout] test filters::whites_blacks::tests::negative_blacks_crushes_shadows ... ok
[INFO] [stdout] test gamut_lut::tests::lut_boundary_at_extremes ... ok
[INFO] [stdout] test gamut_lut::tests::compress_preserves_hue ... ok
[INFO] [stdout] test gamut_lut::tests::compress_preserves_in_gamut_colors ... ok
[INFO] [stdout] test gamut_lut::tests::compress_output_is_in_gamut ... ok
[INFO] [stdout] test masked::tests::linear_gradient_is_directional ... ok
[INFO] [stdout] test masked::tests::luminance_range_selects_highlights ... ok
[INFO] [stdout] test masked::tests::full_mask_applies_completely ... ok
[INFO] [stdout] test masked::tests::radial_gradient_has_center ... ok
[INFO] [stdout] test masked::tests::zero_mask_preserves_original ... ok
[INFO] [stdout] test pipeline::tests::buffer_size_validation ... ok
[INFO] [stdout] test gamut_lut::tests::compress_reduces_out_of_gamut_chroma ... ok
[INFO] [stdout] test pipeline::tests::empty_pipeline_is_identity ... ok
[INFO] [stdout] test pipeline::tests::total_halo_is_sum_of_radii ... ok
[INFO] [stdout] test pipeline::tests::unsupported_primaries ... ok
[INFO] [stdout] test presets::tests::all_builtins_build ... ok
[INFO] [stdout] test presets::tests::intensity_zero_is_near_identity ... ok
[INFO] [stdout] test presets::tests::intensity_blending ... ok
[INFO] [stdout] test presets::tests::preset_count ... ok
[INFO] [stdout] test regional::tests::checkerboard_classified_textured ... ok
[INFO] [stdout] test regional::tests::chroma_fractions_sum_to_one ... ok
[INFO] [stdout] test regional::tests::chroma_histograms_are_normalized ... ok
[INFO] [stdout] test regional::tests::all_zone_distances_bounded_0_1 ... ok
[INFO] [stdout] test regional::tests::chroma_zone_classification_correct ... ok
[INFO] [stdout] test regional::tests::different_color_detected ... ok
[INFO] [stdout] test regional::tests::different_luminance_detected ... ok
[INFO] [stdout] test regional::tests::edge_image_classified_edge ... ok
[INFO] [stdout] test regional::tests::hist_distance_disjoint_is_one ... ok
[INFO] [stdout] test regional::tests::hist_distance_empty_vs_empty_is_zero ... ok
[INFO] [stdout] test regional::tests::hist_distance_empty_vs_nonempty_is_one ... ok
[INFO] [stdout] test regional::tests::hist_distance_half_overlap ... ok
[INFO] [stdout] test regional::tests::hist_distance_identical_is_zero ... ok
[INFO] [stdout] test regional::tests::hue_sector_classification_correct ... ok
[INFO] [stdout] test regional::tests::identical_images_zero_distance ... ok
[INFO] [stdout] test regional::tests::large_shift_large_distance ... ok
[INFO] [stdout] test regional::tests::lum_histograms_are_normalized ... ok
[INFO] [stdout] test regional::tests::lum_zone_classification_correct ... ok
[INFO] [stdout] test regional::tests::chroma_mean_tracks_actual_chroma ... ok
[INFO] [stdout] test regional::tests::luminance_fractions_sum_to_one ... ok
[INFO] [stdout] test regional::tests::monotonic_with_increasing_difference ... ok
[INFO] [stdout] test regional::tests::slight_shift_small_distance ... ok
[INFO] [stdout] test regional::tests::smooth_image_classified_smooth ... ok
[INFO] [stdout] test regional::tests::symmetric_comparison ... ok
[INFO] [stdout] test gamut_lut::tests::lut_boundary_is_monotonic_toward_extremes ... ok
[INFO] [stdout] test regional::tests::texture_comparison_detects_smoothing ... ok
[INFO] [stdout] test regional::tests::zone_labels_correct_count ... ok
[INFO] [stdout] test regional::tests::texture_zone_classification_correct ... ok
[INFO] [stdout] test regional::tests::texture_fractions_sum_to_one_or_zero ... ok
[INFO] [stdout] test scatter_gather::tests::fused_srgb_u8_non_aligned ... ok
[INFO] [stdout] test scatter_gather::tests::fused_matches_general_path ... ok
[INFO] [stdout] test scatter_gather::tests::hdr_normalization ... ok
[INFO] [stdout] test scatter_gather::tests::non_aligned_pixel_count ... ok
[INFO] [stdout] test scatter_gather::tests::scatter_gather_roundtrip ... ok
[INFO] [stdout] test scatter_gather::tests::black_produces_l_near_zero ... ok
[INFO] [stdout] test scatter_gather::tests::scatter_gather_roundtrip_rgba ... ok
[INFO] [stdout] test scatter_gather::tests::white_produces_l_near_one ... ok
[INFO] [stdout] test slider::tests::contrast_first_half_covers_useful_range ... ok
[INFO] [stdout] test slider::tests::contrast_roundtrip ... ok
[INFO] [stdout] test scatter_gather::tests::fused_srgb_u8_roundtrip ... ok
[INFO] [stdout] test slider::tests::dehaze_roundtrip ... ok
[INFO] [stdout] test slider::tests::nr_roundtrip ... ok
[INFO] [stdout] test slider::tests::saturation_center_is_identity ... ok
[INFO] [stdout] test gamut_lut::tests::lut_boundary_has_positive_chroma_at_mid_l ... ok
[INFO] [stdout] test slider::tests::noise_floor_roundtrip ... ok
[INFO] [stdout] test slider::tests::dehaze_first_half_covers_useful_range ... ok
[INFO] [stdout] test pipeline::tests::neighborhood_strip_matches_full_frame ... ok
[INFO] [stdout] test filters::cube_lut::tests::tensor_identity_lut_perfect ... ok
[INFO] [stdout] test filters::film_looks::tests::strength_zero_is_bypass ... ok
[INFO] [stdout] test filters::film_looks::tests::tensor_serialization_roundtrip ... ok
[INFO] [stdout] test filters::cube_lut::tests::tensor_decomposition_accuracy ... ok
[INFO] [stdout] test filters::cube_lut::tests::mlp_lut_training ... ok
[INFO] [stdout] test filters::cube_lut::tests::tensor_vs_mlp_comparison ... ok
[INFO] [stdout] test filters::film_looks::tests::all_presets_visibly_change_pixels ... ok
[INFO] [stdout] test filters::film_looks::tests::total_embedded_size ... ok
[INFO] [stdout] test filters::film_looks::tests::all_presets_build ... ok
[INFO] [stdout] test filters::film_looks::tests::all_presets_accuracy ... ok
[INFO] [stdout] test filters::cube_lut::tests::rank_sweep_33cube ... ok
[INFO] [stderr]      Running tests/blur_sharpen_regression.rs (/opt/rustwide/target/debug/deps/blur_sharpen_regression-caab12492f8df2c9)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 443 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 52.10s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test sharpen_zero_amount_is_identity ... ok
[INFO] [stdout] test sharpen_increases_edge_contrast ... ok
[INFO] [stdout] test sharpen_output_differs_from_input ... ok
[INFO] [stdout] test sharpen_does_not_modify_chroma ... ok
[INFO] [stdout] test sharpen_preserves_mean_luminance ... ok
[INFO] [stdout] test sharpen_increasing_amount_increases_divergence ... ok
[INFO] [stdout] test blur_checkerboard_reduces_adjacent_contrast ... ok
[INFO] [stdout] test blur_small_sigma_is_not_identity ... ok
[INFO] [stdout] test sharpen_parameter_range_produces_sensible_output ... ok
[INFO] [stdout] test blur_preserves_mean_luminance ... ok
[INFO] [stdout] test blur_larger_sigma_produces_more_smoothing ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.52s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/quality_validation.rs (/opt/rustwide/target/debug/deps/quality_validation-d163aef2dca55693)
[INFO] [stdout] 
[INFO] [stdout] running 32 tests
[INFO] [stdout] test exposure_minus1_vs_vips ... ok
[INFO] [stdout] test exposure_clipping_analysis ... ok
[INFO] [stdout] test dt_vibrance_boost ... ok
[INFO] [stdout] test dt_exposure_minus1 ... ok
[INFO] [stdout] test dehaze_properties ... ok
[INFO] [stdout] test dt_saturation_boost ... ok
[INFO] [stdout] test dt_exposure_full_corpus ... ok
[INFO] [stdout] test blur_vs_vips ... ok
[INFO] [stdout] test contrast_increase_vs_vips ... ok
[INFO] [stdout] test dt_combined_exposure_contrast ... ok
[INFO] [stdout] test dt_exposure_plus1 ... ok
[INFO] [stdout] test contrast_preserves_hue ... ok
[INFO] [stdout] test contrast_no_excessive_banding ... ok
[INFO] [stdout] test darktable_comparison_summary ... ok
[INFO] [stdout] test exposure_plus1_vs_vips ... ok
[INFO] [stdout] test exposure_preserves_hue ... ok
[INFO] [stdout] test generate_dt_visual ... ignored
[INFO] [stdout] test generate_visual_comparison ... ignored
[INFO] [stdout] test full_comparison_summary ... ok
[INFO] [stdout] test fused_adjust_matches_standalone_on_real_images ... ok
[INFO] [stdout] test grayscale_vs_vips ... ok
[INFO] [stdout] test saturation_boost_preserves_hue ... ok
[INFO] [stdout] test soft_compress_reduces_clipping ... ok
[INFO] [stdout] test saturation_boost_vs_vips ... ok
[INFO] [stdout] test sharpen_vs_vips ... ok
[INFO] [stdout] test temperature_properties ... ok
[INFO] [stdout] test vibrance_properties ... ok
[INFO] [stdout] test dt_contrast_full_corpus ... ok
[INFO] [stdout] test highlights_shadows_properties ... ok
[INFO] [stdout] test no_filter_produces_nan_or_inf ... ok
[INFO] [stdout] test dt_contrast_plus50 ... ok
[INFO] [stdout] test exposure_no_excessive_banding ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/reference_validation.rs (/opt/rustwide/target/debug/deps/reference_validation-e1106d84f4a14ec4)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test black_point_crushes_shadows ... ok
[INFO] [stdout] test hue_rotate_360_is_near_identity ... ok
[INFO] [stdout] test highlights_recovery_dims_brights ... ok
[INFO] [stdout] test alpha_has_no_effect_on_rgb ... ok
[INFO] [stdout] test exposure_down_is_darker ... ok
[INFO] [stdout] test exposure_up_is_brighter ... ok
[INFO] [stdout] test empty_pipeline_is_near_identity ... ok
[INFO] [stdout] test oklab_conversion_vs_palette_primary_colors ... ok
[INFO] [stdout] test contrast_increases_stddev ... ok
[INFO] [stdout] test hue_rotate_vs_image_crate ... ok
[INFO] [stdout] test invert_double_is_near_identity ... ok
[INFO] [stdout] test color_matrix_identity_is_near_noop ... ok
[INFO] [stdout] test exposure_vs_image_crate_brighten ... ok
[INFO] [stdout] test saturation_zero_is_grayscale ... ok
[INFO] [stdout] test fused_adjust_matches_individual_filters ... ok
[INFO] [stdout] test sepia_has_warm_neutral_tones ... ok
[INFO] [stdout] test saturation_boost_increases_chroma ... ok
[INFO] [stdout] test dehaze_increases_contrast_and_saturation ... ok
[INFO] [stdout] test oklab_conversion_vs_palette_full_sweep ... ok
[INFO] [stdout] test white_point_below_one_brightens ... ok
[INFO] [stdout] test temperature_warm_shifts_toward_yellow ... ok
[INFO] [stdout] test invert_vs_image_crate ... ok
[INFO] [stdout] test temperature_cool_shifts_toward_blue ... ok
[INFO] [stdout] test grayscale_output_is_neutral ... ok
[INFO] [stdout] test grayscale_vs_image_crate ... ok
[INFO] [stdout] test blur_reduces_edge_sharpness ... ok
[INFO] [stdout] test clarity_enhances_local_contrast ... ok
[INFO] [stdout] test shadows_lift_brightens_darks ... ok
[INFO] [stdout] test sepia_is_mostly_neutral ... ok
[INFO] [stdout] test vibrance_protects_saturated_colors ... ok
[INFO] [stdout] test contrast_vs_image_crate ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/zennode_defs.rs (/opt/rustwide/target/debug/deps/zennode_defs-72fe569c77d1b7f6)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests zenfilters
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test src/pipeline.rs - pipeline::Pipeline::scale_to_width (line 150) ... ignored
[INFO] [stdout] test src/pipeline.rs - pipeline::Pipeline::split_for_resize (line 215) ... ignored
[INFO] [stdout] test src/pipeline.rs - pipeline::Pipeline::split_scaled (line 178) ... ignored
[INFO] [stdout] test src/presets.rs - presets (line 16) ... ignored
[INFO] [stdout] test src/resize_pipeline.rs - resize_pipeline (line 7) ... ignored
[INFO] [stdout] test src/masked.rs - masked (line 23) ... ok
[INFO] [stdout] test src/filters/gamut_expand.rs - filters::gamut_expand::GamutMLP (line 528) ... ok
[INFO] [stdout] test src/lib.rs - (line 37) ... ok
[INFO] [stdout] test src/context.rs - context (line 12) ... ok
[INFO] [stdout] test src/filters/gamut_expand.rs - filters::gamut_expand::GamutLut (line 355) ... ok
[INFO] [stdout] test src/filters/film_looks.rs - filters::film_looks (line 21) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 5 ignored; 0 measured; 0 filtered out; finished in 0.46s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 1.33s; merged doctests compilation took 0.86s
[INFO] running `Command { std: "docker" "inspect" "2f127fc076b4f4a758e23320571fa820872a5c0fc5bd4fa4cc8b7cba13675d40", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f127fc076b4f4a758e23320571fa820872a5c0fc5bd4fa4cc8b7cba13675d40", kill_on_drop: false }`
[INFO] [stdout] 2f127fc076b4f4a758e23320571fa820872a5c0fc5bd4fa4cc8b7cba13675d40
