brackt/drizzle/meta
Chris Parsons 2e2d8db777
Add MLB playoff simulator with AL/NL division standings, fixes #121 (#225)
* Add MLB playoff simulator with AL/NL division standings, fixes #121

- New `mlb-simulator.ts`: 50k Monte Carlo sim drawing division winners
  (weighted by p_div) and 3 WC teams per league, then simulating
  WC best-of-3 → DS best-of-5 → LCS best-of-7 → World Series.
  Elo parity factor 350; blends Vegas odds 30/70 when sourceOdds available.
- New `standings-sync/mlb.ts`: adapter for free statsapi.mlb.com API,
  mapping AL/NL conferences, division ranks, streaks, home/away/L10 splits.
- New `mlb-divisions` display mode in RegularSeasonStandings: shows 1 division
  winner per division section + Wild Card section with 3-spot playoff line,
  headings read "AL/NL League" instead of "Conference".
- Refactored buildNhlSections/buildMlbSections into shared buildDivisionSections
  (divisionSpots + wcSpots params); conferenceLabel now flows through group
  objects rather than being derived from displayMode in the render.
- DB migration 0062 adds `mlb_bracket` to simulator_type enum.
- 37 new tests across simulator, adapter, and component.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Fix flaky tennis simulator test: increase trials and lower threshold

500 trials with a ~3–5% expected win rate had enough variance to
occasionally land below the 0.03 threshold (~2% failure rate).
Bumping to 2000 trials reduces the std dev by 2x; lowering the
threshold to 0.02 keeps the assertion meaningful (still well above
random 0.78%) while eliminating the flakiness.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-25 08:47:02 -07:00
..
0000_snapshot.json Initial commit from create-react-router 2025-10-10 23:04:50 -07:00
0001_snapshot.json feat: add fantasy league schema and new league routes 2025-10-11 00:07:39 -07:00
0002_snapshot.json feat: add commissioner model and league management features 2025-10-11 00:29:04 -07:00
0003_snapshot.json feat: add user model, routes, and Clerk webhook integration 2025-10-11 00:53:39 -07:00
0004_snapshot.json feat: add user model, routes, and Clerk webhook integration 2025-10-11 00:53:39 -07:00
0005_snapshot.json refactor: remove guest book feature and update league settings success flow 2025-10-11 01:03:31 -07:00
0006_snapshot.json feat: add current season tracking and active league listing by user 2025-10-11 21:10:01 -07:00
0007_snapshot.json feat: add sports and participant models with admin user functionality 2025-10-12 21:16:00 -07:00
0008_snapshot.json feat: add icon support for sports with file upload and active seasons display 2025-10-13 10:30:47 -07:00
0009_snapshot.json refactor: remove isRequired field from season sports and templates 2025-10-13 15:00:59 -07:00
0010_snapshot.json feat: add invite code system for league seasons with member access control 2025-10-14 12:20:36 -07:00
0011_snapshot.json feat: add username field to users and display in league views 2025-10-14 21:20:58 -07:00
0012_snapshot.json feat: add team settings route and logo URL field to teams table 2025-10-14 22:04:37 -07:00
0013_snapshot.json feat: add draft order management with UI for manual and random ordering 2025-10-15 08:58:35 -07:00
0014_snapshot.json feat: add bulk participant creation and expected value field 2025-10-15 21:21:33 -07:00
0015_snapshot.json feat: add draft rounds configuration to league settings 2025-10-15 21:50:02 -07:00
0016_snapshot.json feat: add draft date/time selection to league creation and settings 2025-10-15 22:02:21 -07:00
0017_snapshot.json feat: add draft pick, queue, and timer models with database schema updates 2025-10-16 00:32:48 -07:00
0018_snapshot.json feat: add public draft board and simplify draft speed settings 2025-10-20 15:03:11 -07:00
0019_snapshot.json feat: add autodraft status and team connection indicators to draft grid 2025-10-21 23:22:17 -07:00
0020_snapshot.json feat: Add comprehensive scoring system database schema 2025-10-28 23:40:11 -07:00
0021_snapshot.json feat: Implement bracket expansion plan to support various tournament structures 2025-11-03 09:36:16 -08:00
0022_snapshot.json feat: Implement bracket expansion plan to support various tournament structures 2025-11-03 09:36:16 -08:00
0023_snapshot.json Refactor code structure for improved readability and maintainability 2025-11-03 13:16:37 -08:00
0024_snapshot.json feat: implement Expected Value System with ICM probability calculator 2025-11-17 22:19:46 -08:00
0035_snapshot.json User/chris/ev f1 framework (#93) 2026-03-09 15:34:31 -07:00
0038_snapshot.json feat: progressive floor scoring for playoff brackets (#100) 2026-03-10 10:27:58 -07:00
0040_snapshot.json Add playoff match game scheduling and odds management (#135) 2026-03-11 14:17:43 -07:00
0041_snapshot.json Add event_starts_at timestamp to scoring events for sub-day ordering (#146) 2026-03-15 10:22:42 -07:00
0043_snapshot.json Add per-event configurable region config for NCAA-style brackets (#149) (#149) 2026-03-15 21:52:47 -07:00
0048_snapshot.json Add Discord webhook notifications for standings updates (#157) 2026-03-17 11:16:36 -07:00
0050_snapshot.json Add NHL playoff simulator and fix simulator dropdown (#166) 2026-03-18 01:23:53 -07:00
0052_snapshot.json Add isDraftable toggle to sport seasons (#165) (#178) 2026-03-18 22:40:19 -07:00
0053_snapshot.json Add standard draft clock mode (#67) (#189) 2026-03-20 21:36:39 -07:00
0054_snapshot.json Add regular season standings for NBA/NHL (fixes #89) (#192) 2026-03-21 00:12:01 -07:00
0055_snapshot.json Add regular season standings for NBA/NHL (fixes #89) (#192) 2026-03-21 00:12:01 -07:00
0056_snapshot.json Add AFL season + finals simulator (closes #126) (#204) 2026-03-22 01:57:39 -07:00
0057_snapshot.json Add snooker bracket simulator and Elo ratings admin UI, fixes #119 2026-03-23 08:24:28 -07:00
0058_snapshot.json Add snooker bracket simulator and Elo ratings admin UI, fixes #119 2026-03-23 08:24:28 -07:00
0059_snapshot.json Add tennis Grand Slam simulator with surface Elo ratings, fixes #116 (#216) 2026-03-23 23:59:35 -07:00
0060_snapshot.json Add tennis Grand Slam simulator with surface Elo ratings, fixes #116 (#216) 2026-03-23 23:59:35 -07:00
0061_snapshot.json Add golf qualifying points simulator (Plackett-Luce Monte Carlo) (#223) 2026-03-24 21:46:02 -07:00
_journal.json Add MLB playoff simulator with AL/NL division standings, fixes #121 (#225) 2026-03-25 08:47:02 -07:00