From 14d410c0290983ea0943ac1a54946187b6f239cb Mon Sep 17 00:00:00 2001 From: Jordan Witte Date: Wed, 14 Jan 2026 13:37:14 -0800 Subject: [PATCH] correctly order the dates for summary --- .../expungeservice/charges_summarizer.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/backend/expungeservice/charges_summarizer.py b/src/backend/expungeservice/charges_summarizer.py index 8ab2b9859..9ab1df2ef 100644 --- a/src/backend/expungeservice/charges_summarizer.py +++ b/src/backend/expungeservice/charges_summarizer.py @@ -119,11 +119,17 @@ def _get_case_has_ineligible_charge(case: Record): @staticmethod def _get_future_eligibility_label_on_case(case: Record): + # Filter to charges with a future eligibility date, excluding ineligible charges (date.max()) + future_eligible_charges = [ + charge for charge in case.charges + if charge.expungement_result.charge_eligibility.date_to_sort_label_by + and charge.expungement_result.charge_eligibility.date_to_sort_label_by != date.max() + ] + if not future_eligible_charges: + return None + # Return the label of the charge with the latest date (case can't be expunged until all eligible charges are eligible) date_sorted_charges = sorted( - case.charges, - key=lambda charge: charge.expungement_result.charge_eligibility.date_to_sort_label_by or date.max(), + future_eligible_charges, + key=lambda charge: charge.expungement_result.charge_eligibility.date_to_sort_label_by, ) - if date_sorted_charges[0].expungement_result.charge_eligibility.date_to_sort_label_by: - return date_sorted_charges[0].expungement_result.charge_eligibility.label - else: - return None + return date_sorted_charges[-1].expungement_result.charge_eligibility.label