3.4 KiB
Flash analysis evidence
Status date: 2026-09-02
Shipped surfaces in scope
- Procedural journey scene in its default and scroll-accelerated states.
- Static and
prefers-reduced-motionposter states. - Project media: not applicable yet. The public asset manifest is intentionally empty while final derivatives and imagery rights await Luca's approval. This record must be extended before any video or animated project asset is published.
Automated method
tests/browser/visual-regression.spec.ts captures the real .journey-world at 10 frames per second. The accelerated sequence receives two production wheel inputs before a two-second capture. Static and reduced-motion sequences are captured separately.
Each frame is downsampled to 160×90 RGB pixels. Between adjacent frames, a pixel is classed as a general-flash luminance change when:
- relative luminance changes by at least 0.1; and
- the darker state is below 0.8.
A transition is conservatively treated as large-area when one direction affects at least 25% of the sampled viewport. Within every rolling one-second window, opposing large-area transitions are paired into flashes. The test fails above three flashes per second. JSON event evidence is attached to the Playwright result for the live, Static, and reduced-motion sequences.
This deliberately conservative area rule does not use the WCAG small-area exemption. It checks luminance flash, not red-flash chromaticity in isolation; the shipped scene contains no full-field saturated-red strobe, and the manual review below remains required.
Automated result
| Engine/state | Result | Evidence |
|---|---|---|
| Chrome for Testing 151.0.7922.34, accelerated live scene | PASS — no rolling one-second window exceeded three flashes | live-scene-flash-analysis.json Playwright attachment |
| Chrome for Testing 151.0.7922.34, Static | PASS — zero qualifying flashes | static-flash-analysis.json Playwright attachment |
| Chrome for Testing 151.0.7922.34, reduced motion | PASS — zero qualifying flashes | reduced-motion-flash-analysis.json Playwright attachment |
These results came from Playwright 1.62.1 and were reconfirmed in the final successful complete browser run (157 passed, 41 deliberate skips):
npm run test:browser -- tests/browser/visual-regression.spec.ts
Required human/platform evidence — pending, not passed
- Review the accelerated scene at normal speed and during repeated direction changes; record reviewer, date, display refresh rate, and result.
- Review every final encoded project video/animation after its exact approved bytes are bound into the public manifest.
- Run the automated capture in current Firefox and WebKit/Safari-capable infrastructure and attach the corresponding JSON.
- Run the automated capture in current Edge and the previous stable desktop majors named by the release matrix.
- Review on the physical iPhone 13 and Pixel 6 during
physical-drive.v1.
No unsupported engine, physical device, or unpublished project-media result is represented as passed.