All docs
Recipes2 min readUpdated

Troubleshooting UI Verify

Fixes for the common UI Verify setup problems: no check on your PR, an empty Playwright archive, phantom diffs after branching, and auth failures on upload.

Most first-run problems fail quietly - the upload succeeds and something downstream is just missing. Here are the ones we see most, each with the reason and the fix.

The upload succeeds but nothing shows up on my PR

The GitHub App is not installed, or not pointed at this repo. Uploads work with only the API key, but the check and PR comment need the App. Install it from your project settings and select the repo - see step 4 of the Storybook quickstart.

My Playwright build uploaded nothing

Installing @uiverify/playwright is not enough - you have to swap the import in your tests to import { test, expect } from "@uiverify/playwright". Without the swap, nothing is written to ./uiverify-archive and the upload has an empty directory. See step 2 of the Playwright quickstart.

Every PR shows changes I didn't make

Your CI is checking out a shallow clone, so UI Verify cannot resolve the right baseline from your branch history. Add fetch-depth: 0 to your actions/checkout step. If only one or two stories look off, the branch may just be behind - see Baselines and branches.

playwright test fails on CI with a missing browser

A clean CI runner has no browsers installed. Add npx playwright install --with-deps before you run your tests, as in the Playwright quickstart CI workflow.

The upload fails with an authentication error

The UIVERIFY_API_KEY is missing or wrong. Locally, pass it inline (UIVERIFY_API_KEY=your_key npx -y uiverify@latest upload ...) or export it first; in CI, add it as a repository secret and reference it under env. The key is per project - copy it from that project's settings.

--only-changed renders everything anyway

It needs Storybook's dependency graph, which only exists when you build with --stats-json. Without preview-stats.json the flag safely falls back to a full render. See Skip unchanged stories.

Visual testing for agents

UI Verify captures your UI on every pull request and an AI judge tells an intended change from a real regression. See how it works.

Get started