-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
Problem Statement
Problems at box level 6-8 (mastered) are reviewed based on simple time intervals (60-120 days). This is inefficient because:
- Easy reviews don't strengthen memory (no "desirable difficulty")
- Review time could be spent on new learning
- Mastered problems should resurface contextually, not just on schedule
Proposed Solution: Triggered Reviews
Instead of showing mastered problems on a fixed schedule, resurface them when contextually relevant:
- Failure Trigger: User fails Problem B → find related mastered Problem A → show A to reinforce foundation
- Chronic Struggle Trigger: Problems with 3+ unsuccessful attempts → find related mastered problems to reinforce concepts
Session Composition Priority
- Triggered reviews (max 2 mastered problems related to struggling problems)
- Learning reviews (box 1-5, still learning)
- New problems (primary learning)
- Passive mastered reviews (box 6-8, only if session not full)
Smart Selection Algorithm
- Find "bridge" problems with high aggregate relationship to ALL struggling problems
- Scoring:
aggregateStrength * (1 + coverageBonus) - Relationship threshold: >= 2.0
Tag Mastery Decay Integration
- If a tag's decay_score < 0.7, boost priority for triggered reviews with that tag
Implementation Tasks
- Add
getTriggeredReviewsandgetProblemsNeedingReinforcementto problem_relationships.js - Add
getProblemsWithHighFailuresquery to problems.js - Integrate triggered reviews into problemServiceSession.js
- Create unit tests for triggered review detection
Expected Outcomes
| Metric | Before | After |
|---|---|---|
| Mastered reviews per session | 1-2 (scheduled) | 0-2 (contextual) |
| New problems per session | 2-3 | 3-4 |
| Review effectiveness | Low (easy) | High (reinforcing weakness) |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels