strat-gameplay-webapp/backend/tests/unit/core
Cal Corum 529c5b1b99 CLAUDE: Implement uncapped hit interactive decision tree (Issue #6)
Add full multi-step decision workflow for SINGLE_UNCAPPED and DOUBLE_UNCAPPED
outcomes, replacing the previous stub that fell through to basic single/double
advancement. The decision tree follows the same interactive pattern as X-Check
resolution with 5 phases: lead runner advance, defensive throw, trail runner
advance, throw target selection, and safe/out speed check.

- game_models.py: PendingUncappedHit model, 5 new decision phases
- game_engine.py: initiate_uncapped_hit(), 5 submit methods, 3 result builders
- handlers.py: 5 new WebSocket event handlers
- ai_opponent.py: 5 AI decision stubs (conservative defaults)
- play_resolver.py: Updated TODO comments for fallback paths
- 80 new backend tests (2481 total): workflow (49), handlers (23), truth tables (8)
- Fix GameplayPanel.spec.ts: add missing Pinia setup, fix component references

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 09:33:58 -06:00
..
truth_tables CLAUDE: Implement uncapped hit interactive decision tree (Issue #6) 2026-02-12 09:33:58 -06:00
__init__.py CLAUDE: Complete Week 4 - State Management & Persistence 2025-10-22 12:01:03 -05:00
test_dice.py CLAUDE: Fix all unit test failures and implement 100% test requirement 2025-11-04 19:35:21 -06:00
test_exceptions.py CLAUDE: Add exception tests and enhance stop-services script 2025-11-28 12:10:59 -06:00
test_flyball_advancement.py CLAUDE: Fix state recovery batter advancement and flyball descriptions 2025-11-21 15:38:29 -06:00
test_game_eviction.py CLAUDE: Add game state eviction and resource management 2025-11-28 12:07:55 -06:00
test_play_resolver_invariants.py CLAUDE: Fix on_base_code encoding bug + add truth table & invariant tests 2026-02-08 23:33:10 -06:00
test_play_resolver.py CLAUDE: Add game state eviction and resource management 2025-11-28 12:07:55 -06:00
test_recovery_double_play_fix.py CLAUDE: Fix double play bug after state recovery 2026-02-07 13:55:10 -06:00
test_roll_types.py CLAUDE: Complete Week 6 - granular PlayOutcome integration and metadata support 2025-10-29 20:29:06 -05:00
test_runner_advancement.py CLAUDE: Replace black and flake8 with ruff for formatting and linting 2025-11-20 15:33:21 -06:00
test_state_manager.py CLAUDE: Add game state eviction and resource management 2025-11-28 12:07:55 -06:00
test_substitution_rules.py CLAUDE: Phase 3F - Substitution System Testing Complete 2025-11-04 22:34:17 -06:00
test_uncapped_hit_workflow.py CLAUDE: Implement uncapped hit interactive decision tree (Issue #6) 2026-02-12 09:33:58 -06:00
test_validators.py CLAUDE: Fix squeeze_bunt validation - remove bases loaded restriction 2025-11-14 15:09:03 -06:00
test_x_check_advancement_tables.py CLAUDE: Fix all unit test failures and implement 100% test requirement 2025-11-04 19:35:21 -06:00