--- title: "v1.0 Smoke Test Checklist" status: active audience: [maintainer] language: nl last_updated: 2026-05-04 --- # v1.0 Smoke Test Checklist Loop deze checklist door **vóór** je v1.0.0 tagt. Alleen handmatig — geen automation. Time-budget: ~15 min. **Productie-URL:** https://scrum4me.jp-visser.nl --- ## 1. Auth + dashboard (3 min) - [ ] **Demo-login:** `demo` / `demo1234` → dashboard rendert, alle write-acties geven 403 - [ ] **Logout** vanuit user-menu → redirect naar `/login` - [ ] **Register** met nieuwe gebruikersnaam → succesvol, redirect naar `/dashboard` - [ ] **Login fout-flow:** verkeerd wachtwoord → generieke fout, geen leak ## 2. Mobile UA-redirect (2 min) - [ ] DevTools mobile-emulatie iPhone 12 (UA-spoof) → log in → automatisch naar `/m/products/[id]/solo` (of `/m/settings` zonder actief product) - [ ] Tablet-UA (iPad) → blijft op `/dashboard` - [ ] Desktop blijft `/dashboard` ## 3. Product → PBI → Story → Sprint → Task happy-path (5 min) - [ ] **Product aanmaken** (eigen account) → naam, code, DoD ingevuld - [ ] **PBI aanmaken** in Product Backlog kolom → priority + status - [ ] **Story aanmaken** onder PBI → titel + acceptatiecriteria - [ ] **Sprint starten** met sprint-goal - [ ] **Story slepen** vanuit Product Backlog naar Sprint Backlog - [ ] **Task aanmaken** in Sprint → titel + implementation_plan - [ ] **Task drag-and-drop** in Solo Paneel: To Do → Bezig → Klaar - [ ] **Story-status auto-promotie:** alle taken DONE → story status DONE ## 4. Mobile shell (2 min — op echte phone of DevTools landscape iPhone 12) - [ ] `/m/products/[id]` rendert in tab-mode (3 tabs onderaan: Backlog/Solo/Settings) - [ ] Portrait-orientatie → rotate-overlay - [ ] `/m/products/[id]/solo` toont 3-koloms kanban met horizontal scroll - [ ] Task-detail dialog opent full-screen (`<640px`) — sticky header + footer bereikbaar - [ ] `/m/settings` toont username + actieve product + logout-knop met bevestiging - [ ] `/m/pair` toont QR-pairing-confirmation (M10 intact) - [ ] **Geen** NavBar / AppIcon / Scrum4Me-tekst zichtbaar op `/m/*` ## 5. Edit-flows (1 min) - [ ] **Pencil-icon op product-card** (dashboard hover) → ProductDialog opent - [ ] **PBI ✎-icoon** (hover) → PbiDialog opent en saved - [ ] **Story ✎-icoon** (sprint screen Sprint Backlog) → StoryDialog opent - [ ] **Task ✎-icoon** (Taken-kolom) → TaskDialog opent ## 6. Demo-policy (1 min) Inloggen als demo-gebruiker: - [ ] PBI/Story/Task create-knoppen disabled met DemoTooltip - [ ] Edit-iconen disabled - [ ] Logout-knop bereikbaar (demo mag uitloggen) - [ ] Productselector gaat door op view, maar Activeer-acties geven 403 ## 7. Rate-limiting (steekproef, 1 min) - [ ] Probeer 31 PBIs in <60s aan te maken via UI → 31e geeft toast "Te veel acties achter elkaar" - [ ] (Optioneel) `bash scripts/test-api.sh` → alle endpoints groen ## 8. Realtime (1 min) - [ ] Open `/products/[id]/solo` in twee browsers (één als owner, één als teamlid) - [ ] Status-toggle in browser A → ziet binnen 1s in browser B (SSE-pipe) - [ ] Claude-vraag binnenkrijgen → bell-badge verschijnt zonder refresh ## 9. Debug-routes (productie afgeschermd) - [ ] `https://scrum4me.jp-visser.nl/debug-env` → **404** (NODE_ENV-guard) - [ ] `https://scrum4me.jp-visser.nl/debug-realtime` → **404** - [ ] `https://scrum4me.jp-visser.nl/api/debug/realtime-stream` → **404** ## 10. Lighthouse op happy-path - [ ] `/login` — a11y ≥95 - [ ] `/dashboard` — a11y ≥95 - [ ] `/products/[id]` — a11y ≥95 (was 86 vóór PR #88) - [ ] `/products/[id]/sprint` — a11y ≥95 - [ ] `/products/[id]/solo` — a11y ≥95 > Performance score in dev-mode is misleidend (dev-bundles, Chrome-extensies). > Test op productie of `npm run build && npm run start` voor betrouwbare cijfers. ## 11. Rollback-trigger Als één van bovenstaande faalt: - Vercel dashboard → Deployments → vorige Ready deploy → "Promote to Production" - Issue-titel: "v1.0 smoke-test failure: \" - Tag v1.0.0 NIET totdat alles groen is