|
All checks were successful
🚀 Deploy / 🧪 Test (pull_request) Successful in 3m12s
🚀 Deploy / ʦ🔍 Typecheck & Lint (pull_request) Successful in 1m24s
🚀 Deploy / 🐳 Build (pull_request) Has been skipped
🚀 Deploy / 🚀 Deploy (pull_request) Has been skipped
🚀 Deploy / 🧪 Test (push) Successful in 3m27s
🚀 Deploy / ʦ🔍 Typecheck & Lint (push) Successful in 1m25s
🚀 Deploy / 🐳 Build (push) Successful in 1m14s
🚀 Deploy / 🚀 Deploy (push) Successful in 14s
Make a "major" (golf/tennis/CS2) scored once on its canonical tournament and fan out to every linked sports_season window and league. Fan-out & completion (app/services/sync-tournament-results.ts): - syncTournamentResults now marks each synced window's event complete (gated by markComplete), recalculates affected leagues, and counts recalc failures so a stale league can't hide behind a "completed" badge - syncMajorFromPrimaryEvent promotes a primary window's derived results to canonical tournament_results (deleting rows for dropped placements) and fans out to siblings; fanOutMajorIfPrimary guards on the primary - placement removals now propagate (stale rows reset to filler) Primary-event model (scoring_events.is_primary, migration 0122): - getPrimaryEventForTournament / isReadOnlySibling / ensurePrimaryEvent / setPrimaryEvent; event creation auto-seeds a primary for bracket majors; "Make primary" button on the tournament page - per-window event/bracket/cs2 pages are read-only for non-primary linked events (not-participating stays editable) Tennis Grand Slam bracket (tennis_128 template + TEMPLATE_ROUND_CONFIG): - bracket-scored qualifying major via the existing bracket pipeline - simulator conditions in-progress EV on the real bracket (honoring completed matches, walkover for withdrawals), QP derived from config, round structure read from the template; CS2 + tennis share resolveStructureSource Backfill (scripts/backfill-major-linking.ts): one-time idempotent reconcile of existing majors (link orphans, designate primary, promote canonical, sync). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __tests__ | ||
| $leagueId.audit-log.tsx | ||
| $leagueId.draft-board.$seasonId.tsx | ||
| $leagueId.draft-queue.$seasonId.tsx | ||
| $leagueId.draft.$seasonId.tsx | ||
| $leagueId.server.ts | ||
| $leagueId.settings.server.ts | ||
| $leagueId.settings.tsx | ||
| $leagueId.sports-seasons.$sportsSeasonId.events.$eventId.server.ts | ||
| $leagueId.sports-seasons.$sportsSeasonId.events.$eventId.tsx | ||
| $leagueId.sports-seasons.$sportsSeasonId.server.ts | ||
| $leagueId.sports-seasons.$sportsSeasonId.tsx | ||
| $leagueId.standings.$seasonId.teams.$teamId.tsx | ||
| $leagueId.standings.$seasonId.tsx | ||
| $leagueId.tsx | ||
| $leagueId.upcoming-events.tsx | ||
| creating.tsx | ||
| new.tsx | ||