Skip to content

Latest commit

 

History

History
35 lines (24 loc) · 1.51 KB

File metadata and controls

35 lines (24 loc) · 1.51 KB

UX Audit — Iteration 2

Reviewed the post-iteration-1 experience across search, checkout, and producer dashboard flows.

Critical

  1. Checkout zone validation was too easy to bypass or stale out.
    • Files: src/app/checkout/page.tsx, src/app/api/delivery/validate/route.ts, src/app/api/checkout/route.ts
    • Fix: added explicit delivery-zone verification, stale/invalid state handling, submit-time revalidation, and server-side zone reconciliation with minimum-order enforcement.

High-impact

  1. Producer search matches could still show a contradictory empty-state message.

    • Files: src/app/search/page.tsx, e2e/06-search-filter.spec.ts
    • Fix: separated producer/product empty states, improved result summaries, and added a regression test for producer-only matches.
  2. Producer order management was too shallow for real usage.

    • Files: src/app/dashboard/producer/orders/page.tsx
    • Fix: replaced the unbounded list with server-side pagination, status/date filters, summary counts, and clearer navigation controls.

Validation follow-up

  • Root-layout client banners caused hydration mismatches in browser automation.
    • Files: src/components/offline-banner.tsx, src/components/cookie-consent.tsx
    • Fix: made both banners hydration-safe so they do not diverge between server and client render.

Outcome

All iteration-2 UX findings above were implemented in this pass.

Validation completed with:

  • npm run lint
  • npm run test -- --run
  • npm run build
  • npm run test:e2e