Use this policy for all apps/web changes before opening a PR.
- Run lint/static checks:
npm run ultracite:check
- Run fast Web E2E smoke suite:
npm run test:web:e2e:smoke
- If UI changed, run visual smoke:
npm run test:web:visual
- If visual change is intentional, update baselines:
npm run test:web:visual:updatenpm run test:web:visual
CI model:
- PR: smoke is required, visual runs conditionally for
apps/web/e2e/**changes. - Daily: smoke E2E.
- Weekly: full E2E.
- Nightly: visual smoke.
Detailed runbook:
docs/ops/web-e2e-ci-runbook.md