We use the word "gate" a lot on this site. It sounds like a single pass/fail switch. It isn't. A gate is a stack of separate, deterministic instruments — each one built to check one specific thing — run against the exact file that's about to ship, and reported as a table, not a verdict from a model. We're going to walk through one real gate run against three files on this site (index.html, app.js, styles.css), because the run itself is a better explanation of what "measured before it ships" means than any paragraph of description would be.
Eighteen rows, not one number
The run in question checked nine categories, several of them counted twice (once per breakpoint or once per page), for eighteen total rows: console cleanliness at two viewports, two visual-throttle honesty checks (do the canvas elements we deliberately slowed down still actually redraw, or did the throttle silently freeze them), a live counter check, wave-graph undulation in and out of the viewport, the emblem shader, an overflow sweep across thirteen widths plus the real 390px viewport, an accessibility scan at two viewports, a six-page sweep for leftover build narration and unfinished-copy text, and a grep for dead code left behind by earlier fixes.
Sixteen of eighteen rows passed outright. Two failed, both against the same finding: a console warning — GPU stall due to ReadPixels — firing on every load at both viewports.
A finding is not automatically a defect
The instrument that caught it never took a screenshot, which ruled out the obvious explanation (that our own capture process was causing the warning it was reporting). So the finding was real. The question was whether it was a defect in the page or an artifact of how the check itself was running.
We ran the same unmodified instrument twice — once headless, once headed — and only the headless run produced the warning. A headless Chromium browser composits frames through a GPU-readback path; that readback is the exact operation the driver was warning about. No code on this page calls a pixel-readback function in normal use. Real visitors run headed browsers. Headed, the warning does not occur — zero errors, zero warnings, confirmed independently outside the gate run as well.
That distinction is now a standing rule for every WebGL page on this site: a console gate has to run headed, or it has to allowlist a driver message that's been independently proven absent in a headed run. We didn't relax the gate to make the failure disappear — we found out the failure was measuring the wrong thing, fixed the instrument, and re-ran it. The corrected verdict is eighteen of eighteen.
What the other sixteen rows were actually checking
A few examples, because "it passed" means nothing without knowing what "it" was:
- The visual-throttle checks exist because we deliberately capped two canvas animations to roughly 30 frames per second to protect scroll performance. Capping a redraw rate and accidentally freezing a redraw are one line-edit apart. The gate takes two screenshots of each canvas two seconds apart and diffs the pixels — if the bytes are identical, the throttle went too far. Both came back different.
- The wave-graph check does the same kind of before/after comparison on an SVG path that's redrawn from live frame-timing data, and separately confirms the line stops updating once its section scrolls out of view — because a live readout that keeps animating off-screen is wasted work, not a feature.
- The honesty sweep is the one that matters most to us as a studio: it loads the rendered page — not the source template — at three points in its life (first paint, after a settle window, after a full scroll) and greps the visible text, attribute values, and meta tags for a list of banned patterns: leftover build narration, unfinished-copy markers, and a few brand-specific strings we've shipped by mistake before. Six pages, zero hits.
The honest limits
None of this proves the page looks right. A gate can confirm a canvas redraws; it can't tell you the redraw looks good. It can confirm zero accessibility violations under an automated scanner; it can't confirm the page reads well to an actual screen-reader user. That's a different kind of check, done differently, and we don't conflate the two. What a gate can do — reliably, repeatably, on every file before it ships — is catch the class of defect that a person skimming the page by eye will not: a throttle that quietly became a freeze, a warning that only exists in one browser mode, a piece of build narration that was supposed to be deleted from the markup and wasn't.