Fixed incorrect batter advancement for DO3 (double-3) outcomes. The batter was incorrectly reaching 3B instead of 2B. DO3 means: - DO = Double (batter reaches 2B) - 3 = Runners advance 3 bases Changes: - play_resolver.py: Fixed DOUBLE_3 outcome handling (line 416) - Changed batter_result from 3 to 2 - Updated description to clarify "runners advance 3 bases" not "batter to 3rd" - play_resolver.py: Fixed X-Check DO3 handling (line 1043) - Changed batter_reaches from 3 to 2 - Added comment explaining DO3 notation Now on a DO3 + NO error: ✅ Batter reaches 2B (correct) ✅ R1 advances 3 bases → HOME (correct) ✅ R2 would advance 3 bases → HOME (correct) ✅ R3 would advance 3 bases → HOME (correct) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| .claude | ||
| app | ||
| scripts | ||
| terminal_client | ||
| tests | ||
| .dockerignore | ||
| .env.example | ||
| .python-version | ||
| CLAUDE.md | ||
| clean_test_data.py | ||
| docker-compose.yml | ||
| Dockerfile | ||
| mypy.ini | ||
| pyproject.toml | ||
| pyrightconfig.json | ||
| pytest.ini | ||
| README.md | ||
| requirements-dev.txt | ||
| requirements.txt | ||
| test_db_playground.py | ||
| test_pd_api_live.py | ||
| test_pd_api_mock.py | ||
| test_redis_cache.py | ||
| uv.lock | ||
Paper Dynasty Backend
FastAPI-based real-time baseball game engine with WebSocket support.
Quick Start
# Install UV
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install dependencies
uv sync
# Run server
uv run python -m app.main
Documentation
See CLAUDE.md for full documentation.