docs: playbook for running a Swiss + top-8 knockout championship
Covers hosting, announcing and monetising the format end to end, verified
against the live code and database rather than inferred from column names.
The headline finding is that the built-in multi-phase path — the preset
literally labelled سويسري ← إقصاء — cannot work: startSwissPhase reads a
swiss_event_id column that does not exist, startPhase merges that error into a
success envelope so it fails silently, getQualifiedPlayers can only read the
external Swiss service, and tournamentFinish completes the tournament before
the advance buttons can be pressed. tournament_phases, tournament_brackets and
bracket_matches all hold zero rows in production; it has never run.
The document gives the path that does work — the Swiss natively, a manual cut,
and the knockout as a second tournament whose phase 1 is the bracket, which is
reachable because getPhasePlayers reads registrations directly for phase 1 —
and is blunt about entry fees and prizes being displayed but never moved.
Co-Authored-By:
Claude Opus 5 (1M context) <noreply@anthropic.com>
Showing
TOURNAMENT_PLAYBOOK.md
0 → 100644
This diff is collapsed.
Please register or sign in to comment