# Screenshot model: specs capture via stableShot() → page.screenshot into test-results/, which is
# transient and gitignored at the repo root (/tests/test-results/). Baselines live in a private R2
# bucket, content-addressed by sha256 and pinned by the R2-hosted manifest (fetched to the
# gitignored .baseline-manifest.json below — NOTHING manifest-related is committed);
# tests/baseline-screenshots/ is a gitignored local cache (`npm run screenshots:fetch-manifest &&
# npm run screenshots:fetch`), authored from CI's deterministic Linux render and diffed OFFLINE by
# tools/screenshots. Baselines are promoted from a CI run in the morelli app. (3d-regression/ and
# gal-regression/ baselines are still committed.) There are no Playwright-native *-snapshots/
# baselines — Playwright does no inline screenshot comparison.
.baseline-manifest.json
logs/
