Feat/spaced repetition 2279 - #2284
Conversation
|
Thank you for submitting your pull request, @Vachhani-Tapan! 🙌 |
|
Warning Review limit reachedNext included review available in 54 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
📝 Pull Request Description
Related Issue
Closes #2279
Summary
This PR implements the SuperMemo-2 (SM-2) algorithm to optimize user study sessions and flashcard retention. Instead of random selection, the backend now utilizes a
RepetitionStatemodel to dynamically schedule the optimal next review date based on a user's grade. A daily CRON job aggregates and queries for "due" cards, significantly increasing overall learning efficiency.Type of Change
How Has This Been Tested?
$lte: todayon thenextReviewDate.intervalbased on theeasinessFactor, while a low grade (e.g., 1 or 2) safely resets therepetitionsstate back to zero for immediate relearning.Screenshots (if applicable)
N/A - Backend algorithmic enhancement.
Checklist