e0bad975ec005c2c5862acc713e071c8f48e252e
CI / test (push) Has been cancelled
contrastStretchImage's parameters are quantum-range intensity thresholds in IM7, not pixel counts as the original code assumed. Empirically any arg >= 1 collapsed low-tonal-range photos to pure white — verified by probing image 16's mid-photo pixel which goes from (80,69,59) to (255,255,255) with cs(100,100), cs(1382,1382), or cs(3840,3840) alike. normalizeImage() uses the image's actual histogram percentiles (default 2% black/white clip) and produces gentle, correct stretching: same pixel goes (80,69,59) to (89,72,59) — a small contrast bump that preserves the photo's tonal information instead of obliterating it. Existing on-disk bins were rendered with the broken stretch; running app:rerender-assets after this deploy regenerates them with the new pipeline. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
pictureFrame web app — Symfony + Vue SPA
Languages
Python
42.9%
PHP
20%
HTML
12.5%
TypeScript
11.7%
Vue
7.6%
Other
5.3%