Live interactive demo executed by the Demo Agent in a shared headed browser.
| Field | Value |
|---|---|
| Scene | agents/hermes/demo_scenes/dental_walkthrough |
| Run ID | dental_walkthrough_20260804T113131Z |
| UTC timestamp | 2026-08-04 11:31:31Z – 11:34:09Z |
| Result | PASS |
| Duration | ~2 min 38 s |
| Target | https://test-client-dental.dental.veripath.co.uk (test-client-dental realm) |
| Roles | Reception → Dentist → Practice Manager → Admin |
| Interactive | Yes (control channel polled at every step; no viewer questions received) |
All 60 scene steps executed. Every VERIFY_VIEW, VERIFY_TEXT, ASSERT/EXPECT check
passed, including the deliberate RBAC block (Reception → Financial → 403).
| # | Role | Action | Result | Screenshot |
|---|---|---|---|---|
| 1 | — | NOTE: Front of house — receptionist manages calendar, appointments, recalls | OK | — |
| 2 | RECEPTION | USER switch (fresh isolated session) | OK | — |
| 3 | RECEPTION | NAVIGATE {URL} → Keycloak login |
OK | — |
| 4 | RECEPTION | KEYCLOAK_LOGIN reception.test-client-dental | OK | — |
| 5 | RECEPTION | VERIFY_VIEW /dental/practices/ |
OK | — |
| 6 | RECEPTION | VERIFY_TEXT "Test Client Dental Practice" | OK | — |
| 7 | RECEPTION | SCREENSHOT reception_practices | OK | ![]() |
| 8 | RECEPTION | NAVIGATE /dental/appointments/ |
OK | — |
| 9 | RECEPTION | VERIFY_VIEW /dental/appointments/ |
OK | — |
| 10 | RECEPTION | SCREENSHOT reception_appointments | OK | ![]() |
| 11 | RECEPTION | NAVIGATE /dental/recalls/ |
OK | — |
| 12 | RECEPTION | VERIFY_TEXT "Recall Management" | OK | — |
| 13 | RECEPTION | SCREENSHOT reception_recalls | OK | ![]() |
| 14 | RECEPTION | NAVIGATE /dental/financial/ |
OK | — |
| 15 | RECEPTION | EXPECT_403 — fetch status 403, "You do not have permission… Required roles: DENTAL_ADMIN, DENTAL_PRACTICE_MANAGER" | OK | — |
| 16 | RECEPTION | SCREENSHOT reception_financial_403 | OK | ![]() |
| 17 | — | NOTE: Clinical — dentist reviews FP17 claims, charting, perio exams, radiographs | OK | — |
| 18 | DENTIST | USER switch (fresh isolated session) | OK | — |
| 19 | DENTIST | NAVIGATE {URL} → Keycloak login |
OK | — |
| 20 | DENTIST | KEYCLOAK_LOGIN dentist.test-client-dental | OK | — |
| 21 | DENTIST | VERIFY_VIEW /dental/practices/ |
OK | — |
| 22 | DENTIST | NAVIGATE /dental/fp17/ |
OK | — |
| 23 | DENTIST | VERIFY_TEXT "FP17" | OK | — |
| 24 | DENTIST | SCREENSHOT dentist_fp17 | OK | ![]() |
| 25 | DENTIST | CLICK first claim row → FP17 Claim #72 (Rejected, Band 1, £28.30) | OK | — |
| 26 | DENTIST | SCREENSHOT dentist_fp17_detail | OK | ![]() |
| 27 | DENTIST | NAVIGATE /dental/charts/ |
OK | — |
| 28 | DENTIST | VERIFY_TEXT "Chart" | OK | — |
| 29 | DENTIST | CLICK first chart row → Tooth 27 (Elena Popova, existing treatment) | OK | — |
| 30 | DENTIST | SCREENSHOT dentist_chart | OK | ![]() |
| 31 | DENTIST | NAVIGATE /dental/perio/ |
OK | — |
| 32 | DENTIST | CLICK first perio exam row → Elena Popova (Plaque 35%, Bleeding 20%) | OK | — |
| 33 | DENTIST | SCREENSHOT dentist_perio | OK | ![]() |
| 34 | DENTIST | NAVIGATE /dental/radiographs/ |
OK | — |
| 35 | DENTIST | SCREENSHOT dentist_radiographs | OK | ![]() |
| 36 | — | NOTE: Practice Manager — financials, seat management, staff rotas | OK | — |
| 37 | MANAGER | USER switch (fresh isolated session) | OK | — |
| 38 | MANAGER | NAVIGATE {URL} → Keycloak login |
OK | — |
| 39 | MANAGER | KEYCLOAK_LOGIN manager.test-client-dental | OK | — |
| 40 | MANAGER | VERIFY_VIEW /dental/practices/ |
OK | — |
| 41 | MANAGER | NAVIGATE /dental/financial/ (same URL that 403'd Reception) |
OK | — |
| 42 | MANAGER | VERIFY_VIEW /dental/financial/ |
OK | — |
| 43 | MANAGER | SCREENSHOT manager_financial | OK | ![]() |
| 44 | MANAGER | NAVIGATE /dental/seats/ (Seat Licensing, 8 seats) |
OK | — |
| 45 | MANAGER | SCREENSHOT manager_seats | OK | ![]() |
| 46 | MANAGER | NAVIGATE /dental/staff/ (3 staff) |
OK | — |
| 47 | MANAGER | SCREENSHOT manager_staff | OK | ![]() |
| 48 | — | NOTE: Admin — practice settings, zones, schedules, provider management | OK | — |
| 49 | ADMIN | USER switch (fresh isolated session) | OK | — |
| 50 | ADMIN | NAVIGATE {URL} → Keycloak login |
OK | — |
| 51 | ADMIN | KEYCLOAK_LOGIN admin.test-client-dental | OK | — |
| 52 | ADMIN | VERIFY_VIEW /dental/practices/ |
OK | — |
| 53 | ADMIN | NAVIGATE /dental/settings/zones/ |
OK | — |
| 54 | ADMIN | VERIFY_TEXT "Zone" | OK | — |
| 55 | ADMIN | SCREENSHOT admin_zones | OK | ![]() |
| 56 | ADMIN | NAVIGATE /dental/settings/schedules/ |
OK | — |
| 57 | ADMIN | SCREENSHOT admin_schedules | OK | ![]() |
| 58 | ADMIN | NAVIGATE /dental/providers/ (3 providers) |
OK | — |
| 59 | ADMIN | SCREENSHOT admin_providers | OK | ![]() |
| 60 | — | NOTE: Walkthrough complete — all four roles demonstrated, incl. RBAC block | OK | — |
Narration (NOTE) lines were also posted live to the control channel as the run progressed.
Interactive run — the control channel was polled before every step (no PAUSE_AND_DISCUSS
or ASK_AUDIENCE blocks in this scene). No viewer questions or notes were received during
the run; the only outbox entries were the four role-transition narrations.
notes.md is empty — no development feedback was captured this run.
Generated by the Demo Agent (veripath/demo-agent v2.0.0). All application data shown is synthetic test data (test-client-dental realm); no real patient data is used.