david
492a18aa1b
fix: remove duplicate win/loss increment in partnership stats calculation
2026-03-31 01:08:53 -07:00
david
5be7022382
docs: update TODO with Next.js 16 breaking change fixes and root cause analysis
2026-03-31 01:01:16 -07:00
david
1729dacdec
test: add Next.js 16 params Promise handling regression tests
2026-03-31 00:52:04 -07:00
david
b8d90897a4
fix: await params in Next.js 16 routes and pages for TypeScript compatibility
2026-03-31 00:50:56 -07:00
david
42217e182e
test: add regression tests for ID validation with Prisma v7
2026-03-31 00:24:28 -07:00
david
a1fb0e25a7
fix: validate ID parsing in API routes and player pages for Prisma v7
2026-03-31 00:21:02 -07:00
david
0f66815ed4
fix: validate tournament ID parsing for Prisma v7 strict type checking
2026-03-31 00:16:22 -07:00
david
3465082816
fix(prisma): use PostgreSQL adapter for Prisma v7 client connection
2026-03-31 00:10:47 -07:00
david
e1034adfcf
fix(prisma): add datasourceUrl to PrismaClient constructor for v7 compatibility
2026-03-31 00:04:16 -07:00
david
77de648200
test: update mocks for Prisma v7 stricter type checking
2026-03-31 00:00:50 -07:00
david
9649c62c28
fix(prisma): update schema for Prisma v7 datasource URL changes
2026-03-31 00:00:29 -07:00
david
15b579b919
chore(deps): upgrade React 18→19, Next.js 14→16, Prisma 6→7
2026-03-31 00:00:07 -07:00
david
b0aaffbecf
chore: fix linting errors in tests and api routes
2026-03-30 22:58:33 -07:00
david
6f83080fca
feat: update POST /api/matches to handle eventId and tournament match stats
2026-03-30 22:58:25 -07:00
david
9c8f1bc57d
feat: update MatchEditor to use tournament-specific scoring rules
2026-03-30 22:58:17 -07:00
david
ab41ede160
feat: add variant scoring controls to EditTournamentForm
2026-03-30 22:58:09 -07:00
david
d6a53f8912
feat: add targetScore and allowTies fields to tournament API routes
2026-03-30 22:58:01 -07:00
david
5d1755f082
chore: add variant scoring fields, fix tie handling, and fix test files for normalizedName
2026-03-30 22:48:31 -07:00
david
fb04a6c3f1
fix: delete elo snapshots before deleting duplicate players during merge
2026-03-30 22:20:18 -07:00
david
a7d94e9fee
fix: add tournament update API endpoint and consolidate delete into main tournaments API
2026-03-30 22:17:44 -07:00
david
4d9cbc9259
fix: add site_admin support to tournament permissions and fix session cache issues
2026-03-30 22:09:50 -07:00
david
fa7a422ce3
feat: add player merge functionality with automatic Elo recalculation
2026-03-30 22:04:31 -07:00
david
6001eda9aa
feat: add admin panel links to navigation header
2026-03-30 22:01:18 -07:00
david
db782ff504
feat: add player name editing functionality in admin UI and fix site_admin access to admin dashboard
2026-03-30 21:58:30 -07:00
david
9201b2c437
feat: add admin player management page
2026-03-30 21:51:26 -07:00
david
07804b5f8f
feat: add site_admin role, casual match support, and tournament deletion
2026-03-30 21:49:43 -07:00
david
d821dd7ce2
fix: include participants in getManageableTournaments query
2026-03-30 21:34:16 -07:00
david
c27aec72fc
chore: update dependencies and remove old SQLite migrations
2026-03-30 21:32:34 -07:00
david
0cf346f16a
feat: add user profile API endpoint
2026-03-30 21:32:00 -07:00
david
710e4f811e
test: add comprehensive tests for player deduplication, permissions, and user management
2026-03-30 21:31:55 -07:00
david
93af8dccef
feat: add scripts for player deduplication and user management
2026-03-30 21:31:49 -07:00
david
073681b30c
chore: add PostgreSQL migrations for database setup and player normalization
2026-03-30 21:31:43 -07:00
david
ef01061a05
chore: switch database provider from SQLite to PostgreSQL
2026-03-30 21:31:36 -07:00
david
e061e1e9f7
feat: add tournaments participated and recent matches to player profile
2026-03-30 21:31:06 -07:00
david
78b4c84eb8
feat: implement player deduplication in match upload
2026-03-30 21:30:58 -07:00
david
6feada4fd8
refactor: use permission system instead of direct session checks in admin pages
2026-03-30 21:30:50 -07:00
david
5748e416be
fix: remove duplicate tournament variable definitions in admin pages
2026-03-30 21:30:41 -07:00
david
e053cd7743
chore: add unique constraint to PartnershipStat table
2026-03-30 21:28:27 -07:00
david
3a78f354ad
feat: add recalculateAllElo function for idempotent ELO recalculation
2026-03-30 21:28:09 -07:00
david
04a42c903b
fix: ensure Prisma client generation and migrations in Docker build
...
- Add explicit step in both builder and runner stages
- Set DATABASE_URL environment variable for Prisma operations during build
- Run database migrations during build to support static page generation
- Copy package-lock.json to runner stage for production dependency installation
- Fix the original TypeScript error: Module '@prisma/client' has no exported member 'Event'
2026-03-29 21:48:44 -07:00
david
4cd744f10c
fix: resolve Prisma Event type conflict with global DOM Event
...
- Renamed Event import to EventModel to avoid conflict with global DOM Event interface
- Updated type assertion to use EventModel[]
2026-03-29 21:26:16 -07:00
david
c9415d490e
fix: improve error handling and type safety
...
- Replaced 'any' types with proper TypeScript types
- Improved error handling with instanceof checks
- Removed unused imports (calculateExpectedTeamScore)
- Updated error messages to be more descriptive
- Removed deprecated eslint.config.mjs file
2026-03-29 21:20:40 -07:00
david
576dfda619
fix: resolve remaining TypeScript and linting errors
...
- Fixed unused variables in unit tests (elo.test.ts, permissions.test.ts)
- Fixed unused variables in E2E tests (account-acceptance.test.ts, elo-ratings.test.ts, epic1-auth-registration.test.ts, global.setup.ts)
- Fixed 'any' type usage in EditTournamentForm.test.tsx and auth-simple.test.ts
- Fixed unescaped quotes and apostrophes in React components
- Fixed TypeScript type errors in Navigation.tsx, test-api/page.tsx, and matches/upload/page.tsx
- Fixed missing useEffect dependency in tournaments/[id]/entry/page.tsx
- Updated eslint config to exclude test-api directory
- All tests now pass linting and build successfully
2026-03-29 21:20:20 -07:00
david
bc99dee421
fix: add type annotation to recentTournaments and fix ESLint configuration
2026-03-29 21:02:56 -07:00
david
4195710a70
chore: add .dockerignore to exclude node_modules and build artifacts
2026-03-29 20:52:31 -07:00
david
ac29b38175
fix: update database switching to modify schema file directly
2026-03-29 20:47:31 -07:00
david
384954b27b
docs: add Docker deployment instructions to README
2026-03-29 20:39:11 -07:00
david
bcb967017f
feat: add Docker support with PostgreSQL and health check endpoint
2026-03-29 20:38:56 -07:00
david
5bd1f2359c
chore: remove test artifacts and update .gitignore
2026-03-29 20:17:01 -07:00
david
803f936e2f
feat: add PostgreSQL database adapter support
2026-03-29 20:08:53 -07:00