major-domo-v2/tasks
Cal Corum 37bf797254 Fix critical week rollover bugs causing 60x freeze message spam
Three bugs identified and fixed:

1. Deduplication logic tracked wrong week (transaction_freeze.py:216-219)
   - Saved freeze_from_week BEFORE _begin_freeze() modifies current.week
   - Prevents re-execution when API returns stale data

2. _run_transactions() bypassed service layer (transaction_freeze.py:350-394)
   - Added get_regular_transactions_by_week() to transaction_service.py
   - Now properly filters frozen=false and cancelled=false
   - Uses Transaction model objects instead of raw dict access

3. CRITICAL: Hardcoded current_id=1 (league_service.py:88-106)
   - Current table has one row PER SEASON, not a single row
   - Was patching Season 3 (id=1) instead of Season 13 (id=11)
   - Now fetches actual current state ID before patching

Root cause: The hardcoded ID caused every PATCH to update the wrong
season's record, so freeze was never actually set to True on the
current season. This caused the dedup check to pass 60 times (once
per minute during hour 0).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 14:15:26 -06:00
..
CLAUDE.md Add Google Sheets integration for draft pick tracking 2025-12-11 11:18:27 -06:00
custom_command_cleanup.py CLAUDE: Fix double emoji issue in Discord embeds 2025-10-16 23:09:21 -05:00
draft_monitor.py Fix missing guild variable in draft monitor on-clock announcement 2025-12-12 18:46:16 -06:00
live_scorebug_tracker.py CLAUDE: Refactor scorebug display and add dynamic channel visibility 2025-10-22 16:58:21 -05:00
TRANSACTION_EXECUTION_AUTOMATION.md CLAUDE: Automate player roster updates in transaction freeze/thaw system 2025-10-27 14:25:00 -05:00
transaction_freeze.py Fix critical week rollover bugs causing 60x freeze message spam 2025-12-22 14:15:26 -06:00