Skip to content

Commit 545ca27

Browse files
committed
Refine review selection
1 parent 56ed4f2 commit 545ca27

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

db.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ def get_attempts(problem_id: int) -> List[sqlite3.Row]:
324324
def get_due_reviews(limit: int = 3) -> List[sqlite3.Row]:
325325
problems = get_problems()
326326
today = date.today()
327-
due: List[sqlite3.Row] = []
327+
due: List[tuple[sqlite3.Row, date]] = []
328328

329329
for row in problems:
330330
base_date_str = row["last_review_at"] or row["last_attempt_at"] or row["created_at"]
@@ -339,14 +339,12 @@ def get_due_reviews(limit: int = 3) -> List[sqlite3.Row]:
339339
delta_days = (today - base_date).days
340340

341341
if delta_days >= required_days:
342-
due.append(row)
342+
due.append((row, base_date))
343343

344-
due.sort(key=lambda r: (r["last_review_at"] or "", r["last_attempt_at"] or ""))
344+
due.sort(key=lambda item: item[1])
345345
limit = max(1, min(limit, 3))
346346
if due:
347-
return due[:limit]
348-
if problems:
349-
return problems[:1]
347+
return [row for row, _ in due[:limit]]
350348
return []
351349

352350

0 commit comments

Comments
 (0)