Synthetic Coding Tutor Dataset

Generation & Quality-Rating Pipeline

An autonomous multi-agent pipeline that simulates student–tutor debugging sessions, executes every candidate solution against real tests, and grades each conversation with an LLM judge — producing data for fine-tuning coding tutors. The strategy1_11_02_2026-Golden release contains 2,495 multi-turn debugging conversations across five distinct student personalities — the Confused, Impatient, Overconfident, Syntax Struggler, and Programming Helper.

2,495 conversations · 5 personalities · 500 problems

The dataset at a glance

Overview

Every conversation is generated, executed, and graded. Each of the 2,495 multi-turn debugging conversations is validated against pytest test cases and scored 0–10 by an LLM judge on persona fidelity, tutor responsiveness, and dialog flow.

824
Gold (8–10)
417
Silver (5–7)
1,254
Bronze (0–4)
94.8%
Actionable feedback

Generation process

A LangGraph state machine drives every session

Two agents talk to each other. After each tutor response the code is executed against real tests; a router decides whether to keep debugging or stop.

01 · agent

Student

One of 5 personalities asks or gives specific feedback.

02 · agent

Tutor

Progressive refinement: incomplete early, complete later.

03 · tool

Execute

Runs the code under pytest against test cases.

04 · logic

Router

Loops back or ends when solved / max turns.

05 · judge

Judge

Scores and assigns gold / silver / bronze.

The key trick

Forcing incomplete code early creates real debugging

Naïve generation solved ~46% of conversations in 2 turns. Constraining the tutor turn-by-turn so early drafts must fail guarantees 4–6 turns of genuine back-and-forth.

TurnsMax tokensTempInstructionExpected
1–21200.86–8 lines, ignore edge casesMust fail tests
3–43000.6Fix only the named issuePartial progress
5+5000.3Handle all edge casesPasses all tests

Student agents

Five personalities

CONFUSED

Confused Student

Lost but specific.

“wait i think you forgot the base case??”
IMPATIENT

Impatient Student

Direct and demanding.

“just add the return statement!”
OVERCONFIDENT

Overconfident (Wrong)

Questions the tutor.

“maybe the test cases are wrong?”
SYNTAX

Syntax Struggler

Fixated on syntax.

“is it a missing colon or bracket?”
HELPER

Programming Helper

Expert who supplies fixes.

“returns wrong type. Fix: return tuple(result)”

94.8% of student turns name a concrete code element (base case, loop, return, edge case).

See it for yourself

Browse the conversations

All 2,495 generated sessions. Pick a personality and quality, choose a conversation from the list, and read it with live execution results per turn. Quality reflects the debugging dialogue (persona fidelity, tutor responsiveness, flow) — not whether the final code passed, so a rich “gold” session can still end unsolved.

Loading conversations…

Quality metrics

Measured, not assumed

The three charts that best capture dataset health. Click any chart to enlarge.