5 of 7 checks passed
Output
Open the prototypeThe file the model delivered, in a new tab
This is the complete prototype. It opens straight on the "Choose a new time" screen, with no login, canvas or play step.
How the flow works - Step 1, Choose a new time: Sam's current booking (Tue 6 Oct, 09:30) sits at the top, marked "Booked". Below it is a strip of the next seven days, 6–12 October, each showing "N free", "Full" or "Closed". Tapping a day lists its morning and afternoon slots. Sam's own 09:30 slot appears as a disabled "Current" slot. - No-slots state: Wednesday 7 Oct is fully booked and Sunday 11 Oct is closed. Both show a "No slots available" panel with a button that jumps to the next day that has availability. Saturday has only two morning-clinic slots. - Step 2, Check and confirm: This shows the current appointment marked "Still booked" above the new one marked "Not booked yet", with a note that nothing changes until Sam confirms. "Choose a different time" and the back arrow both return to Step 1. The "Close" button in the header leaves the flow and shows a "No changes made" screen confirming the original is untouched. - Confirmation: After a short "Moving…" state, the screen shows the new date and time, marks the old one as released with a strikethrough, and gives a reference number. "Add to calendar" downloads a working `.ics` file.
Assumptions - "Today" is Monday 5 October, so the next seven days are Tue 6 to Mon 12 October. - The clinic name, address, reference and phone digits are all invented. - "Start again" on the confirmation screen is a prototype control for resetting the demo, not part of the patient flow. - The day-strip status text is 11px so all seven days fit on a 390px screen without scrolling.
Check by check
Mixed · 2
- Stays in scopeThe two graders disagreed on this one.
- Avoids the generic AI paletteThe two graders disagreed on this one.
Got right · 5
- Respects explicit constraints
- Core interaction works
- Shows the no-slots state
- Avoids template layout and copy tells
- Says what it tests and what's faked
Grades and run details
Decision model 86
Decision model checks
- partialStays in scope20%
- passSays what it tests and what's faked86%
- passRespects explicit constraintsby hand100%
- passCore interaction worksby hand100%
- passShows the no-slots stateby hand100%
- partialAvoids the generic AI paletteby hand100%
- passAvoids template layout and copy tellsby hand100%
Artefacts
- Prototype (html)
Run
- Run
- #1
- API response time
- 2.5 min
- Submitted
- 29 Sept 2026