e947ab1c47
feat(01-08): implement table management, auto-seating, blueprints, and hand-for-hand
...
- TableService with CRUD, AssignSeat, AutoAssignSeat (fills evenly), MoveSeat, SwapSeats
- Dealer button tracking with SetDealerButton and AdvanceDealerButton (skips empty seats)
- Hand-for-hand mode with per-table completion tracking and clock integration
- BlueprintService with CRUD, SaveBlueprintFromTournament, CreateTablesFromBlueprint
- Migration 006 adds hand_for_hand_hand_number and hand_completed columns
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 04:10:28 +01:00
7dbb4cab1a
feat(01-05): add built-in templates, seed data, wizard tests, and template tests
...
- Built-in blind structures: Turbo (15min), Standard (20min), Deep Stack (30min), WSOP-style (60min, BB ante)
- Built-in payout structure: Standard with 4 entry-count brackets (8-20, 21-30, 31-40, 41+)
- Built-in buy-in configs: Basic 200 DKK through WSOP 1000 DKK with rake splits
- 4 built-in tournament templates composing above building blocks
- 005_builtin_templates.sql seed migration (INSERT OR IGNORE, safe to re-run)
- Wizard tests: standard, various player counts, denomination alignment, edge cases
- Template tests: create/expand/duplicate/save-as/delete-builtin/list
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 03:59:34 +01:00
af13732b2b
feat(01-01): initialize Go module, dependency tree, and project scaffold
...
- Go module at github.com/felt-app/felt with go-libsql pinned to commit hash
- Full directory structure per research recommendations (cmd/leaf, internal/*, frontend/)
- Makefile with build, run, run-dev, test, frontend, all, clean targets
- LibSQL database with WAL mode, foreign keys, and embedded migration runner
- SvelteKit SPA stub served via go:embed
- Package stubs for all internal packages (server, nats, store, auth, clock, etc.)
- go build and go vet pass cleanly
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 03:34:44 +01:00
17dbfc6dc0
feat(01-02): design initial database schema migration
...
- 23 tables covering venue settings, chip sets, blind structures, payout structures,
buy-in configs, tournament templates, tournaments, players, tables, seating,
transactions, bubble prizes, audit trail, and operators
- All financial columns use INTEGER (int64 cents, never REAL/FLOAT)
- Audit trail append-only enforced by SQLite triggers (reject UPDATE except undone_by, reject DELETE)
- All tournament-specific tables reference tournament_id for multi-tournament support
- Comprehensive indexes on foreign keys and common query patterns
- Players table with UUID PK for cross-venue portability
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 03:31:01 +01:00