- Extract VOLATILITY_DECAY_FACTOR named constant (was magic 0.7) with docstring
- Replace two complementary allEvents.filter() calls with a single for-loop pass
- Move blendedProbs construction inside the in-season else branch (was built
unconditionally even in pre-season where it was never read)
- Flatten nested totalCurrentPoints/pts conditions to a single ternary
- Emit a console.warn when participants are missing from standings data, so
degraded blending is visible rather than silent
- Add AutoRacingSimulator test suite covering pre-season path, in-season
standings-dominant blending, zero-points fallback, missing-standings warning,
schedule_event exclusion, and column normalization
https://claude.ai/code/session_01FyG28zxsjSrgr8aKYuy6xY