Commit Graph

2 Commits

Author SHA1 Message Date
Cal Corum
2f0f35f951 CLAUDE: Fix hit location requirements in ManualOutcomeEntry
Updated outcomesNeedingHitLocation array to only include outcomes that
trigger defensive plays or advancement decisions.

Before (11 outcomes):
- GROUNDOUT, FLYOUT, LINEOUT 
- SINGLE_1, SINGLE_2, SINGLE_UNCAPPED  (too broad)
- DOUBLE_2, DOUBLE_3, DOUBLE_UNCAPPED  (too broad)
- TRIPLE  (too broad)
- ERROR 

After (6 outcomes):
- GROUNDOUT (all groundouts)
- FLYOUT (all flyouts)
- LINEOUT (all lineouts)
- SINGLE_UNCAPPED (decision tree hits)
- DOUBLE_UNCAPPED (decision tree hits)
- ERROR (defensive plays)

Rationale: Standard hits (SINGLE_1, SINGLE_2, DOUBLE_2, etc.) have
fixed runner advancement and don't need hit location selection.

Session 1 Part 2 - Change #5 complete
Part of cleanup work from demo review

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 12:56:27 -06:00
Cal Corum
eab61ad966 CLAUDE: Phases 3.5, F1-F5 Complete - Statistics & Frontend Components
This commit captures work from multiple sessions building the statistics
system and frontend component library.

Backend - Phase 3.5: Statistics System
- Box score statistics with materialized views
- Play stat calculator for real-time updates
- Stat view refresher service
- Alembic migration for materialized views
- Test coverage: 41 new tests (all passing)

Frontend - Phase F1: Foundation
- Composables: useGameState, useGameActions, useWebSocket
- Type definitions and interfaces
- Store setup with Pinia

Frontend - Phase F2: Game Display
- ScoreBoard, GameBoard, CurrentSituation, PlayByPlay components
- Demo page at /demo

Frontend - Phase F3: Decision Inputs
- DefensiveSetup, OffensiveApproach, StolenBaseInputs components
- DecisionPanel orchestration
- Demo page at /demo-decisions
- Test coverage: 213 tests passing

Frontend - Phase F4: Dice & Manual Outcome
- DiceRoller component
- ManualOutcomeEntry with validation
- PlayResult display
- GameplayPanel orchestration
- Demo page at /demo-gameplay
- Test coverage: 119 tests passing

Frontend - Phase F5: Substitutions
- PinchHitterSelector, DefensiveReplacementSelector, PitchingChangeSelector
- SubstitutionPanel with tab navigation
- Demo page at /demo-substitutions
- Test coverage: 114 tests passing

Documentation:
- PHASE_3_5_HANDOFF.md - Statistics system handoff
- PHASE_F2_COMPLETE.md - Game display completion
- Frontend phase planning docs
- NEXT_SESSION.md updated for Phase F6

Configuration:
- Package updates (Nuxt 4 fixes)
- Tailwind config enhancements
- Game store updates

Test Status:
- Backend: 731/731 passing (100%)
- Frontend: 446/446 passing (100%)
- Total: 1,177 tests passing

Next Phase: F6 - Integration (wire all components into game page)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 09:52:30 -06:00