You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Filed as a follow-up to #191 (Wash's vocab-quiz scoring proposal + language-tutor SLA consultation).
The current MasteryScore algorithm conflates two distinct signals:
Session rotation readiness — "I've shown enough evidence in this session to stop hammering this word; let spacing handle it."
True acquisition / mastery — "This word has been acquired in long-term memory; we can confidently call it 'known'."
Today both are driven by the same MasteryScore field, which can climb 0 → 1.0 in a single session. Per SLA literature (Cepeda et al. 2006 spacing effect; Bahrick & Phelps 1987; SM-2/Leitner/FSRS families), this overclaims true mastery — eight back-to-back correct answers in one session demonstrates working-memory access, not consolidation.
Tutor's recommendation
Cap single-session contribution to MasteryScore at ~0.60–0.70, and require a successful retrieval after a ≥24h gap to climb past that. This is exactly the Pimsleur/Leitner/SM-2 family logic and is well validated (Karpicke & Roediger, 2008 — the testing effect with spacing, not just testing alone).
Proposed split
SessionRotationReady (UI/session layer) — aggressive thresholds OK; this is the "stop drilling in this session" signal. Latter quiz rounds rapidly empty #191's resolution is appropriate here.
MasteryScore (long-term acquisition estimate) — require evidence across ≥2 sessions on different days before crossing ~0.80; should decay between sessions; should NOT reach 1.0 from a single session.
Acceptance criteria (sketch)
Single-session correct streaks cap MasteryScore contribution at ≤0.70 (configurable constant).
Climbing past 0.70 requires a successful retrieval ≥24h after the previous correct retrieval.
Existing user data preserved monotonically.
Schema: verify/add LastCorrectRetrievalAt per VocabularyProgress.
Repro tests asserting cross-session gating BEFORE implementation.
Background
Filed as a follow-up to #191 (Wash's vocab-quiz scoring proposal + language-tutor SLA consultation).
The current
MasteryScorealgorithm conflates two distinct signals:Today both are driven by the same
MasteryScorefield, which can climb 0 → 1.0 in a single session. Per SLA literature (Cepeda et al. 2006 spacing effect; Bahrick & Phelps 1987; SM-2/Leitner/FSRS families), this overclaims true mastery — eight back-to-back correct answers in one session demonstrates working-memory access, not consolidation.Tutor's recommendation
Proposed split
SessionRotationReady(UI/session layer) — aggressive thresholds OK; this is the "stop drilling in this session" signal. Latter quiz rounds rapidly empty #191's resolution is appropriate here.MasteryScore(long-term acquisition estimate) — require evidence across ≥2 sessions on different days before crossing ~0.80; should decay between sessions; should NOT reach 1.0 from a single session.Acceptance criteria (sketch)
MasteryScorecontribution at ≤0.70 (configurable constant).LastCorrectRetrievalAtperVocabularyProgress.Cross-references
.squad/decisions/inbox/wash-vocab-quiz-scoring-proposal-191.md