mantimon-tcg/backend
Cal Corum 5e99566560 Add rules validator, win conditions checker, and coverage gap tests
- Implement rules_validator.py with config-driven action validation for all 11 action types
- Implement win_conditions.py with point/prize-based, knockout, deck-out, turn limit, and timeout checks
- Add ForcedAction model to GameState for blocking actions (e.g., select new active after KO)
- Add ActiveConfig with max_active setting for future double-battle support
- Add TrainerConfig.stadium_same_name_replace option
- Add DeckConfig.starting_hand_size option
- Rename from_energy_deck to from_energy_zone for consistency
- Fix unreachable code bug in GameState.get_opponent_id()
- Add 16 coverage gap tests for edge cases (card registry corruption, forced actions, etc.)
- 584 tests passing at 97% coverage

Completes HIGH-005, HIGH-006, TEST-009, TEST-010 from PROJECT_PLAN.json
2026-01-25 12:57:06 -06:00
..
app Add rules validator, win conditions checker, and coverage gap tests 2026-01-25 12:57:06 -06:00
references Add interactive console testing script for manual testing 2026-01-25 00:52:35 -06:00
tests Add rules validator, win conditions checker, and coverage gap tests 2026-01-25 12:57:06 -06:00
.gitignore Add backend foundation with uv, Black, and pre-commit hooks 2026-01-24 00:12:33 -06:00
.python-version Add backend foundation with uv, Black, and pre-commit hooks 2026-01-24 00:12:33 -06:00
PROJECT_PLAN.json Add rules validator, win conditions checker, and coverage gap tests 2026-01-25 12:57:06 -06:00
pyproject.toml Add backend foundation with uv, Black, and pre-commit hooks 2026-01-24 00:12:33 -06:00
uv.lock Add backend foundation with uv, Black, and pre-commit hooks 2026-01-24 00:12:33 -06:00