Kush Digital SolutionsRequest a quote

Nothing shipsuntil it provesitself.

Most studios ship the build. Almost none ship the thing that catches the build failing quietly in month three.


Fig. 01 — What runs on every release

Four gates stand between a change and your customers. Two are enforced by the build and fail it outright. Two are reviews performed by a person.

Gate A

Design review

Scored against published thresholds across five dimensions. A weighted score below 6.0 blocks the handoff. So does any heavily-weighted dimension below 6 — a strong average is not allowed to launder a weak spot in the thing that matters most.

Always blocks, whatever the score: fabricated data, invented metrics, a visible placeholder label, or body text below WCAG AA contrast.

A review, not a build step.

Gate B

Functional QA

Links, anchors, forms, routes, and responsive behaviour down to 375px — verified by running them, not by reading the stylesheet and concluding it probably works.

Automated. 264 checks across 18 suites. Fails the build.

Gate C

Budgets and integrity

JavaScript weight per route. Pages that must ship zero JavaScript, verified to ship zero. Every route the build emits checked against an allowlist, so a stray page or a leftover test file can't reach production. No inline script the security policy forbids.

Automated. Fails the build.

Gate D

Cold read

A person who did not build the page looks at it fresh. Composition, hierarchy, what the eye lands on first. Builders go blind to their own work.

On this site specifically: the cold read is blocking on client work and advisory here, because the reviewer's turnaround isn't ours to control. It has not run on this page yet.

A review, not a build step.


Fig. 02 — What the build actually checks

Type checkingEvery file
Unit tests111
End-to-end tests264
AccessibilityAutomated audit, every route
Security policy complianceEvery route
Performance budgetsPer route, build-failing
Content honesty rulesEnforced in schema

The content rules are the unusual one. A case study without a measured result doesn't get published — the build fails. A page that quietly grew a placeholder label doesn't get published. These aren't guidelines we try to remember. They're conditions the site cannot be built without meeting.

Numbers are published exact and updated as they change. A number that moves is evidence it's real; a round number that never changes is evidence nobody's counting.

Fig. 03 — What the gates can't catch

Automated checks find what they were written to find. They do not tell you the page is boring, the argument is weak, or the headline says nothing.

That's what the cold read is for, and why a person does it. And it's why the gates have thresholds published rather than a badge that says “tested.”

Fig. 04 — After launch

The failurenobody watches for.

External links rot. Scheduled jobs stop running and write no log, so their absence is invisible in the record you'd check. Performance drifts a little each month until it doesn't.

Continuing operation is a rule here, not an upsell.