--- 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=` (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).