diff --git a/docs/COLLAUDO_SMOKE_AVATAR_CHECKLIST.md b/docs/COLLAUDO_SMOKE_AVATAR_CHECKLIST.md index f4cf5d6..4bb799e 100644 --- a/docs/COLLAUDO_SMOKE_AVATAR_CHECKLIST.md +++ b/docs/COLLAUDO_SMOKE_AVATAR_CHECKLIST.md @@ -33,5 +33,11 @@ SELECT event_type, step_id, client_timestamp_iso FROM demo_events WHERE session_ ``` Atteso: 10× `step_completed` (step_id 1..10), 0× `error_encountered`. Eventuali `error_encountered` riportano `metadata.code` (es. `SELECTOR_NOT_FOUND`, `UNKNOWN_VIEW`, `ACTION_NOT_WHITELISTED`) → triage immediato lato nostro. +## Validazione browser headless lato NIS2 (2026-06-13) — eseguita +Con `google-chrome --headless --dump-dom` (esegue il JS, cosa che curl non fa) su `nis2.dimostrazione.agile.software`, sessione demo reale (`?demo=#djwt=`), pagine dashboard/risks/incidents: +- **Auth-bootstrap OK**: nessun redirect a login (`login-form` assente), titolo pagina reale, contenuto renderizzato (gauge, tabelle). +- **Runtime demo OK**: `#nis2-demo-banner` presente + `body.nis2-demo-on` → demo-mode.js inizializza. +- **2 bug SPA-side trovati e FIXATI** (commit `fcf8b09`): (1) `api.token` non sincronizzato in-memory → redirect a login; (2) `boot()` bloccato sul `seed` HMAC (non disponibile cross-origin, e non serve con HMAC off). Senza questi fix il giro avatar sarebbe finito su "pagina di login". + ## Coordinamento Lo smoke è browser-driven e lo lancia AgileHub **quando vuole** (nessuna finestra oraria bloccante richiesta dal nostro lato). Dopo il giro: AgileHub verifica retrieval RAG 415 + comportamento persona; NIS2 verifica `demo_events` + console. Se emerge un difetto lato NIS2 → fix + USR2 in pochi minuti.