The flow

👤
Select Student
🎯
Select Competency
Start Interview
📤
Send Questions
🏷
Mark Buckets
🏁
End + Email

Instructor Panel layout

AreaPurpose
Top barStudent / competency / set selectors; Start, Stop, End Session buttons; timer with +1m/+2m/+5m add-time buttons
Question tree (left)Loaded set with follow-ups nested; click to select, double-click to resend. Bucket is preserved on resend.
History box (right-top)Questions sent this session; mark Q / P / A / M / B / I buckets per entry
Last Attempt panelMost recent Interview-source attempt on the selected competency for this student — date, grade, questions asked, eval notes
Instructor NotesLive scratchpad pre-filled into the End Session dialog
Approaching Only banner (green)Fires when student can reach A with Approaching only — safe to cut short
Grade-visible warning (amber)Appears when Student Screen is showing grades — reminds you to blank before next student

Window placement is saved explicitly rather than on close — capture a layout once it is how you want it, and it is restored on every launch. A saved position that would land off-screen (the two-monitor layout reopened on the laptop alone) is pulled back onto the visible desktop rather than restored literally.

Timer

The interview timer starts automatically when the first question is sent (if not already started manually via ▶ Start Interview). Use +1m, +2m, +5m to add time retroactively. The final duration is recorded on the attempt.

Bucket marking

After sending a question, select its row in the history list and click a bucket button:

BucketMeaningColorWrites a grade row?
QQuiz LevelPurpleYes
PProficientBlueYes
AApproachingAmberYes
MMasteryGreenYes
BBasicOrangeNo — history only
IInconclusiveSlate greyNo — history only
Clear the markingNo

Q, P, A and M each record a question visit against the attempt for research tracking. B and I are kept in the session's history only — they never write a grade record and never affect the student's standing.

The bucket is preserved even if you resend the question. The highest bucket across all marked questions becomes the grade suggestion in the End Session dialog.

Why B and I exist

They separate “the student answered at a basic level” and “this answer told me nothing” from the four levels that carry a grade. That distinction is what makes observed difficulty trustworthy: a question shown many times and never gradeable is a finding about the question, not a gap in the data — so I is counted as an exclusion rather than averaged in as a low score.

Questions-Only Visit

Use Questions Only to send questions without starting a graded interview. Records a visit for duration tracking but doesn't count against the daily interview limit. Questions-Only and Interview timers are mutually exclusive — starting one blocks the other.

End Session

Click 🏁 End Session to open the Session Review dialog. Confirm or change the grade, edit eval notes (pre-filled from Live Notes), then send the recap email. After sending, the Student Screen shows the session result with the competency grade prominent and the full gradebook below.

The recap email is optional. Completion is recorded on its own completed_at column, so a session you choose not to email — or one whose SMTP send fails — still appears in the student's history rather than disappearing from it.

Handoff from the Gradiance web app

If the queue system is running, a student sent over from the web app pre-populates the Instructor Panel selectors — student, course and competency — so you are not retyping a name you just read on screen. This runs over a local HTTP listener on localhost, reachable only from a browser on the same machine, never from the network. Competencies reach Gradiance by import from this app, so the handoff matches on this app's own competencies.id echoed back, falling back to a name match.