From 09ef69db919396d735dd16f06bf9bbd753dee239 Mon Sep 17 00:00:00 2001 From: Luc Mcgrady Date: Sat, 1 Nov 2025 13:00:28 +0000 Subject: [PATCH] Fix/Per deck retention not used for filtered decks --- rslib/src/scheduler/answering/mod.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rslib/src/scheduler/answering/mod.rs b/rslib/src/scheduler/answering/mod.rs index 6ff8c6e2d..7be18ba1b 100644 --- a/rslib/src/scheduler/answering/mod.rs +++ b/rslib/src/scheduler/answering/mod.rs @@ -444,8 +444,12 @@ impl Collection { .get_deck(card.deck_id)? .or_not_found(card.deck_id)?; let config = self.home_deck_config(deck.config_id(), card.original_deck_id)?; + let original_deck = self + .storage + .get_deck(card.original_or_current_deck_id())? + .ok_or(AnkiError::DatabaseCheckRequired)?; - let desired_retention = deck.effective_desired_retention(&config); + let desired_retention = original_deck.effective_desired_retention(&config); let fsrs_enabled = self.get_config_bool(BoolKey::Fsrs); let fsrs_next_states = if fsrs_enabled { let params = config.fsrs_params();