Description
In web/pages/settings_page.py (line ~1292), container.addEventListener('click', ...) is called inside renderBudgetList(), which is invoked repeatedly. Each call stacks another click listener on the same container, leading to duplicate prompts and API calls after each refresh.
Impact
- Priority: High (non-critical but real)
- Duplicate dialog prompts when clicking budget items
- Multiple redundant API calls per user action
- Worsens with each re-render of the budget list
Expected Behavior
A single click listener should handle events, regardless of how many times renderBudgetList() is called.
Suggested Fix
Either:
- Register the event listener once outside
renderBudgetList(), or
- Remove existing listeners before re-adding, or
- Use event delegation with a single persistent listener
Description
In
web/pages/settings_page.py(line ~1292),container.addEventListener('click', ...)is called insiderenderBudgetList(), which is invoked repeatedly. Each call stacks another click listener on the same container, leading to duplicate prompts and API calls after each refresh.Impact
Expected Behavior
A single click listener should handle events, regardless of how many times
renderBudgetList()is called.Suggested Fix
Either:
renderBudgetList(), or