--- id: 57e38d6f-828e-496b-af23-da7f4806252c type: workflow title: "PR review: major-domo-database#40 — raise HTTPException fix (standings.py)" tags: [pr-reviewer, major-domo-database, fastapi, python, standings, gitea] importance: 0.6 confidence: 0.8 created: "2026-03-03T01:20:24.848534+00:00" updated: "2026-03-03T01:37:03.490572+00:00" relations: - target: 4321bee8-105e-4fc8-b645-964d1234c966 type: RELATED_TO direction: outgoing strength: 0.64 edge_id: 59df3f1c-9992-4790-b473-6360c944c34b - target: 4321bee8 type: RELATED_TO direction: outgoing strength: 0.63 edge_id: 0263dc33-4039-4b18-ae15-690ecdc5a88f - target: a64fd0a1-cf42-469a-9280-991ab85bbfb2 type: RELATED_TO direction: outgoing strength: 0.63 edge_id: b5ee6160-a4bb-4e13-a55c-822136640c32 - target: a5f56cb6-9a7b-4224-98f3-aefc4cfc0a2a type: FOLLOWS direction: incoming strength: 0.8 edge_id: d7fea2ee-b026-4b54-831e-df1cc16f0549 --- ## PR #40: fix: raise HTTPException in recalculate_standings on failure (#23) **Verdict**: REQUEST_CHANGES (review post blocked — Gitea rejects self-reviews) ### Key Findings 1. **Core fix is correct**: `recalculate_standings` in `standings.py` was missing a `raise` before `HTTPException(status_code=500, ...)`, causing the endpoint to silently return HTTP 200 on failure. Adding `raise` correctly propagates the error. 2. **Undocumented `stratgame.py` changes**: PR body says only `standings.py` was changed, but diff includes full changes to `stratgame.py` (order_by return-value fix + reformatting). This is misleading. 3. **Merge conflict risk with PR #39**: PR #39 ("fix: assign order_by() return value in GET /api/v3/games") modifies the exact same `stratgame.py` changes. Merging both creates conflict risk. 4. **Gitea self-review block**: Both PRs (#39, #40) were created by `cal`, so `create_pull_request_review` fails with "reject your own pull is not allowed". Automated review posting is not possible for self-authored PRs in this repo. ### Files Reviewed - `app/routers_v3/standings.py` - `app/routers_v3/stratgame.py`