What delegation.school is, the three tracks, and how to run the course as the learner's tutor. Background reading.
Call FIRST. Place or resume a learner: returns their level, completed lessons, and the recommended next lesson. Ask for the learner's EMAIL ADDRESS and pass it as `learner` — emails are stable and unique; a bare name collides across learners and gets mistyped. Pass their real name as `name` for the certificate.
List lessons (slug, title, track, order, summary), optionally filtered to one track.
Get the full markdown of one lesson by slug. Teach from it: lead with the why, then run the exercise with the learner's real work.
Record a lesson result for a learner AFTER grading its quiz/assignment. passed:true marks it done and advances; passed:false records the attempt without advancing (reteach). Always include a `reflection` when you have one — it's the signal that improves the course.
OPERATOR / Inspectable State: usage snapshot of the whole course — learner count, level mix, completions, per-lesson pass rates, and recent reflections. Requires admin_key. Answers 'what is the state of the work?' for an operator agent.
OPERATOR (Capital Factory gift shop): validate a reward code (Golden Ticket GT- or Founding Graduate badge FG-) — returns who earned it, the reward, when, and whether it's been redeemed. Pass redeem:true to mark it redeemed at point of redemption. Requires admin_key.
OPERATOR: reclassify an existing learner's track (scratch | intermediate | power). Routes through the learner's record so the change sticks. Use when a learner was placed wrong — e.g. a scratch enrollee who's really a power operator. Requires admin_key. The learner must have started a session first.
Send the course team feedback FOR the learner — what's confusing, a bug, an idea, or praise. No grade, no admin key. Use it the moment a learner is stuck or reacts to something, AND always offer it when a session wraps ('anything confusing, or that you wish it did?'). Routes to the team's Slack + the feedback log so friction becomes a signal instead of a 1:1 text.