docs: v1.0 smoke-test checklist + readiness-doc bijgewerkt

docs/runbooks/v1-smoke-test.md (NIEUW): 11-secties handmatige checklist
voor de v1.0-pre-launch verificatie — auth, mobile UA-redirect, happy-path
flow, mobile shell, edit-flows, demo-policy, rate-limiting steekproef,
realtime, debug-routes 404 in productie, Lighthouse a11y per pagina,
rollback-trigger.

v1-readiness.md: 4 Before-launch items afgevinkt (demo-policy, privacy,
README, CHANGELOG); smoke-test verwijst nu naar de checklist; PWA-test
en v1.0.0-bump zijn de twee resterende handmatige items.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Janpeter Visser 2026-05-04 14:18:25 +02:00
parent 0f40bc1c70
commit b225c83ace
3 changed files with 108 additions and 7 deletions

View file

@ -0,0 +1,100 @@
---
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: \<korte beschrijving\>"
- Tag v1.0.0 NIET totdat alles groen is