fix: creating a tournament without a start time failed against production
el3ab_tournaments.starts_at is NOT NULL in the live schema. tournament-admin.php
allowed it to be null, so every create call that did not supply one was rejected
by Postgres. The local test schema had the column nullable, so the suite passed
and the defect only appeared when the rehearsal ran against production.
starts_at now defaults to now() — which also gives auto_start something to act on —
and tests/schema.sql marks the column NOT NULL so the next one is caught locally.
Adds tests/rehearsal.mjs, the script that found it: four throwaway accounts driven
through matchmaking, a 33-move game to checkmate and a full Swiss round against the
live deployment, with teardown in a finally block. Run it after any deploy.
Co-Authored-By:
Claude Opus 5 (1M context) <noreply@anthropic.com>
Showing
tests/rehearsal.mjs
0 → 100644
This diff is collapsed.
Please register or sign in to comment