Scrum4Me/docs/realtime-smoke.md
Janpeter Visser 66ad0095ea
Phase 1 — Junk cleanup + front-matter on every doc (#62)
* docs(front-matter): add YAML front-matter to docs/ root

* docs(front-matter): add YAML front-matter to patterns/

* docs(index): regenerate INDEX.md after front-matter pass
2026-05-03 12:50:35 +02:00

87 lines
2.7 KiB
Markdown

---
title: "Realtime smoke-checklist — PBI / Story / Task"
status: active
audience: [maintainer, contributor]
language: nl
last_updated: 2026-05-03
---
# Realtime smoke-checklist — PBI / Story / Task
Manuele checklist voor story "End-to-end smoke-test: PBI/Story/Task verschijnen zonder refresh".
Uitvoeren na deployment van de realtime-feature (SSE-keten: DB-trigger → pg NOTIFY → SSE → store → render).
## Voorbereiding
1. Open twee browser-tabs op hetzelfde product:
- **Tab A** — `/backlog?product=<product_id>` (read-only observatie)
- **Tab B** — zelfde URL; gebruik dit tabblad voor create/edit/delete-acties
2. Zorg dat je **niet** refresht in tab A tijdens het testen.
3. Controleer in de DevTools-console van tab A dat de SSE-verbinding actief is
(`EventSource` connected, geen foutmeldingen).
---
## Checklist
### PBI
- [ ] **1. PBI aanmaken in tab B**
Maak een nieuwe PBI aan (bijv. titel "Smoke PBI").
→ Tab A toont de nieuwe PBI **binnen 1 seconde** zonder refresh.
→ Geen dubbele entry (PBI verschijnt precies één keer).
- [ ] **2. PBI titel bewerken in tab B**
Pas de titel van de PBI aan naar "Smoke PBI — updated".
→ Tab A reflecteert de nieuwe titel **binnen 1 seconde**.
→ Geen dubbele entry, geen flickering.
- [ ] **3. PBI verwijderen in tab B**
Verwijder de PBI.
→ Tab A verwijdert de PBI **binnen 1 seconde**.
---
### Story
- [ ] **4. Story aanmaken in tab B**
Maak een story aan onder een bestaande PBI (bijv. "Smoke Story").
→ Tab A toont de story in de juiste PBI-rij **binnen 1 seconde**.
→ Geen dubbele entry.
- [ ] **5. Story titel bewerken in tab B**
Pas de titel aan naar "Smoke Story — updated".
→ Tab A reflecteert de nieuwe titel.
→ Geen dubbele entry, geen flickering.
- [ ] **6. Story verwijderen in tab B**
Verwijder de story.
→ Tab A verwijdert de story uit de lijst.
---
### Task (solo-paneel + backlog drie-paneel)
- [ ] **7. Task aanmaken via solo-paneel**
Maak een task aan onder een story in het solo-paneel.
→ De task verschijnt in het solo-paneel **en** in het backlog drie-paneel **binnen 1 seconde**.
→ Geen dubbele entry.
- [ ] **8. Task status bijwerken**
Verander de status van de task (bijv. TO_DO → IN_PROGRESS).
→ Beide panelen reflecteren de nieuwe status.
- [ ] **9. Task verwijderen**
Verwijder de task.
→ Verdwijnt uit beide panelen.
---
## Pass-criteria
Alle 9 items afgevinkt = smoke geslaagd.
Bij een mislukking: noteer welk item faalde en controleer:
1. De SSE-stream (`/api/realtime/backlog?product_id=...`) in de DevTools-netwerktab.
2. De Zustand-store via Redux DevTools of een debug-breakpoint in `applyChange`.
3. De DB-trigger op de relevante tabel (`pg_notify` op INSERT/UPDATE/DELETE).