strat-gameplay-webapp/backend/app/core
Cal Corum dfc7ac99af CLAUDE: Fix runner advancement logic for doubles and hit location
Two related bug fixes for gameplay accuracy:

**Backend - play_resolver.py**:
- Fixed DOUBLE2 advancement: Runners now advance exactly 2 bases
  * 1st → 3rd, 2nd → home, 3rd → home
  * Was incorrectly advancing all runners to home

- Fixed DOUBLE3 advancement: Runners now advance exactly 3 bases
  * All runners score (1st+3=4, 2nd+3=5→4, 3rd+3=6→4)
  * Updated docstrings for clarity

**Frontend - ManualOutcomeEntry.vue**:
- Fixed hit location requirement logic
  * Now requires hit location when runners on base (any outs)
  * Was incorrectly restricting to only when outs < 2
  * Hit location determines runner advancement regardless of outs

These fixes ensure accurate Strat-O-Matic gameplay simulation.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 22:21:51 -06:00
..
__init__.py CLAUDE: Complete Week 4 - State Management & Persistence 2025-10-22 12:01:03 -05:00
ai_opponent.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
cache.py CLAUDE: Implement Phase 3A - X-Check data models and enums 2025-11-01 15:32:09 -05:00
CLAUDE.md CLAUDE: Fix critical game engine issues and refactor CLAUDE.md docs 2025-11-19 16:05:26 -06:00
dice.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
game_engine.py CLAUDE: Add decision_required WebSocket event and quick-create testing endpoint 2025-11-21 15:40:27 -06:00
play_resolver.py CLAUDE: Fix runner advancement logic for doubles and hit location 2025-11-26 22:21:51 -06:00
roll_types.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
runner_advancement.py CLAUDE: Fix state recovery batter advancement and flyball descriptions 2025-11-21 15:38:29 -06:00
state_manager.py CLAUDE: Add decision_required WebSocket event and quick-create testing endpoint 2025-11-21 15:40:27 -06:00
substitution_manager.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
substitution_rules.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
validators.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
x_check_advancement_tables.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00