From 492178c107e2ac2c148eec08ce738baf6b70ad78 Mon Sep 17 00:00:00 2001 From: Jarrett Ye Date: Mon, 12 Feb 2024 14:09:39 +0800 Subject: [PATCH] Fix/ignore revlogs before Forget entry (#3002) * Fix/ignore revlogs before Forget entry * Update weights.rs --- rslib/src/scheduler/fsrs/weights.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/rslib/src/scheduler/fsrs/weights.rs b/rslib/src/scheduler/fsrs/weights.rs index 70ccd6f4c..3a7d09fe9 100644 --- a/rslib/src/scheduler/fsrs/weights.rs +++ b/rslib/src/scheduler/fsrs/weights.rs @@ -201,6 +201,15 @@ pub(crate) fn single_card_revlog_to_items( revlogs_complete = true; } else if last_learn_entry.is_some() { break; + // if we find the `Forget` entry before the `Learn` entry, we should + // ignore all the entries + } else if matches!( + (entry.review_kind, entry.ease_factor), + (RevlogReviewKind::Manual, 0) + ) && last_learn_entry.is_none() + { + revlogs_complete = false; + break; } } if !revlogs_complete {