- Fix crash when pool teams are missing Elo ratings by including all participants with FALLBACK_ELO, ensuring Champions Stage always gets exactly 8 teams - Add AdvancedTeam type tracking losses-at-advancement; seed Champions Stage by stage performance (fewer losses = higher seed) instead of world rank alone - Promote decisive Stage 2 matches (either team at ≥2W or ≥2L) to Bo3, matching the real Challengers Stage format - Tie-split QP for QF losers (slots 5–8) and SF losers (slots 3–4) instead of assigning arbitrary individual placements - Change stage-complete threshold from === 8 to >= 8 for robustness - Validate even team count in simulateSwiss to prevent silent infinite loops - Short-circuit Monte Carlo loop when all events are complete, returning deterministic 0/1 probabilities - Parallelize stage results DB fetches with Promise.all - Export calcStage3ExitQP and simulateOneMajor; add test coverage for both, plus new simulateSwiss and simulateChampionsStage edge cases Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| afl-simulator.test.ts | ||
| cs-major-simulator.test.ts | ||
| darts-simulator.test.ts | ||
| golf-simulator.test.ts | ||
| mlb-simulator.test.ts | ||
| ncaam-simulator.test.ts | ||
| ncaaw-simulator.test.ts | ||
| nhl-simulator.test.ts | ||
| snooker-simulator.test.ts | ||
| tennis-simulator.test.ts | ||
| ucl-simulator.test.ts | ||
| wnba-simulator.test.ts | ||
| world-cup-simulator.test.ts | ||