mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-11-01 18:32:27 +00:00
The visual-regression job pixel-compares tests/visual/baselines.json on ubuntu-latest, but the committed baselines were captured on developer machines. Chromium builds and font fallbacks differ between environments — the token stack's "Inter"/"Fira Code" are not shipped or installed anywhere, so every machine renders its own system fallback — and the kitchen-sink default-theme diff drifted past MAX_DIFF_RATIO on CI while passing 13/13 locally. ci.yml documents exactly this mismatch as the reason the job is quarantined from blocking deploys. The CI diff artifact confirms it: baseline and actual render identically except for ghosted/offset text in the high-contrast lower half — font-metric drift, not a design change. (The dark upper half diffs too little to trip the 0.2 pixelmatch threshold, which is why only the default theme fails.) Fix the class of problem instead of the instance: capture baselines in the SAME runner image, browser install and font stack that the comparison job uses. workflow_dispatch only — regenerating baselines is an explicit decision made when a visual change is intentional, never a side effect of a push. The workflow re-runs the comparison against its own output before committing, so a bad capture cannot land. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01LHH3wPBsoruwCaJo8Rpf6a