strat-gameplay-webapp/backend/app
Cal Corum 8ecce0f5ad CLAUDE: Implement forced outcome feature for terminal client testing
Add ability to force specific play outcomes instead of random dice rolls,
enabling targeted testing of specific game scenarios.

Changes:
- play_resolver.resolve_play(): Add forced_outcome parameter, bypass dice
  rolls when provided, create dummy AbRoll with placeholder values
- game_engine.resolve_play(): Accept and pass through forced_outcome param
- terminal_client/commands.py: Pass forced_outcome to game engine

Testing:
- Verified TRIPLE, HOMERUN, and STRIKEOUT outcomes work correctly
- Dummy AbRoll properly constructed with all required fields
- Game state updates correctly with forced outcomes

Example usage in REPL:
  resolve_with triple
  resolve_with homerun

Fixes terminal client testing workflow to allow controlled scenarios.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 15:39:35 -05:00
..
api CLAUDE: Complete Phase 1 backend infrastructure setup 2025-10-21 19:46:16 -05:00
config CLAUDE: Implement Week 7 Task 3 - Result chart abstraction and PD auto mode 2025-10-30 12:42:41 -05:00
core CLAUDE: Implement forced outcome feature for terminal client testing 2025-10-30 15:39:35 -05:00
database CLAUDE: Implement player models and optimize database queries 2025-10-28 14:08:56 -05:00
models CLAUDE: Implement Week 7 Task 3 - Result chart abstraction and PD auto mode 2025-10-30 12:42:41 -05:00
utils CLAUDE: Complete Phase 1 backend infrastructure setup 2025-10-21 19:46:16 -05:00
websocket CLAUDE: Complete Phase 1 backend infrastructure setup 2025-10-21 19:46:16 -05:00
__init__.py CLAUDE: Complete Phase 1 backend infrastructure setup 2025-10-21 19:46:16 -05:00
config.py CLAUDE: Complete Phase 1 backend infrastructure setup 2025-10-21 19:46:16 -05:00
main.py CLAUDE: Complete Phase 1 backend infrastructure setup 2025-10-21 19:46:16 -05:00