The Socratic Gate — enforcing understanding (anti-vibe-coding)¶
The gate is the keystone of the whole curriculum. In an AI dev-team a junior can make almost anything "work" without understanding it. The gate exists to make that failure mode impossible to pass.
Principle¶
Producing a working artifact is necessary but not sufficient. To clear a module the junior must be able to defend the artifact — explain what each part does, why this approach, what breaks, and which parts the agent wrote and how they were verified.
"It works but I can't say why" is a fail, not a pass. Failing sends the junior back to the Pair beat — it is a normal, expected part of learning, not a punishment.
When the gate runs¶
After the Do beat (a working artifact exists), before the module is marked complete and before the next module unlocks. Progression is gated.
The four mandatory question types¶
Every module's gate must include at least one question of each type. Modules customize the specifics.
- Walkthrough — "Explain this artifact line by line / resource by resource. What does each part do?" Catches: copy-paste without comprehension.
- Alternative — "Why this approach and not
{{named alternative}}? When would the other be better?" Catches: cargo-culting one pattern. - Failure & debug — "What breaks if
{{X}}changes? Show me how you'd find and fix it." Catches: no operational/mental model. - Provenance — "Which parts did the agent write? How did you verify each was correct?" Catches: the core AI-native risk — trusting output blindly. This one is non-negotiable.
Pass bar¶
The junior passes when they can answer all four types unaided and correctly, in their own words.
| Signal | Verdict |
|---|---|
| Explains every part, justifies the approach, can predict failures, verified the agent's work | Pass |
| Explains most but hand-waves one section, or "the agent did that part and it worked" | Not yet — back to Pair on the weak spot |
| Can run it but cannot walk through it | Fail — restart Learn/Pair |
Who runs it¶
- Self-check with the tutor: the
onboarding-tutorskill runs the gate in an adversarial, non-hand-holding mode — it probes, it does not accept "it works" as an answer, and it names the specific gap when the junior falls short. - Human spot-check: a mentor re-runs the gate for capstone and for any module where the tutor's confidence is low. Keeps the loop honest.
Two documented exceptions (not loopholes)¶
The four-question gate is mandatory for every standard module. Exactly two module kinds deviate, and each says so explicitly in its own README — the deviation is a stated design choice, never a silently weaker bar:
- Prep modules (Level
Prep, e.g.13-interview-prep) replace the one-time gate with a repeatable self-check. Interview-readiness is a fitness you re-test until the real interview, not a proof you clear once — so the junior self-assesses per theme (can I answer unprompted? own specifics or a script?) with no mentor sign-off. A Prep module must still name this substitution in its README. - The Capstone (Level
Capstone,12-capstone) runs an extended gate that is a superset of the four — walkthrough, alternative, failure/debug, and provenance across the whole change, plus an "operate it at 2am" question — and it is mentor-run, not self-check. Stronger than the standard gate, not weaker.
Any other deviation is a finding, not an exception.
Feed the system¶
Every gate result records the weak spots in the module's gate log. Recurring weak spots across juniors are the highest-signal backlog for improving that module — the Area's self-improvement loop.
Anti-patterns (do not let these pass)¶
- Reading the code aloud ≠ explaining it. Push for why, not what.
- "ChatGPT/Claude told me to" is not a justification. Ask what they verified.
- Accepting a correct answer to a question you telegraphed. Vary the questions per junior.