major-domo-database/app
Cal Corum 56fca1fa03 fix: Fix CSV export, season filtering, and position matching in refactored services
Integration testing revealed three issues with the refactored service layer:

1. CSV Export Format
   - Nested team/sbaplayer dicts were being dumped as strings
   - Now flattens team to abbreviation, sbaplayer to ID
   - Matches original CSV format from pre-refactor code

2. Season=0 Filter
   - season=0 was filtering for WHERE season=0 (returns nothing)
   - Now correctly returns all seasons when season=0 or None
   - Affects 13,266 total players across all seasons

3. Generic Position "P"
   - pos=P returned no results (players have SP/RP/CP, not P)
   - Now expands P to match SP, RP, CP pitcher positions
   - Applied to both DB filtering and Python mock filtering

4. Roster Endpoint Enhancement
   - Added default /teams/{id}/roster endpoint (assumes 'current')
   - Existing /teams/{id}/roster/{which} endpoint unchanged

All changes maintain backward compatibility and pass integration tests.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-04 11:06:58 -06:00
..
routers_v3 fix: Fix CSV export, season filtering, and position matching in refactored services 2026-02-04 11:06:58 -06:00
services fix: Fix CSV export, season filtering, and position matching in refactored services 2026-02-04 11:06:58 -06:00
__init__.py Initial commit 2023-03-21 16:09:46 -05:00
db_engine.py Add salary_cap column to Team model (v2.2.0) 2025-12-10 07:28:16 -06:00
dependencies.py Add CACHE_ENABLED env var to toggle Redis caching (v2.2.1) 2025-12-10 07:59:54 -06:00
main.py Added HelpCommands 2025-10-17 16:36:40 -05:00