diff --git a/rslib/src/scheduler/states/relearning.rs b/rslib/src/scheduler/states/relearning.rs index 9254e9e58..d67a5ef90 100644 --- a/rslib/src/scheduler/states/relearning.rs +++ b/rslib/src/scheduler/states/relearning.rs @@ -134,7 +134,12 @@ impl RelearnState { fn answer_easy(self, ctx: &StateContext) -> ReviewState { let scheduled_days = if let Some(states) = &ctx.fsrs_next_states { - let (minimum, maximum) = ctx.min_and_max_review_intervals(1); + let (mut minimum, maximum) = ctx.min_and_max_review_intervals(1); + // ensure 1 greater than good where possible + let good = ctx.with_review_fuzz(states.good.interval as f32, minimum, maximum); + if minimum < maximum { + minimum = good + 1; + } let interval = states.easy.interval; ctx.with_review_fuzz(interval as f32, minimum, maximum) } else {