← Back to brief

feedback visual verification gate

memory · feedback_visual_verification_gate.md

Rule

For ANY change to the PWA (preview.html, index.html, preview-.html, sr-.css, preview-system.css, sr-*.js), the workflow is:

1. Pre-render — screenshot current desktop + mobile state BEFORE editing (baseline)
2. Edit + deploy
3. Render — screenshot deployed result at desktop (≥1024w) + mobile (414w iPhone widths)
4. Verify every claim of "fixed / shipped / works": click flow makes sense, no overlap with status bar / Dynamic Island, scroll behavior stable, theme + density toggles produce visible delta, no horizontal overflow, all interactive targets ≥44×44pt for touch
5. Only then declare done

Why (Joseph 2026-05-09 PM, verbatim):
> "You really need to be more locked in. ... You better not be building the mobile version of this flying completely blind. You put eyes on everything you do for both versions and verify every click delivers a top of class experience and delivers actual value to the end user. Where everything sits and delivering an experience that delivers the most amazingly smooth and logical and beautiful flow that exists in the market today."

Caught me twice in the same session: theme toggle clarification + density toggle build that looked-right-on-source but had real iOS rendering bugs (header drifting on scroll, content hidden behind iPhone 15 Pro Max Dynamic Island).

How to apply (workflow constraints)

Render path — Anthropic policy blocks Chrome MCP from navigating to claude.ai, console.anthropic.com, brief.josephbowens.com, *.pages.dev, file://, localhost, and 127.0.0.1. Confirmed 2026-05-09. The ONLY way to render the PWA for verification is:

If Joseph closes the tab the agent must say so explicitly and ask him to reopen — never silently skip verification.

For actual phone testing (final-mile verification):

Behavioral test (if about to violate, abort)

Anti-patterns this kills

Companion to existing rules