Learning Twin
The substrate. Per-topic mastery + Bloom's level + Lexile + accommodation context, updated after every submission. Nothing else in the AI surface runs without it.
Audit-gatedLoading...
Most “personalised” ed-tech sorts students into bins and calls it a day. CurioPilot builds a per-subject mastery model — the Learning Twin — and calibrates every activity, hint, and recommendation against it.
Most “adaptive” ed-tech sorts a child into one of three buckets — easy, medium, hard — based on a single quiz score. Then it serves the next activity from that bucket. That’s not personalisation; that’s a difficulty knob with a smile.
Real personalisation needs a per-topic, per-subject, per-Bloom’s-level mastery model that updates after every interaction. It needs to track what kind of mistakea student just made, not just whether they got it wrong. It needs to know that “ignored remainder in long division” is procedural, fixable in two minutes; “doesn’t grasp fractions as parts of a whole” is conceptual, weeks of work.
That’s the Learning Twin. It’s not a marketing layer; it’s the substrate the rest of the AI features run on.
Five nodes, run on every activity. Every iteration writes to TraceLayer.
Submission + hint requests captured.
Bloom's classifier + misconception detector run on the submission.
Per-topic mastery + Lexile + accommodation context refresh.
Next 3 topics surface with a 'why' tooltip.
Difficulty, format, and reading level pinned to ZPD.
Each feature is consent-gated and audit-logged. The shield means it’s enforced in code by TraceLayer.
The substrate. Per-topic mastery + Bloom's level + Lexile + accommodation context, updated after every submission. Nothing else in the AI surface runs without it.
Audit-gatedPulls the student's current ZPD, Lexile, and active misconceptions, then drafts a 5–10 item set calibrated to the next-best topic. Teacher edits + approves before a student sees it.
Audit-gatedHints, not answers. Subject-scoped, Bloom's-aware. Walks through reasoning step by step when a student is genuinely stuck — but won't write the essay or do the maths.
Audit-gatedInline feedback on argument structure, evidence, and clarity. Never rewrites the student's voice. Surfaces specific reverse-outline suggestions a teacher can adopt with one click.
Audit-gated30/60/90-day topic plans drafted from the Twin, with a 'why this order?' rationale per step. Re-plans automatically when mastery jumps or stalls.
Audit-gatedForgetting-curve scheduling layered with weekly spiral review of past topics. Practice surfaces what's about to slip — not what was hardest yesterday.
Audit-gatedPhoto-grading. Question variants. Multi-modal stems. Parent Coach Brief. Each runs inside TraceLayer; each respects the same consent and redaction gates.
Every quality-score ≥ 80 item spawns 3–5 AI paraphrases — same answer key, structurally validated. A class of 30 sees 30 variants of "What is 7 × 8?" Deterministic per-student assignment via variantIndexFor() means a page refresh shows the same variant a student started on. Generator runs as a 5-minute cron drainer so activity creation isn't blocked. Sibling de-dup is real.
Audit-gatedTwo paths. Imagen 3 for STEM scenes that need a generated image — every image runs through fail-closed moderation before storage. Per-slot failure falls back to text-only; the activity never half-renders. For maths that doesn't need a model, seven pure-function generators (number-line, coordinate-plane, fraction-bar, function-graph, pie-chart, bar-chart, molecule) — screen-reader-friendly, mathematically correct, sanitiser strips every unsafe SVG vector.
Audit-gatedSnap a photo of a notebook. The platform OCRs the handwriting, runs the output through the same rubric the AI generator used to author the question, surfaces partial credit on multi-step problems, and lets the teacher confirm or override before the grade lands. Image moderation is fail-open on student-upload paths (so a child's submission isn't blocked by a timeout) and fail-closed on AI-generation paths. License-gated under photo-grading.
Audit-gatedPremium Family + B2B Standard+ parents receive a weekly per-child digest: what's growing, what's stuck, what to try this week. Mind Mirror bands only — no numbers. The Coach Brief is generated server-side from a fixed prompt template, pinned to opt out of the smart router because the writing voice and the no-numbers rule are tightly enforced. Free / Basic / Family see a monthly Curiosity Report instead.
Audit-gatedNightly aggregation computes each division’s standardDeviationVsGrade. When > +0.3, the cohort is stretch; when < −0.3, the cohort is easier.
The activity generator reads this signal as a soft bias — never as a hard rule. Privacy floor: signals nullify when studentCount < 3 so a small class can’t be uniquely identified through its difficulty profile. Sigma values never surface to prompts or UI — only the three-band signal.
When a student writes — in the Writing Coach, a peer review, a reflection — detectCrisisLanguage scans the prose against seven categories at sub-millisecond latency.
No LLM on this path. Child-safety triage must be deterministic. Pattern tables are reviewed by a child-safety lead and cite Mental Health First Aid for Schools plus the SAMHSA youth-crisis taxonomy.
On a high-severity hit, the writing flow short-circuits with a CRISIS_DETECTED sentinel and an inbox alert fans out to school-admins — subject and preview never name the student or carry the excerpt. The queue UI is the authorised reveal surface. Counsellor escalation triggers the human intervention; the AI never tells the student “you’re in crisis”.
Adjacent surfaces: AI-prompt rejections land in safety_blocks for super-admin triage at /super-admin/safety/blocks. Image moderation runs at every image entry point.
One architecture, three audiences. All three pass through the same consent gates. All three log to TraceLayer.
Hint-giver, never answer-giver. Subject-scoped, Bloom's-aware. Will walk through reasoning step by step when a student is genuinely stuck — but won't write the essay or do the maths.
Plain-English chat for parents. "What did Maya struggle with this week?" "Why is this activity recommended?" One-click actions: schedule a check-in, switch to a calmer topic, change the consent state.
Friday digest with six action cards ranked by impact. Drafts reteach lessons, parent updates, conference briefs. Teacher edits + approves; nothing leaves the platform without a human signing off.
Every “won’t” below is enforced in code, not just policy. Most of them refuse to compile if violated.
Each item above is enforced by TraceLayer + the build-time PII attestation. Read the full compliance posture at /compliance.
After every submission. The Bloom's classifier and misconception detector run on the response, then per-topic mastery, Lexile, and accommodation context refresh in roughly 800ms. Every update writes a row to TraceLayer with the input hash, model version, and confidence score.
30-minute walkthrough with you, your IT, and your DPO. We’ll build a Twin from a sample student dataset and show you how it updates in real time.