Commit graph

  • 585dc9e112
    Review fixes: pre-compute hot-loop invariants, import normalizeName Claude 2026-03-31 18:31:32 +00:00
  • a92cd6da97
    Add PDC World Darts Championship simulator (128-player bracket) Claude 2026-03-31 18:21:04 +00:00
  • efbd28b446
    Exclude completed playoff matches from upcoming events query (#247) Chris Parsons 2026-03-31 10:08:25 -07:00
  • 761cda9cfc
    Fix leaked mockReturnValueOnce in scored-match test Claude 2026-03-31 17:04:22 +00:00
  • 700f1e8739
    Exclude scored bracket matches from upcoming events calendar Claude 2026-03-31 08:15:36 +00:00
  • 28a670666c
    Fix test:run failing in CI due to missing Playwright browser (#246) Chris Parsons 2026-03-30 14:42:23 -07:00
  • 2e72934b6a
    Fix test:run failing in CI due to missing Playwright browser Claude 2026-03-30 21:31:25 +00:00
  • 2b13e153d6 Initial storybook components. Chris Parsons 2026-03-29 22:09:45 -07:00
  • c604dc9bc5
    Fix tiebreaker incorrectly separating tied teams with pending participants, fixes #244 (#245) Chris Parsons 2026-03-29 16:59:13 -07:00
  • 2f29c12b05 Fix tiebreaker incorrectly separating tied teams with pending participants, fixes #244 Chris Parsons 2026-03-29 16:52:47 -07:00
  • 131945ddeb
    Install Storybook with React Router Vite plugin fix, closes #229 (#243) Chris Parsons 2026-03-29 15:20:48 -07:00
  • 691342c159 Install Storybook with React Router Vite plugin fix, closes #229 Chris Parsons 2026-03-29 13:45:49 -07:00
  • 338979e0a8
    Add FIFA World Cup 2026 support with group stage display and Monte Carlo simulator (#242) Chris Parsons 2026-03-29 10:27:47 -07:00
  • f85f81673f Fix OOM in CI: make WorldCupSimulator simulation count configurable for tests Chris Parsons 2026-03-29 10:23:23 -07:00
  • 54d1c92b09 Increase Node heap to 4GB for unit tests in CI to prevent OOM Chris Parsons 2026-03-29 10:13:25 -07:00
  • 0a21a74321 Fix TypeScript errors: update GroupStandingData type to use findMatchesByGroupIds Chris Parsons 2026-03-29 10:00:16 -07:00
  • ae3366f571 Add FIFA World Cup 2026 support with group stage display and Monte Carlo simulator, fixes #127 Chris Parsons 2026-03-29 09:48:07 -07:00
  • 611e1ccf0a
    Show tied ranks with T prefix across standings and Discord (#239) Chris Parsons 2026-03-27 20:45:15 -07:00
  • 6427e79855 Fix discord test to expect escaped period in rank display Chris Parsons 2026-03-27 20:42:03 -07:00
  • b1c7ae3ddf Show tied ranks with T prefix across standings and Discord notifications, fixes #197 Chris Parsons 2026-03-27 20:38:16 -07:00
  • 8f55d0d135
    Prevent duplicate participants within a sports season, fixes #69 (#236) Chris Parsons 2026-03-27 01:09:04 -07:00
  • 5e631112c7 Prevent duplicate participants within a sports season, fixes #69 Chris Parsons 2026-03-27 01:05:24 -07:00
  • 3c4ed67946
    Add upcoming events pages and fix timezone filtering, fixes #213 (#235) Chris Parsons 2026-03-27 00:49:16 -07:00
  • 1ac9670b14 Add upcoming events pages and fix timezone filtering, fixes #213 Chris Parsons 2026-03-26 20:32:41 -07:00
  • 29ea93ad6d
    Add support page with Discord link and contact form, fixes #233 (#234) Chris Parsons 2026-03-26 17:17:49 -07:00
  • e6aef4f982 Add support page with Discord link and contact form, fixes #233 Chris Parsons 2026-03-26 17:01:00 -07:00
  • bde1e6e5f0
    Add WNBA playoff simulator with SRS-based Elo ratings, fixes #125 (#231) Chris Parsons 2026-03-26 00:34:51 -07:00
  • 6a84267286 Fix missing afterEach import in wnba standings test Chris Parsons 2026-03-26 00:30:03 -07:00
  • 8bbe7c653a Add WNBA playoff simulator with SRS-based Elo ratings, fixes #125 Chris Parsons 2026-03-26 00:27:17 -07:00
  • eca1508b3f
    Improve admin dashboard stats and fix scoring event bugs (#230) Chris Parsons 2026-03-25 20:46:54 -07:00
  • 095f351cb1 Fix scoring-event-dashboard tests after select/sql changes Chris Parsons 2026-03-25 20:41:46 -07:00
  • fac61fdcdf Improve admin dashboard stats and fix scoring event date bugs, fixes #92 Chris Parsons 2026-03-25 20:35:49 -07:00
  • 2b48ef285d
    Rework MLB simulator: RDif-based matchup probs, 2026 data, fixes #227 (#228) Chris Parsons 2026-03-25 19:05:12 -07:00
  • f14018ed38 Rework MLB simulator: RDif-based matchup probs, 2026 data, fixes #227 Chris Parsons 2026-03-25 19:00:37 -07:00
  • 2e2d8db777
    Add MLB playoff simulator with AL/NL division standings, fixes #121 (#225) Chris Parsons 2026-03-25 08:47:02 -07:00
  • f77b5fca74 Fix flaky tennis simulator test: increase trials and lower threshold Chris Parsons 2026-03-25 08:42:01 -07:00
  • 243516263d Add MLB playoff simulator with AL/NL division standings, fixes #121 Chris Parsons 2026-03-24 23:45:30 -07:00
  • 286a9afbbe Fix lint hook: output additionalContext JSON so Claude sees errors in-context Chris Parsons 2026-03-24 21:50:36 -07:00
  • e62e9554c9
    Add golf qualifying points simulator (Plackett-Luce Monte Carlo) (#223) Chris Parsons 2026-03-24 21:46:02 -07:00
  • a18868e02b Fix oxlint errors: no-non-null-assertion and eqeqeq Chris Parsons 2026-03-24 21:42:02 -07:00
  • 5fdf81b344 Add golf QP simulator with Plackett-Luce model, fixes #120 Chris Parsons 2026-03-24 21:39:05 -07:00
  • b81089879c
    Fix while_on autodraft stalling between chain bursts, fixes #190 (#222) Chris Parsons 2026-03-24 19:09:38 -07:00
  • 2790e166b3 Fix while_on autodraft stalling between chain bursts, fixes #190 Chris Parsons 2026-03-24 18:52:10 -07:00
  • 789408e428
    Fix chess clock increment not applied to all pick types (#67 regression) (#220) Chris Parsons 2026-03-24 17:00:32 -07:00
  • e1828be0e9 Fix chess clock increment not applied to all pick types (#67 regression) Chris Parsons 2026-03-24 16:43:20 -07:00
  • d7ba20d9ea
    Add tennis Grand Slam simulator with surface Elo ratings, fixes #116 (#216) Chris Parsons 2026-03-23 23:59:35 -07:00
  • f1bf038f8d Add tennis Grand Slam simulator with surface Elo ratings, fixes #116 Chris Parsons 2026-03-23 23:42:33 -07:00
  • f4031d2a38
    Fix standings upsert no-op: use EXCLUDED pseudo-table (#215) Chris Parsons 2026-03-23 21:22:53 -07:00
  • 93c06d372a Add unit tests for regular-season-standings model Chris Parsons 2026-03-23 21:18:06 -07:00
  • 5b2407bec1 Fix upsert standings no-op: use EXCLUDED pseudo-table for conflict update Chris Parsons 2026-03-23 21:16:35 -07:00
  • 784f6859e4 Fix oxlint eqeqeq error: use !== null && !== undefined Chris Parsons 2026-03-23 08:49:22 -07:00
  • 1bdd5c3372 Add snooker bracket simulator and Elo ratings admin UI, fixes #119 Chris Parsons 2026-03-23 08:24:28 -07:00
  • e4285876ad Fix oxlint errors. Chris Parsons 2026-03-22 20:41:44 -07:00
  • 0139d134cf Add oxlint to required deploy checks. Chris Parsons 2026-03-22 20:33:43 -07:00
  • b672c50d78
    Add sortable Sport and Participant columns to team breakdown table (#208) Chris Parsons 2026-03-22 20:30:17 -07:00
  • 8e5d481ce8 Add sortable Sport and Participant columns to team breakdown table Chris Parsons 2026-03-22 20:25:34 -07:00
  • 194f9087a3
    Add sortable columns to draft picks table on manager page (#207) Chris Parsons 2026-03-22 19:20:01 -07:00
  • 5e9fc0e2f4
    Fix pick sort to use pure pick number (matches tests) Claude 2026-03-23 02:16:16 +00:00
  • 4e8f76996c
    Fix code review issues in TeamScoreBreakdown sortable table Claude 2026-03-23 02:08:10 +00:00
  • 906fb6865a
    Add sortable columns to draft picks table on manager page Claude 2026-03-23 01:49:53 +00:00
  • 88e18412ec
    Don't show Game #1 label for single-game matchups in calendar (#206) Chris Parsons 2026-03-22 16:39:26 -07:00
  • aca6f3d327
    Cache isSeries per entry to avoid re-deriving it in the finalization loop Claude 2026-03-22 23:36:22 +00:00
  • 01b012e09c
    Split series games into individual calendar entries, each showing Game #x Claude 2026-03-22 21:25:29 +00:00
  • 7001ec1227
    Show game number when multiple games from same series are in date window Claude 2026-03-22 21:18:32 +00:00
  • a4c5e7b4d5
    Fix Game #1 label for multi-game series when only Game #1 is in date window Claude 2026-03-22 21:03:09 +00:00
  • 6d6508d503
    Show game number for Game #2+ in series, hide Game #1 for single-game matchups Claude 2026-03-22 20:41:19 +00:00
  • 6f51ad8c78
    Don't show Game #1 label for single-game matchups in calendar Claude 2026-03-22 20:38:23 +00:00
  • 8c5389909d
    Redesign standings page with sortable table, 7-day change, and chart repositioned (#205) Chris Parsons 2026-03-22 11:05:13 -07:00
  • 8eb25c88f3
    Fix movement indicator arrow count assertion to exclude sort header arrows Claude 2026-03-22 17:56:17 +00:00
  • 26b51cc28b
    Update StandingsTable tests to match redesigned component Claude 2026-03-22 17:48:30 +00:00
  • 5e572d6351
    Code review fixes: module-level comparators, correct type on SortableHead, handle negative point change, remove redundant spread Claude 2026-03-22 17:17:54 +00:00
  • 0b74a6a2d2
    Redesign standings page with sortable table, 7-day change, and chart repositioned Claude 2026-03-22 17:14:33 +00:00
  • c1be92b2af
    Add AFL season + finals simulator (closes #126) (#204) Chris Parsons 2026-03-22 01:57:39 -07:00
  • c83774223b Add AFL season + finals simulator (closes #126) Chris Parsons 2026-03-22 01:53:43 -07:00
  • 46a2e9c199
    Tune NHL simulator: Vegas futures blending + parity factor calibration (closes #168) (#202) Chris Parsons 2026-03-22 00:14:18 -07:00
  • 39dfec7fd2 Tune NHL simulator: Vegas futures blending + parity factor calibration (closes #168) Chris Parsons 2026-03-22 00:10:47 -07:00
  • 7093b22726
    Simulate NBA remaining regular season games from standings (#201) Chris Parsons 2026-03-21 23:37:20 -07:00
  • 58f7f2b6d5 Simulate NBA remaining regular season games from standings Chris Parsons 2026-03-21 23:33:04 -07:00
  • 618bc57ec1
    Replace console.* with structured logger, fix no-inferrable-types (closes #98) (#199) Chris Parsons 2026-03-21 13:41:39 -07:00
  • 029cc96ffc Replace console.* with structured logger, fix no-inferrable-types (closes #98) Chris Parsons 2026-03-21 13:38:31 -07:00
  • 4bffa40606
    Fix oxlint warnings: no-shadow, consistent-function-scoping, no-non-null-assertion, and others (#196) Chris Parsons 2026-03-21 10:59:51 -07:00
  • 79f0a22b7e Add npm run typecheck as Stop hook in Claude settings Chris Parsons 2026-03-21 10:57:24 -07:00
  • c26573f435 Fix TypeScript errors from no-non-null-assertion fixes Chris Parsons 2026-03-21 10:56:40 -07:00
  • 13a36e6c41 Fix prefer-add-event-listener, no-unassigned-import, require-module-specifiers Chris Parsons 2026-03-21 10:51:21 -07:00
  • 552fe28b99 Fix no-non-null-assertion lint violations and promote to error Chris Parsons 2026-03-21 10:48:48 -07:00
  • 4de6cb23a0 Fix no-shadow and consistent-function-scoping lint violations Chris Parsons 2026-03-21 10:14:54 -07:00
  • 180aad1520
    Fix postgres connection pool leak in development (#195) Chris Parsons 2026-03-21 09:57:53 -07:00
  • ece3e63902 Fix postgres connection pool leak in development Chris Parsons 2026-03-21 09:50:37 -07:00
  • e2b178221a
    Add oxlint linting setup with zero errors (#194) Chris Parsons 2026-03-21 09:44:05 -07:00
  • 5cb0a626ad Promote no-explicit-any to error Chris Parsons 2026-03-21 09:32:58 -07:00
  • 2b9ffc0b62 Fix no-explicit-any warnings and upgrade tsconfig to ES2023 Chris Parsons 2026-03-21 09:30:59 -07:00
  • bf0ddaa8aa Add oxlint and fix all lint errors Chris Parsons 2026-03-21 08:40:51 -07:00
  • bcca8b76fa
    Add regular season standings for NBA/NHL (fixes #89) (#192) Chris Parsons 2026-03-21 00:12:01 -07:00
  • feb0018f2a Add regular season standings for NBA/NHL (fixes #89) Chris Parsons 2026-03-21 00:07:28 -07:00
  • 2949ca733a
    Add standard draft clock mode (#67) (#189) Chris Parsons 2026-03-20 21:36:39 -07:00
  • 1f8ab02c23 Add standard draft clock mode (#67) Chris Parsons 2026-03-20 21:33:25 -07:00
  • ebe06b2522
    Improve drag handle UX in queue items with activator node (#188) Chris Parsons 2026-03-20 16:19:44 -07:00
  • c499fb9595
    Fix O(n²) lookup, memoize components and callbacks in QueueSection Claude 2026-03-20 22:54:28 +00:00
  • 21119abf12
    Code review cleanup: use GripVertical icon and add drag activation constraint Claude 2026-03-20 22:50:11 +00:00
  • a10abd8b48
    Fix queue drag to only activate on handle and number, not entire row Claude 2026-03-20 22:44:10 +00:00