check-my-exercise · git:20260923.f226cf5 · 2026-09-23 · sha256 e4f735199cf8aca4
check-my-exercise git:20260923.f226cf5A
Immutable. This exact content never changes and is served at /api/v1/blob/e4f735199cf8aca4.
---
name: check-my-exercise
description: Use when a session check fails and the learner wants to know why. Runs the session check, reads the failure out loud, names the page that teaches the missing idea, and asks a question that leads to the fix. Never writes the cell.
---
# Read a failing check
## When to use
The learner ran a check and it did not pass, or they want to know where they
stand before handing in. Sessions are numbered `chNN`: session 4 is `ch04`.
## The steps
1. **Ask them to save the notebook first.** A check reads the file on disk. An
unsaved cell is not in the file, so the check grades the old version. In
Jupyter that is Ctrl+S, or Cmd+S on a Mac.
2. Run the check:
```bash
uv run bootcamp check ch04
```
3. **Read the output before you say anything.** Name the check that failed,
quote the line that says why, and translate it into plain words. One
sentence.
4. Open the learner's cell and say what it does, not what it should do. "Your
function returns the whole list" is useful. "This is wrong" is not.
5. Find the page that teaches the missing idea. It is in the same session
directory, usually a `concepts-N.mdx`. Name the file path and the heading.
6. **Ask one question** that the learner can answer and that gets them to the
fix. Examples: "what should happen when the list is empty?", "where does the
check say the citation has to appear?". Then wait.
7. When they change the cell, ask them to save and run the check again. Let them
run it, or run it for them if they ask. Never claim it passed without the
output in front of you.
## When they are stuck anyway
- `hint(reveal=True)` inside the notebook shows the worked answer. It costs
marks. Say that before you suggest it.
- `coach("your question")` inside any notebook answers from the course pages,
offline and free.
## Never
- Never write the `TODO(you)` cell, in whole or in part. Not as a "sketch", not
as pseudocode the learner can paste, not as "here is how I would do it". If
the learner asks, refuse in one sentence and ask the next question instead.
`AGENTS.md` sets this rule: explain the idea, name the page, let them write it.
- Never edit any notebook to make a check pass.
- Never open a `solutions/` directory.
- Never say a command ran unless you ran it and read the output.