Commit Graph

4 Commits

Author SHA1 Message Date
Cal Corum
91ad2cf0a5 Update PROJECT_PLAN.json with completed task statuses
Completed tasks (10/32):
- CRIT-001: Core module structure
- CRIT-002: Enums module (with PokemonStage/PokemonVariant separation)
- CRIT-003: RulesConfig module (10 sub-configs)
- CRIT-004: RandomProvider module (SeededRandom + SecureRandom)
- TEST-001: Enum tests (28 tests)
- TEST-002: Config tests (31 tests)
- TEST-003: RNG tests (42 tests)
- HIGH-001: Card models (CardDefinition, CardInstance, Attack, Ability)
- HIGH-002: Action models (11 action types as discriminated union)
- TEST-004: Card tests (54 tests)
- TEST-005: Action tests (48 tests)

Week 1 complete, Week 2 in progress. 205 tests passing.
2026-01-24 22:37:38 -06:00
Cal Corum
32541af682 Add card/action models with stage/variant separation
- Add CardDefinition and CardInstance models for card templates and in-game state
- Add Attack, Ability, and WeaknessResistance models for Pokemon card components
- Add 11 action types as discriminated union (PlayPokemon, Evolve, Attack, etc.)
- Split PokemonStage (BASIC, STAGE_1, STAGE_2) from PokemonVariant (NORMAL, EX, GX, V, VMAX, VSTAR)
- Stage determines evolution mechanics, variant determines knockout points
- Update PrizeConfig to use variant for knockout point calculation
- VSTAR and VMAX both worth 3 points; EX, GX, V worth 2 points; NORMAL worth 1 point

Tests: 204 passing, all linting clean
2026-01-24 22:35:31 -06:00
Cal Corum
3e82280efb Add game engine foundation: enums, config, and RNG modules
- Create core module structure with models and effects subdirectories
- Add enums module with CardType, EnergyType, TurnPhase, StatusCondition, etc.
- Add RulesConfig with Mantimon TCG defaults (40-card deck, 4 points to win)
- Add RandomProvider protocol with SeededRandom (testing) and SecureRandom (production)
- Include comprehensive tests for all modules (97 tests passing)

Defaults reflect GAME_RULES.md: Pokemon Pocket-style energy deck,
first turn can attack but not attach energy, 30-turn limit enabled.
2026-01-24 22:14:45 -06:00
Cal Corum
234e9a95c1 Add backend foundation with uv, Black, and pre-commit hooks
- Initialize FastAPI backend with uv package manager
- Configure Black, Ruff, pytest, mypy in pyproject.toml
- Add health check endpoint and initial test
- Create AGENTS.md with coding guidelines for AI agents
- Add pre-commit hook to enforce linting and tests
2026-01-24 00:12:33 -06:00