Commit Graph

105 Commits

Author SHA1 Message Date
Cal Corum
0cba52cea5 PostgreSQL migration: Complete code preparation phase
- Add db_helpers.py with cross-database upsert functions for SQLite/PostgreSQL
- Replace 12 on_conflict_replace() calls with PostgreSQL-compatible upserts
- Add unique indexes: StratPlay(game, play_num), Decision(game, pitcher)
- Add max_length to Team model fields (abbrev, sname, lname)
- Fix boolean comparison in teams.py (== 0/1 to == False/True)
- Create migrate_to_postgres.py with ID-preserving migration logic
- Create audit_sqlite.py for pre-migration data integrity checks
- Add PROJECT_PLAN.json for migration tracking
- Add .secrets/ to .gitignore for credentials

Audit results: 658,963 records across 29 tables, 2,390 orphaned stats (expected)

Based on Major Domo migration lessons learned (33 issues resolved there)
2026-01-25 23:05:54 -06:00
Cal Corum
fbe8623eb4 Merge branch 'main' into postgres-migration 2026-01-25 22:53:35 -06:00
Cal Corum
09924faea5 Normalize Player.franchise to city-agnostic values
- Add SQL migration script to update all franchise values
- Change AI roster queries from Team.lname to Team.sname
- Add FRANCHISE_NORMALIZE helper for bulk imports
- Update St Louis Cardinals hardcoded fix

Enables cross-era player matching for AI rosters (fixes Oakland Athletics issue)

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 12:00:45 -06:00
Cal Corum
a34e553b25 2005 Live Series Updates 2025-11-08 18:25:08 -06:00
Cal Corum
1517283114 CLAUDE: Fix GROUP BY queries for PostgreSQL compatibility
- Refactor get_batting_totals() to conditionally build SELECT fields based on group_by parameter
- Refactor get_pitching_totals() with same pattern
- Ensures all non-aggregated SELECT fields are included in GROUP BY clause
- Based on successful Major Domo migration pattern
2025-11-07 10:25:00 -06:00
Cal Corum
f6e8aa7108 CLAUDE: Add PostgreSQL support and table names to models
- Add environment-based PostgreSQL configuration to db_engine.py
- Add table_name to all 30 models (Meta class)
- Update db_migrations.py to auto-select migrator based on DB type
- Add comprehensive PostgreSQL migration plan document
2025-11-07 10:23:14 -06:00
Cal Corum
db0635b01d Added search endpoints 2025-10-08 14:21:44 -05:00
Cal Corum
b20d0cdf88 Adding card variant support 2025-07-22 09:26:23 -05:00
Cal Corum
adaa8206c8 Players bug fix 2025-05-29 22:19:34 -05:00
Cal Corum
2791e1964b Gauntlet 8 updates 2025-05-29 22:19:19 -05:00
Cal Corum
acb65ef47c Gauntlet 7 cardsets 2024-12-23 16:13:05 -06:00
Cal Corum
0b8234f9d6 Add poop_max to game summary 2024-12-23 10:14:02 -06:00
Cal Corum
21fe5c419a Flip image libraries due to white bar bug 2024-11-04 23:17:07 -06:00
Cal Corum
1e4569dfbf Clean up root_validators
Remove root_path from FastAPI
Update Season 8 Cardsets
Force pydantic 1.x
2024-11-03 01:46:40 -05:00
Cal Corum
17416cd50f Log mlbplayer dupes
Update cardsets for season 8
2024-11-02 23:44:32 -05:00
Cal Corum
2a2961983a Added All-Star teams to record 2024-08-19 14:38:20 -05:00
Cal Corum
a265b83c63 Add support for exhibition games 2024-07-14 13:23:15 -05:00
Cal Corum
18a6ed2ebd Support for Exhibition games & Swagger updates 2024-07-11 15:07:23 -05:00
Cal Corum
75e2f05f48 Add support for Swagger 2024-07-11 15:06:58 -05:00
Cal Corum
179947b536 Add schema privacy to docs 2024-07-07 22:53:29 -05:00
Cal Corum
889db717d1 Update for Swagger URL 2024-07-07 22:18:51 -05:00
Cal Corum
421eea19ac Bugfixes 2024-06-03 12:09:44 -05:00
Cal Corum
d0c3caaf87 Add support for buying Promo pack 2024-05-13 17:03:48 -05:00
Cal Corum
f0e3b38938 Cardset updates 2024-05-13 15:37:08 -05:00
Cal Corum
79b59bb376 MlbPlayers update
Add initial support for /mlbplayers
2024-05-13 15:37:00 -05:00
Cal Corum
aca7d6df23 Add gauntlet_id to /games 2024-05-13 15:36:34 -05:00
Cal Corum
e4d2e432dd Fix standings bug & s9 update 2024-04-27 08:50:51 -05:00
Cal Corum
11568a2d2e Fix pitcher decisions across game_types 2024-04-27 08:50:33 -05:00
Cal Corum
b9a64e8333 2024 Updates 2024-04-21 17:48:51 -05:00
Cal Corum
62bcfd5e45 Cardset updates 2024-03-08 00:26:00 -06:00
Cal Corum
563f46c30c Update human legal-check 2024-03-01 20:01:56 -06:00
Cal Corum
ac14e8517e Add high-inning preference for AI lineups 2024-02-24 23:34:36 -06:00
Cal Corum
1f917b8a6b Mark '18 Promo as ranked legal 2024-02-24 21:36:56 -06:00
Cal Corum
a31f451089 Update card_creation.py
Bug fix: add second arm rating for C + OF players
2024-02-24 21:36:44 -06:00
Cal Corum
e217375974 Update db_engine.py
Update ranked cardsets
2023-12-04 13:40:10 -06:00
Cal Corum
dbbe257654 Update db_engine.py
Move 2023 from primary to secondary in the gauntlet
2023-11-29 10:34:41 -06:00
Cal Corum
eb49ded2d4 Add player_id to ratings & flashback rename 2023-11-20 01:00:10 -06:00
Cal Corum
b9e922acba Fix dupe PotG stats 2023-11-19 14:30:30 -06:00
Cal Corum
d81b63ce92 Update pitchingcardratings.py
Fix BB/9 inverse rating
2023-11-19 12:26:33 -06:00
Cal Corum
d9a63e1949 Add scouting update endpoint 2023-11-18 14:45:09 -06:00
Cal Corum
eb0babc78c Major League Campaign update
Prep for flashback campaign
2023-11-05 20:04:30 -06:00
Cal Corum
e9eb21b6b7 Update decisions.py
Bug fixing
2023-10-31 14:46:31 -05:00
Cal Corum
57bb15cf1b Added decisions/rest 2023-10-31 11:02:28 -05:00
Cal Corum
c884f45c17 Batting stats re24 sort update 2023-10-30 21:17:33 -05:00
Cal Corum
c0a94613a3 Serve scouting by static csv 2023-10-30 10:25:44 -05:00
Cal Corum
24cf331803 Pitching Basic Ratings Complete + Batting Refactor 2023-10-29 17:48:38 -05:00
Cal Corum
fb151f6bae Update gtype params 2023-10-29 14:11:08 -05:00
Cal Corum
60a4910735 Add image-reset call 2023-10-29 14:10:52 -05:00
Cal Corum
053f577c45 Tweak OF Arm rating 2023-10-29 14:10:39 -05:00
Cal Corum
ed296a0b13 Update Major League cardsets 2023-10-29 14:10:27 -05:00