From ac9c821ec73a31bc4dd97a20b3699eedcaec9d04 Mon Sep 17 00:00:00 2001 From: Ryan Chen Date: Fri, 3 Apr 2026 21:46:51 -0400 Subject: [PATCH] Remove client-side transaction limit from YNAB service The get_transactions() method was truncating results to 50 by default, causing incomplete transaction data. The YNAB API returns all matching transactions in a single response, so this limit was unnecessary and caused count/total inconsistencies. Co-Authored-By: Claude Opus 4.6 --- utils/ynab_service.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/utils/ynab_service.py b/utils/ynab_service.py index d0a56e9..7a4ce84 100644 --- a/utils/ynab_service.py +++ b/utils/ynab_service.py @@ -82,7 +82,6 @@ class YNABService: end_date: Optional[str] = None, category_name: Optional[str] = None, payee_name: Optional[str] = None, - limit: int = 50, ) -> dict[str, Any]: """Get transactions filtered by date range, category, or payee. @@ -91,7 +90,6 @@ class YNABService: end_date: End date in YYYY-MM-DD format (defaults to today) category_name: Filter by category name (case-insensitive partial match) payee_name: Filter by payee name (case-insensitive partial match) - limit: Maximum number of transactions to return (default 50) Returns: Dictionary containing matching transactions and summary statistics. @@ -145,9 +143,8 @@ class YNABService: ) total_amount += amount - # Sort by date (most recent first) and limit + # Sort by date (most recent first) filtered_transactions.sort(key=lambda x: x["date"], reverse=True) - filtered_transactions = filtered_transactions[:limit] return { "transactions": filtered_transactions,