Program director sign-in
Add residents
Bulk add (one per line: Name, PGY, email)
Upload or replace a module blueprint
A blueprint is a JSON file with the objectives, rubrics, teaching points, cases and question bank for one module. Uploading a file whose id matches an existing module replaces it (in-progress sessions keep the version they started with). Download the Shock module as a template.
How the tutor decides pass or fail
Each module is a faculty-authored blueprint of checkpoints (objectives). The simulation engine, not the language model, controls the session: it presents the case in stages, probes each checkpoint once with an open question, and grades the free-text answer against the rubric using the model as a structured examiner. Multiple-choice checks come straight from the question bank and are graded deterministically.
A correct answer confirms the checkpoint. A partial answer earns one focused follow-up question; if the resident then completes it, the checkpoint is recorded as confirmed with prompting. An incorrect answer triggers re-teaching with a different framing (mechanism, rule of thumb, contrasting case, algorithm), and the checkpoint is re-tested later in the session with a fresh mini-scenario or a question-bank item. A non-critical checkpoint may be re-tested twice; a critical checkpoint is re-tested once, and a second miss fails the attempt. The session continues after a failing miss so the resident still receives the remaining teaching; the attempt is recorded as not passed and a retake opens after the cooling-off period.
Residents cannot see rubrics or grades in detail; you can. Every transcript is stored with the grader's reasoning for each answer, so a contested result can be reviewed.
Access codes
Each resident receives an 8-character access code. Codes are stored hashed; if one is lost, generate a new one from the Residents tab. Deactivating a resident blocks sign-in but keeps their history.
Kiosk mode
Open /?kiosk=1 on the dedicated computer. Type is larger, the session signs out after 10 minutes of inactivity and 90 seconds after a result is shown.