mantimon-tcg/backend/app
Cal Corum cd3cc892f4 Implement GameService.execute_action enhancements (GS-003)
Add forced action handling, turn boundary detection, and DB persistence:
- Check for pending forced actions before allowing regular actions
- Only specified player can act during forced action (except resign)
- Only specified action type allowed during forced action
- Detect turn boundaries (turn number OR current player change)
- Persist to Postgres at turn boundaries for durability
- Include pending_forced_action in GameActionResult for client

New exceptions: ForcedActionRequiredError

Tests: 11 new tests covering forced actions, turn boundaries, and
pending action reporting. Total 47 tests for GameService.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:15:34 -06:00
..
api Fix medium priority issues from code review 2026-01-28 14:32:08 -06:00
core Implement GameService.execute_action enhancements (GS-003) 2026-01-29 15:15:34 -06:00
data Phase 3: Collections + Decks - Services and DI architecture 2026-01-28 11:27:14 -06:00
db Fix security and validation issues from code review 2026-01-28 14:16:07 -06:00
repositories Fix medium priority issues from code review 2026-01-28 14:32:08 -06:00
schemas Add Phase 4 WebSocket infrastructure (WS-001 through GS-001) 2026-01-28 22:21:20 -06:00
services Implement GameService.execute_action enhancements (GS-003) 2026-01-29 15:15:34 -06:00
socketio Refactor to dependency injection pattern - no monkey patching 2026-01-28 22:54:57 -06:00
__init__.py Add backend foundation with uv, Black, and pre-commit hooks 2026-01-24 00:12:33 -06:00
config.py Fix security and validation issues from code review 2026-01-28 14:16:07 -06:00
main.py Add Phase 4 WebSocket infrastructure (WS-001 through GS-001) 2026-01-28 22:21:20 -06:00