24 lines
1.6 KiB
Markdown
24 lines
1.6 KiB
Markdown
---
|
|
id: 09bb95a5-2b2f-43e5-93a6-6b96b881461f
|
|
type: decision
|
|
title: "FullCard migration: database-side schema + router changes"
|
|
tags: [paper-dynasty, database, db_engine, battingcardratings, pitchingcardratings, migration, schema, routers_v2]
|
|
importance: 0.8
|
|
confidence: 0.8
|
|
created: "2026-02-25T22:26:54.133040+00:00"
|
|
updated: "2026-02-25T22:27:03.950479+00:00"
|
|
relations:
|
|
- target: c7623317-ea0a-4b8a-9375-65fc3aac5303
|
|
type: RELATED_TO
|
|
direction: outgoing
|
|
strength: 0.8
|
|
edge_id: 0b7eb89e-5ffa-4f42-9a07-b6f34c6d3990
|
|
- target: 2d704690-8790-4f67-bf0d-1bd1e50460a9
|
|
type: RELATED_TO
|
|
direction: incoming
|
|
strength: 0.8
|
|
edge_id: d6768246-fb91-4568-b69c-00eafef8d6ea
|
|
---
|
|
|
|
## Branch\nfeature/fullcard-migration in the database repo.\n\n## Files Updated\n\n### db_engine.py\nAdded 9 nullable TextField columns to BattingCardRatings and PitchingCardRatings:\n- col_one_2d6, col_one_results, col_one_d20\n- col_two_2d6, col_two_results, col_two_d20\n- col_three_2d6, col_three_results, col_three_d20\n\n### routers_v2/battingcardratings.py + pitchingcardratings.py\nAdded 9 Optional[str] = None fields to Pydantic models. PUT handler uses x.dict() so it persists new fields automatically — no handler code changes needed.\n\n### card_creation.py\nget_batter_card_data() and get_pitcher_card_data() check if ratings_vl.col_one_2d6 is not None and ratings_vr.col_one_2d6 is not None — if so, return stored columns directly (skips full on-the-fly rebuild for backwards compat).\n\n## Migration SQL\nALTER TABLE battingcardratings ADD COLUMN col_one_2d6 TEXT (and 8 more) is INTENTIONALLY NOT RUN — documented but blocked until reviewed.
|