diff --git a/graph/workflows/pr-review-paper-dynasty-database36-remove-dead-roster-csv-fi-a08cfd.md b/graph/workflows/pr-review-paper-dynasty-database36-remove-dead-roster-csv-fi-a08cfd.md new file mode 100644 index 00000000000..17ba0a8512a --- /dev/null +++ b/graph/workflows/pr-review-paper-dynasty-database36-remove-dead-roster-csv-fi-a08cfd.md @@ -0,0 +1,28 @@ +--- +id: a08cfd86-d519-41cd-b93e-0877e11c7cc3 +type: workflow +title: "PR review: paper-dynasty-database#36 — remove dead roster CSV fields" +tags: [pr-reviewer, paper-dynasty, paper-dynasty-database, fastapi, python, fix, csv, card-model, dead-code] +importance: 0.4 +confidence: 0.8 +created: "2026-03-03T19:33:19.604675+00:00" +updated: "2026-03-03T19:33:19.604675+00:00" +--- + +## PR Review: paper-dynasty-database#36 + +**Verdict**: APPROVED (posted as COMMENT — Gitea self-review restriction) +**Branch**: `ai/paper-dynasty-database#35` (issue-worker agent) +**File reviewed**: `app/routers_v2/cards.py` + +### Fix +Removed non-existent `roster1`, `roster2`, `roster3` columns from CSV output in `v1_cards_get_one`. These fields caused `AttributeError` at runtime on every `GET /api/v2/cards/{card_id}?csv=true` request. + +### Verification +`Card` model in `db_engine.py` (line 472) confirmed — only fields are `player`, `team`, `pack`, `value`. No roster fields exist. + +### Notes +- Bulk ruff reformatting (single→double quotes) is cosmetic, non-functional. +- Pre-existing issue: `this_card.player` in CSV row vs `line.player.p_name` in bulk endpoint — inconsistency, out of scope. +- Pre-existing issue: `v1_cards_patch` still accepts and assigns `roster1_id/2/3` but Peewee silently ignores non-field attributes on save. Author tracking separately. +- Gitea blocks self-approval — submitted as COMMENT instead of APPROVED.