| Field | Value |
|---|---|
| Scene | agents/hermes/demo_scenes/dental_walkthrough |
| Run ID | dental_walkthrough_20260804T114733Z |
| Timestamp (UTC) | 2026-08-04T11:47:33Z → 11:51:48Z |
| Result | PASS |
| Duration | ~4 min 15 s |
| Mode | Live interactive (control channel polled before every step; no pauses requested) |
| Target | https://test-client-dental.dental.veripath.co.uk |
All 60 scene steps executed successfully: four Keycloak SSO role logins
(Reception → Dentist → Practice Manager → Admin) with isolated sessions, 15
screenshots captured, every view/text/403 assertion passed, and the deliberate
RBAC block (receptionist → Financial = 403) confirmed.
| # | Role | Action | Result | Screenshot |
|---|---|---|---|---|
| 1 | RECEPTION | NOTE (Front of house) | OK | — |
| 2 | RECEPTION | USER switch | OK | — |
| 3 | RECEPTION | NAVIGATE → | OK | — |
| 4 | RECEPTION | KEYCLOAK_LOGIN | OK | — |
| 5 | RECEPTION | VERIFY_VIEW /dental/practices/ | OK | — |
| 6 | RECEPTION | VERIFY_TEXT "Test Client Dental Practice" | OK | — |
| 7 | RECEPTION | SCREENSHOT | OK | reception_practices |
| 8 | RECEPTION | NAVIGATE /dental/appointments/ | OK | — |
| 9 | RECEPTION | VERIFY_VIEW /dental/appointments/ | OK | — |
| 10 | RECEPTION | SCREENSHOT | OK | reception_appointments |
| 11 | RECEPTION | NAVIGATE /dental/recalls/ | OK | — |
| 12 | RECEPTION | VERIFY_TEXT "Recall Management" | OK | — |
| 13 | RECEPTION | SCREENSHOT | OK | reception_recalls |
| 14 | RECEPTION | NAVIGATE /dental/financial/ | OK (blocked) | — |
| 15 | RECEPTION | EXPECT_403 | OK — status 403, permission-denied signature | — |
| 16 | RECEPTION | SCREENSHOT | OK | reception_financial_403 |
| 17 | DENTIST | NOTE (Clinical) | OK | — |
| 18 | DENTIST | USER switch | OK | — |
| 19 | DENTIST | NAVIGATE → | OK | — |
| 20 | DENTIST | KEYCLOAK_LOGIN | OK | — |
| 21 | DENTIST | VERIFY_VIEW /dental/practices/ | OK | — |
| 22 | DENTIST | NAVIGATE /dental/fp17/ | OK | — |
| 23 | DENTIST | VERIFY_TEXT "FP17" | OK | — |
| 24 | DENTIST | SCREENSHOT | OK | dentist_fp17 |
| 25 | DENTIST | CLICK first claim row (Claim #72) | OK | — |
| 26 | DENTIST | SCREENSHOT | OK | dentist_fp17_detail |
| 27 | DENTIST | NAVIGATE /dental/charts/ | OK | — |
| 28 | DENTIST | VERIFY_TEXT "Chart" | OK | — |
| 29 | DENTIST | CLICK first chart row (Tooth 27) | OK | — |
| 30 | DENTIST | SCREENSHOT | OK | dentist_chart |
| 31 | DENTIST | NAVIGATE /dental/perio/ | OK | — |
| 32 | DENTIST | CLICK first perio exam row | OK | — |
| 33 | DENTIST | SCREENSHOT | OK | dentist_perio |
| 34 | DENTIST | NAVIGATE /dental/radiographs/ | OK | — |
| 35 | DENTIST | SCREENSHOT | OK | dentist_radiographs |
| 36 | MANAGER | NOTE (Practice Manager) | OK | — |
| 37 | MANAGER | USER switch | OK | — |
| 38 | MANAGER | NAVIGATE → | OK | — |
| 39 | MANAGER | KEYCLOAK_LOGIN | OK | — |
| 40 | MANAGER | VERIFY_VIEW /dental/practices/ | OK | — |
| 41 | MANAGER | NAVIGATE /dental/financial/ | OK | — |
| 42 | MANAGER | VERIFY_VIEW /dental/financial/ | OK | — |
| 43 | MANAGER | SCREENSHOT | OK | manager_financial |
| 44 | MANAGER | NAVIGATE /dental/seats/ | OK | — |
| 45 | MANAGER | SCREENSHOT | OK | manager_seats |
| 46 | MANAGER | NAVIGATE /dental/staff/ | OK | — |
| 47 | MANAGER | SCREENSHOT | OK | manager_staff |
| 48 | ADMIN | NOTE (Admin) | OK | — |
| 49 | ADMIN | USER switch | OK | — |
| 50 | ADMIN | NAVIGATE → | OK | — |
| 51 | ADMIN | KEYCLOAK_LOGIN | OK | — |
| 52 | ADMIN | VERIFY_VIEW /dental/practices/ | OK | — |
| 53 | ADMIN | NAVIGATE /dental/settings/zones/ | OK | — |
| 54 | ADMIN | VERIFY_TEXT "Zone" | OK | — |
| 55 | ADMIN | SCREENSHOT | OK | admin_zones |
| 56 | ADMIN | NAVIGATE /dental/settings/schedules/ | OK | — |
| 57 | ADMIN | SCREENSHOT | OK | admin_schedules |
| 58 | ADMIN | NAVIGATE /dental/providers/ | OK | — |
| 59 | ADMIN | SCREENSHOT | OK | admin_providers |
| 60 | ADMIN | NOTE (Walkthrough complete) | OK | — |
Front of house — the receptionist manages the practice calendar, appointments and recalls.
The receptionist lands on the practice view, then moves through appointments and
recall management.



The receptionist has no Financial role. Navigating to
/dental/financial/ returns the permission screen:
You do not have permission to access this resource. Required roles: DENTAL_ADMIN, DENTAL_PRACTICE_MANAGER
The fetch assertion confirmed HTTP 403 plus the permission-denied signature —
role-based access control is enforced at the server.

Clinical — the dentist reviews FP17 claims, charting, perio examinations and radiographs.





Practice Manager — financials, seat management and staff rotas.
The same /dental/financial/ URL that blocked the receptionist renders the
Financial Dashboard for the manager — a direct before/after contrast for RBAC.



Admin — practice settings, zones and schedules, and provider management.



No viewer questions were received during this run (control channel inbox stayed
empty from start to finish). Five narration messages were posted to the
audience chat as the run progressed; no pauses or stop signals were requested.
None captured — the audience requested no notes this run.
All data shown is synthetic demo data on the Test Client Dental instance; no
real patient information is used.