feat(tradein): dev/CI preview route for a11y+lighthouse (#801) #803

Merged
bot-reviewer merged 1 commit from feat/801-preview-route into main 2026-05-30 17:37:40 +00:00

1 commit

Author SHA1 Message Date
lekss361
96491352df feat(tradein): dev/CI preview route for a11y+lighthouse audits (#801)
UI-аудит инструментами (axe/lighthouse) требует отрендеренную контентную
страницу. Live trade-in за auth-gate, локальный фронт без бэкенда = белый экран
(RouteGuard висит на pending /me). Добавлен оффлайн preview «денежного экрана».

- src/app/ui-preview/estimate/{page,fixture}.tsx — рендерит реальные компоненты
  результата (HeroSummary + Cian + Distribution + Deals + StreetDeals + Exposure
  + PriceTrend) на статичной фикстуре AggregatedEstimate, без сети: свой
  QueryClient с засеянным фейковым /me (useMe/useBrand резолвятся оффлайн).
- RouteGuard: bypass /ui-preview/* под флагом (RBAC к preview не применяется).
- Гейт: NEXT_PUBLIC_ENABLE_PREVIEW=1 (иначе notFound) — в проде по умолчанию off.
  Папка ui-preview (НЕ _-prefix: Next трактует _* как private/non-routable).

Проверено локально (NEXT_PUBLIC_ENABLE_PREVIEW=1): страница рендерится оффлайн,
axe (wcag2a/aa) дал baseline — 2 serious: color-contrast (teal #14b8a6 на светлом
2.32<4.5) + svg-img-alt (recharts scatter без accessible text). tsc clean.

Refs #801. Followup: фиксы найденных axe-дефектов отдельными issue.
2026-05-30 20:35:22 +03:00