Which reports actually fed the diagnosis. A source shown as missing was not silently assumed.
| Source | Status | Evidence supplied | Path | Bytes |
|---|---|---|---|---|
| prediction review | loaded | official outcomes and scoring errors | /app/output/reports/prediction_review_20260922.json | 401690 |
| forensic deep audit | loaded | probability, provenance, starter and decision contracts | /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260922.json | 255950 |
| continuous learning | loaded | pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons | /app/output/learning/continuous_learning_daily_20260922.json | 2542724 |
| detailed report | loaded | full game and simulation rendering | /app/output/reports/detailed_20260922.html | 379842 |
| ultra detailed player audit | loaded | player-level prediction trace | /app/output/reports/20260922_ultra_detailed_player_audit.html | 34855359 |
| structural audit | loaded | all invariant findings | /app/output/reports/audit_report_20260922.html | 2002677 |
| integrity revision audit | missing | post-Luna remediation proof for immutable revision artifacts | /app/output/reports/audit_report_20260922_integrity_revision.html | n/a |
Deterministic findings across data integrity, model validation, calibration, score distribution, pipeline stages, simulation, and coverage. Critical is reserved for broken evidence or an unexplained contract violation; high marks material model/process risk. Each row pairs the action to take (Do this) with the wrong conclusion to avoid (Don't conclude).
| Severity | Domain | Finding and evidence | Affected | Action & guardrail |
|---|---|---|---|---|
| CRITICAL | probability_lineage | Published probability differs materially without a recorded transformation 1 game(s) have an unexplained ≥2pp calibrated-to-published delta | WAS@DET | Do thisBlock any promotion until the missing probability transformation is recorded and reconciled. Don't concludeDo not assume the probability governor was bypassed until you have traced the pick-side math. |
| HIGH | calibration | Published confidence buckets were poorly aligned on this slate weighted absolute calibration error 0.1881 across 15 games | ARI@COL, CHW@KC, CIN@ATL, CLE@BOS, HOU@SEA, LAA@OAK, MIA@CHC, MIL@PHI, MIN@SF, NYM@TEX, SD@LAD, STL@PIT, TB@NYY, TB@NYY, WAS@DET | Do thisWatch the same confidence buckets over the full rolling window before changing any calibration weight. Don't concludeA single slate has far too few games to establish a stable calibration curve. |
| HIGH | model_validation | Validated run models explain very little holdout variance home/away/total R² = 0.0172/0.0294/0.0090 | ARI@COL, CHW@KC, CIN@ATL, CLE@BOS, HOU@SEA, LAA@OAK, MIA@CHC, MIL@PHI, MIN@SF, NYM@TEX, SD@LAD, STL@PIT, TB@NYY, TB@NYY, WAS@DET | Do thisTreat exact run scores as low-confidence estimates, and look for stronger features or a better target before tuning the score tails. Don't concludeA small positive R² only means the model beats guessing the average; it does not make the exact scores reliable. |
| MEDIUM | calibration | Most high-raw picks lost before/after shrinkage 0/3 games with raw pick probability ≥0.65 won | CIN@ATL, HOU@SEA, MIA@CHC | Do thisTrack how often high-raw-probability picks lose across multiple slates, and keep the raw to calibrated to published lineage. Don't concludeThis one slate is not enough to justify a new per-bucket shrinkage rule. |
| INFO | coverage | Every settled game received structural QA 16/15 games structurally audited | ARI@COL, CHW@KC, CIN@ATL, CLE@BOS, HOU@SEA, LAA@OAK, MIA@CHC, MIL@PHI, MIN@SF, NYM@TEX, SD@LAD, STL@PIT, TB@NYY, TB@NYY, WAS@DET | Do thisKeep the per-game audit receipt in every report. Don't concludeFull audit coverage does not cancel the findings raised inside the audited games. |
| INFO | simulation | Simulation produced no winner-direction intervention on this slate flip candidates 0; published flips 0 | ARI@COL, CHW@KC, CIN@ATL, CLE@BOS, HOU@SEA, LAA@OAK, MIA@CHC, MIL@PHI, MIN@SF, NYM@TEX, SD@LAD, STL@PIT, TB@NYY, TB@NYY, WAS@DET | Do thisMeasure the simulation's contribution across rolling slates, separating score realization from winner flipping. Don't concludeZero winner flips is not a defect and does not mean the simulation did no score-reconciliation work. |
A finding that has repeated at or beyond the escalation streak is no longer single-slate noise. It carries its target registered lever and an action-oriented guardrail.
| Finding | Persistence | Target lever(s) | Direction | Guardrail |
|---|---|---|---|---|
| simulation_inert_on_slate | 11 consecutive · 11 in window | simulation.allow_score | confirm the simulation module is running, not silently no-oping | simulation_inert_on_slate has persisted 11 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move. |
| single_slate_calibration_instability | 4 consecutive · 8 in window | confidence.empirical_max_weight, confidence.base_cap, confidence.moderate_cap | increase empirical shrinkage | single_slate_calibration_instability has persisted 4 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and propose a bounded shadow experiment against a target lever. |
| weak_run_model_signal | 11 consecutive · 11 in window | training.xgb.n_estimators, training.xgb.max_depth, training.xgb.learning_rate | investigate features/target via isolated training backtest (manual) | weak_run_model_signal has persisted 11 consecutive slates; this is no longer single-slate noise. Treat it as an actionable pattern and raise the code/diagnostic action named; do not force a parameter move. |
| Finding | Consecutive slates | Incidence | Present now | Fix type |
|---|---|---|---|---|
| high_raw_probability_cluster | 1 | 3/11 | yes | param |
| pipeline_winner_instability | 0 | 5/11 | no | code/diagnostic |
| score_margin_compression | 0 | 1/11 | no | param |
| simulation_inert_on_slate | 11 | 11/11 | yes | code/diagnostic |
| single_slate_calibration_instability | 4 | 8/11 | yes | param |
| weak_run_model_signal | 11 | 11/11 | yes | code/diagnostic |
| Metric | Direction | Series (old → new) |
|---|---|---|
| winner_accuracy | regressing | [0.5333, 0.6, 0.7, 0.4, 0.6667, 0.4444, 0.6667, 0.7333, 0.6, 0.3333, 0.4] |
| weighted_calibration_error | improving | [0.1711, 0.0827, 0.2812, 0.2795, 0.1661, 0.1016, 0.1247, 0.3458, 0.3184, 0.2028, 0.1881] |
| margin_bias | regressing | [-2.667, -1.8, -0.4, -1.667, -1.133, -2.111, -2.0, -0.667, -1.533, -2.667, -1.867] |
| team_run_error_on_losses | regressing | [6.143, 5.0, 6.333, 5.556, 6.4, 3.6, 5.2, 6.5, 6.5, 3.0, 6.222] |
Every stored stage is scored against the same official finals. A later recovery remains visible; it does not erase an unstable intermediate flip.
| Stage | Winner hits | Accuracy | Team-run MAE | Total-run MAE | Margin MAE |
|---|---|---|---|---|---|
| historical_ml | 7/15 | 46.7% | 2.907 | 4.061 | 3.428 |
| variance_applied | 6/15 | 40% | 2.967 | 4.2 | 3.533 |
| enhanced_prediction | 7/15 | 46.7% | 3.2 | 4.133 | 4 |
| embedded_savant_run_environment | 6/15 | 40% | 3.167 | 4.2 | 4.067 |
| fundamental_edge_target_review | 6/15 | 40% | 3.2 | 4.267 | 4.133 |
| capped_target | 6/15 | 40% | 3.2 | 4.267 | 4.133 |
| simulation_result | 6/15 | 40% | 3.2 | 4.267 | 4.133 |
| published_final | 6/15 | 40% | 3.2 | 4.267 | 4.133 |
| Transition | Δ accuracy | Δ hits | Δ team-run MAE | Δ margin MAE | Games whose winner/tie changed |
|---|---|---|---|---|---|
| historical_ml → variance_applied | -0.0667 | -1 | 0.0601 | 0.1056 | LAA@OAK: OAK → TIE; NYM@TEX: TEX → TIE |
| variance_applied → enhanced_prediction | 0.0667 | 1 | 0.2333 | 0.4667 | CHW@KC: KC → CHW; CLE@BOS: BOS → CLE; LAA@OAK: TIE → LAA; MIL@PHI: PHI → MIL; NYM@TEX: TIE → TEX; TOR@BAL: TOR → BAL |
| enhanced_prediction → embedded_savant_run_environment | -0.0667 | -1 | -0.0333 | 0.0667 | CLE@BOS: CLE → TIE |
| embedded_savant_run_environment → fundamental_edge_target_review | 0 | 0 | 0.0333 | 0.0666 | CLE@BOS: TIE → BOS |
| fundamental_edge_target_review → capped_target | 0 | 0 | 0 | 0 | |
| capped_target → simulation_result | 0 | 0 | 0 | 0 | |
| simulation_result → published_final | 0 | 0 | 0 | 0 |
All columns are pick-side probabilities, so away favorites are not accidentally compared using home-side semantics.
| Game | Outcome | Raw model | Calibrated | Governor | Score coherence | Published | Explanation |
|---|---|---|---|---|---|---|---|
| ARI@COL | hit | 0.6408 | 0.6224 | 0.6224 | 0.5982 | 0.56 | score coherence followed by matchup-recency guardrail |
| CHW@KC | hit | 0.5 | 0.5073 | 0.5073 | 0.5073 | 0.5053 | published probability matches the calibrated/governed value |
| CIN@ATL | miss | 0.6937 | 0.699 | 0.699 | 0.699 | 0.6 | score coherence followed by matchup-recency guardrail |
| CLE@BOS | miss | 0.5 | 0.5073 | 0.5073 | 0.5073 | 0.5053 | published probability matches the calibrated/governed value |
| HOU@SEA | miss | 0.6546 | 0.6409 | 0.6409 | 0.6409 | 0.6 | score coherence followed by matchup-recency guardrail |
| LAA@OAK | miss | 0.5132 | 0.5602 | 0.5602 | 0.5602 | 0.53 | score coherence followed by matchup-recency guardrail |
| MIA@CHC | miss | 0.6927 | 0.6546 | 0.6546 | 0.6501 | 0.53 | score coherence followed by matchup-recency guardrail |
| MIL@PHI | miss | 0.537 | 0.6768 | 0.6768 | 0.6768 | 0.6 | score coherence followed by matchup-recency guardrail |
| MIN@SF | hit | 0.5367 | 0.5232 | 0.5232 | 0.5232 | 0.5154 | score coherence followed by matchup-recency guardrail |
| NYM@TEX | miss | 0.5722 | 0.6009 | 0.6009 | 0.6009 | 0.6009 | published probability matches the calibrated/governed value |
| SD@LAD | hit | 0.6139 | 0.5641 | 0.5641 | 0.5641 | 0.53 | score coherence followed by matchup-recency guardrail |
| STL@PIT | hit | 0.5625 | 0.5535 | 0.5535 | 0.5535 | 0.5387 | score coherence followed by matchup-recency guardrail |
| TB@NYY | hit | 0.5842 | 0.5483 | 0.5483 | 0.5483 | 0.5349 | score coherence followed by matchup-recency guardrail |
| TB@NYY | miss | 0.5501 | 0.5286 | 0.5286 | 0.5286 | 0.5206 | score coherence followed by matchup-recency guardrail |
| WAS@DET | miss | 0.6101 | 0.5929 | 0.5929 | 0.5835 | 0.5709 | no recorded transformation explains the publication delta |
One blown start is noise. The same failure repeating across the slate is a model problem. These are the repeats.
| Sides analyzed | Broke on pitching | Broke on offense | Both | Variance | Mean starter ERA error | Mean lineup runs vs proj |
|---|---|---|---|---|---|---|
| 30 | 3 | 11 | 3 | 13 | -0.32 | -0.97 |
The blend mixes the trained win classifier with the margin-derived probability. It is only worth its weight if its decision survives the downstream reconciliation to the projected score.
1 of 15 games: the blend picked one side and the published number picked the other. The published probability is reconciled to the integer score after the blend runs, so a blend that disagrees with the score is overwritten before publication. On those games the trained classifier changes nothing a reader sees, even where the artifact records winner_changed.
| Game | Trained p(home) | Blended p(home) | Blend favoured | Published p(home) | Published side | Artifact says winner changed | Outcome |
|---|---|---|---|---|---|---|---|
| CHW@KC | 0.616 | 0.554 | home | 0.495 | away | yes | hit |
Blend side survived on 14 of 15 games; the blend flagged a winner change on 2.
A bias on one slate is noise. The same sign across slates, large relative to how much it moves between them, is a model defect. Only the ones that pass both tests are turned into a named parameter change; the rest are held deliberately.
starter ERA error (actual minus projected)
Mean 0.38 over 12 slates (sign shared by 0.50 of them, z = 0.68).
starters were hit harder than projected: the run model under-credits opposing offenses.
Hold: no change: this bias is not separable from slate-to-slate noise yet
6 of 12 slates share the sign, mean 0.38 +/- 0.57 standard error: not separable from noise
lineup runs actual minus projected
Mean -0.31 over 12 slates (sign shared by 0.67 of them, z = -1.79).
lineups scored below projection: the run environment is set too high.
Hold: no change: this bias is not separable from slate-to-slate noise yet
8 of 12 slates share the sign, mean -0.31 +/- 0.17 standard error: not separable from noise
| Slate | Games | Winner acc | Mean starter ERA error | Mean lineup runs vs proj | Sides broke on pitching | Sides broke on offense |
|---|---|---|---|---|---|---|
| 20260921 | 3 | 0.333 | -1.08 | -0.50 | ||
| 20260920 | 15 | 0.600 | -0.89 | -1.00 | 2 | 10 |
| 20260919 | 15 | 0.733 | 1.36 | -0.10 | 8 | 7 |
| 20260918 | 15 | 0.667 | 3.95 | 0.30 | 6 | 5 |
| 20260917 | 9 | 0.444 | 2.16 | -0.22 | 2 | 3 |
| 20260916 | 15 | 0.667 | 2.09 | -0.23 | 4 | 5 |
| 20260915 | 15 | 0.400 | -1.58 | -0.70 | 1 | 12 |
| 20260914 | 10 | 0.700 | -0.48 | -0.20 | 2 | 6 |
| 20260913 | 15 | 0.600 | -0.07 | 0.03 | 2 | 8 |
| 20260912 | 15 | 0.533 | 1.35 | 0.57 | 6 | 7 |
| 20260911 | 15 | 0.667 | 0.99 | 0.00 | 4 | 9 |
| 20260910 | 5 | 0.600 | -3.19 | -1.70 | 8 |
Narrow predicted margins next to wide actual margins is the signature the score-variance tail is too tight.
| Game | Pred margin | Actual margin | Pred − actual |
|---|---|---|---|
| ARI@COL | 1 | 5 | -4 |
| CHW@KC | 1 | 3 | -2 |
| CIN@ATL | 3 | 4 | -1 |
| CLE@BOS | 1 | 1 | 0 |
| HOU@SEA | 2 | 7 | -5 |
| LAA@OAK | 1 | 2 | -1 |
| MIA@CHC | 2 | 6 | -4 |
| MIL@PHI | 3 | 2 | 1 |
| MIN@SF | 2 | 1 | 1 |
| NYM@TEX | 2 | 3 | -1 |
| SD@LAD | 2 | 7 | -5 |
| STL@PIT | 1 | 2 | -1 |
| TB@NYY | 1 | 2 | -1 |
| TB@NYY | 1 | 5 | -4 |
| WAS@DET | 1 | 2 | -1 |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ARI | Michael Soroka | 2 ER / 15 outs | 1 ER / 21 outs | -1 |
| COL | Kyle Freeland | 5 ER / 14 outs | 5 ER / 9 outs | 0 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Kyle Freeland (COL) posted 15.00 ERA vs projected 9.64 (5 ER in 9 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
No settled pitching line for this club. The forecast named Michael Soroka (ARI) at a projected 3.6 ERA, but the per-player feed carries no pitching row for him in this game, so the actual-versus-projected comparison cannot be made on this side. That is a source-coverage gap in the settled box, not a forecasting failure.
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 3 hits and 1 HR, against a projected 4 runs / 9 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Kyle Freeland (COL) threw 9 outs, 5 ER = 15 ERA against a projected 9.64 ERA (5.36 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 5 runs on 11 hits and 1 HR, against a projected 4 runs / 8 hits (1 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| COL | Kyle Freeland (Starter) | 9 / 14 | 15 / 9.64 (+5.36) | 5 / 5 | 9 / 6 | 0 / 2 | 1 / 2 | 1.34 | 2 / 2 | 4.23 | venue home: 5.82 vs 6.96 ERA (ok) · opp run factor 1.03 (average) · 24 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Nolan Arenado (3B) | ARI | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 1 | 0 / 0 | 1 / 1 | 2.18 | 0.293 below average | good day |
| Hunter Goodman (C) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -1.4 | 0.32 average | no signal |
| Ketel Marte (DH) | ARI | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | -0.93 | 0.345 elite | bad day |
| Mickey Moniak (DH) | COL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.277 weak | good day |
| Gabriel Moreno (C) | ARI | 4 / 4 | 1 / 2 | 1 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.8 | 0.363 elite | bad day |
| Kyle Karros (3B) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.341 elite | bad day |
| TJ Rumfield (1B) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 0 | -0.8 | 0.336 above average | bad day |
| Jake McCarthy (CF) | COL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.78 | 0.325 above average | bad day |
| Tim Tawa (LF) | ARI | 2 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.64 | 0.306 average | no signal |
| Geraldo Perdomo (SS) | ARI | 5 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0.61 | 0.327 above average | projection too low |
| Connor Norby (2B) | COL | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | -0.47 | 0.306 average | — |
| Zac Veen (LF) | COL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.286 below average | — |
| Jordan Lawlar (CF) | ARI | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.31 | 0.314 average | — |
| Corbin Carroll (RF) | ARI | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.31 | 0.343 elite | — |
| Cole Carrigg (SS) | COL | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.31 | 0.311 average | — |
| Troy Johnston (RF) | COL | 2 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.323 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.052 | positive favors home; negative favors away |
| Recent form | -0.534 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.043 | positive favors home; negative favors away |
| Composite | -0.987 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.79-4.15 | n/a | Base ML historical model prediction |
| variance_applied | 6-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 0.56 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.79-4.15 | 6-4 | 0.358 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-4 | 6-5 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | 6-5 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-5 | 6-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-5 | 6-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-5 | 6-5 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| COL | Troy Johnston | batter / RF | worse | predicted_RBI 2.83 |
| ARI | Tim Tawa | batter / LF | better | predicted_RBI 2.568 |
| ARI | Geraldo Perdomo | batter / SS | worse | predicted_H 1.85 |
| COL | Zac Veen | batter / LF | deboosted | predicted_AB 1.5 |
| COL | Kyle Freeland | pitcher / Starter | worse | predicted_IP -1.467 |
| ARI | Gabriel Moreno | batter / C | worse | predicted_H -1.46 |
| ARI | Nolan Arenado | batter / 3B | worse | predicted_H -1.27 |
| COL | Hunter Goodman | batter / C | worse | predicted_H -1.17 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | ARI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | ARI |
| info | CURRENT_PITCHER_DUPLICATION | COL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | ARI model-prediction batting totals differ from final simulation box score (H: current=11, sim=7; 2B: current=2, sim=0; 3B: current=1, sim=0; HR: current=1, sim=3; RBI: current=5, sim=6; R: current=5, sim=6; SO: current=6, sim=8; SF: current=0, sim=1). | ARI |
| info | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Ketel Marte: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, SF current=0 box=1; Ildemaro Vargas: H current=2 box=1, 2B current=1 box=0, RBI current=1 box=0, SO current=0 box=1; Jordan Lawlar: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Corbin Carroll: H current=1 box=0, 3B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Tim Tawa: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=3, R current=0 box=1; Jose Fernandez: HR current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Gabriel Moreno: H current=2 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Nolan Arenado: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model-prediction batting totals differ from final simulation box score (AB: current=34, sim=32; H: current=9, sim=5; 2B: current=2, sim=0; 3B: current=0, sim=1; R: current=4, sim=5; BB: current=3, sim=4; SO: current=8, sim=6; HBP: current=0, sim=1). | COL |
| info | CURRENT_PLAYER_MATCH_BOX | COL current finalized hitter lines are model predictions and differ from the simulation box score: Jake McCarthy: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Cole Carrigg: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Kyle Karros: AB current=4 box=3, 3B current=0 box=1, SO current=1 box=0; Mickey Moniak: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Hunter Goodman: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Connor Norby: RBI current=0 box=1, R current=0 box=1, BB current=1 box=0, SO current=1 box=2; TJ Rumfield: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=0 box=1; Troy Johnston: H current=1 box=2, HR current=0 box=1, RBI current=0 box=3, R current=0 box=1 | COL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CHW | Anthony Kay | 3 ER / 15 outs | 4 ER / 12 outs | 1 |
| KC | Daniel Lynch IV | 1 ER / 17 outs | 9 ER / 12 outs | 8 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Daniel Lynch IV (KC) posted 20.25 ERA vs projected 1.59 (9 ER in 12 outs); he is materially worse pitching home (5.85 ERA there vs 4.22 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
No settled pitching line for this club. The forecast named Anthony Kay (CHW) at a projected 5.4 ERA, but the per-player feed carries no pitching row for him in this game, so the actual-versus-projected comparison cannot be made on this side. That is a source-coverage gap in the settled box, not a forecasting failure.
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 10 runs on 12 hits and 2 HR, against a projected 4 runs / 9 hits (6 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Daniel Lynch IV (KC) threw 12 outs, 9 ER = 20.25 ERA against a projected 1.59 ERA (18.66 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 6 runs on 6 hits and 2 HR, against a projected 5 runs / 4 hits (1 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| KC | Daniel Lynch IV (Starter) | 12 / 17 | 20.25 / 1.59 (+18.66) | 9 / 1 | 7 / 3 | 3 / 0 | 3 / 3 | 1.32 | 2 / 4 | 2.03 | venue home: 5.85 vs 4.22 ERA (worse here) · opp run factor 0.94 (average) · 54 prior appearances this season |
| KC | Alex Lange (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 20.25 (-20.25) | 0 / 3 | 0 / 4 | 0 / 0 | 0 / 1 | 0.5 | 2 / 0 | 0.82 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chase Meidroth (2B) | CHW | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 5 / 0 | 2 / 1 | 1 / 0 | 0 / 1 | 2.2 | 0.296 below average | good day |
| Vinnie Pasquantino (1B) | KC | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 5 / 1 | 3 / 1 | 0 / 0 | 0 / 0 | 2.18 | 0.333 above average | projection too low |
| Carter Jensen (C) | KC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -1.26 | 0.31 average | no signal |
| Jac Caglianone (RF) | KC | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0 / 0 | 1 / 1 | 0.78 | 0.357 elite | projection too low |
| Bobby Witt Jr. (SS) | KC | 4 / 4 | 3 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0.61 | 0.376 elite | projection too low |
| Nick Loftin (LF) | KC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0.6 | 0.293 below average | good day |
| Kyle Isbel (CF) | KC | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | -0.47 | 0.255 weak | — |
| Miguel Vargas (3B) | CHW | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | -0.31 | 0.381 elite | — |
| Michael Massey (2B) | KC | 5 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.307 average | — |
| Maikel Garcia (3B) | KC | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 3 / 0 | 0 / 0 | 0.21 | 0.31 average | — |
| Kyle Teel (C) | CHW | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 2 / 1 | -0.14 | 0.308 average | — |
| Braden Montgomery (RF) | CHW | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1 / 0 | 0.14 | 0.325 above average | — |
| Munetaka Murakami (1B) | CHW | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 2 / 1 | 1 / 1 | 1 / 1 | 0 | 0.34 elite | — |
| Colson Montgomery (SS) | CHW | 5 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | 0 | 0.303 average | — |
| Salvador Perez (DH) | KC | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.31 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.833 | positive favors home; negative favors away |
| Recent form | -0.642 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.025 | positive favors home; negative favors away |
| Composite | -0.744 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.09-4.92 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.505 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.09-4.92 | 4-5 | -0.174 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 5-4 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| CHW | Randal Grichuk | batter / LF | better | predicted_AB 2.5 |
| CHW | Munetaka Murakami | batter / 1B | worse | predicted_SO -1.558 |
| CHW | Tommy Pham | batter / DH | better | predicted_AB 1.5 |
| KC | Vinnie Pasquantino | batter / 1B | worse | predicted_H 1.5 |
| CHW | Colson Montgomery | batter / SS | better | predicted_SO -1.469 |
| KC | Bobby Witt Jr. | batter / SS | worse | predicted_H -1.29 |
| CHW | Brenton Doyle | batter / CF | worse | predicted_AB 1.08 |
| KC | Salvador Perez | batter / DH | worse | predicted_H 1.03 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CHW pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CHW |
| info | CURRENT_PITCHER_DUPLICATION | KC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | KC |
| info | CURRENT_FINALIZED_MATCH_BOX | CHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=35; H: current=7, sim=9; RBI: current=4, sim=5; BB: current=3, sim=4; SO: current=8, sim=5; SF: current=0, sim=1). | CHW |
| info | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Tommy Pham: AB current=3 box=4, 2B current=0 box=1, R current=0 box=1, BB current=0 box=1; Randal Grichuk: AB current=4 box=5, H current=1 box=2, RBI current=1 box=2, R current=0 box=1; Munetaka Murakami: H current=1 box=0, HR current=1 box=0, BB current=1 box=0, SO current=1 box=0; Chase Meidroth: H current=1 box=0, R current=1 box=0; Kyle Teel: AB current=3 box=4, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Braden Montgomery: H current=0 box=1; Brenton Doyle: AB current=3 box=4, H current=1 box=0; Miguel Vargas: H current=1 box=2, 2B current=1 box=0 | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (AB: current=35, sim=37; H: current=9, sim=10; 2B: current=2, sim=1; HR: current=1, sim=0; BB: current=3, sim=0; SO: current=6, sim=5). | KC |
| info | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Bobby Witt Jr.: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Carter Jensen: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Maikel Garcia: 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1; Jac Caglianone: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=1 box=0; Nick Loftin: H current=1 box=0, BB current=1 box=0, SO current=0 box=1; Vinnie Pasquantino: H current=1 box=2, SO current=0 box=1; Salvador Perez: H current=1 box=2, R current=0 box=1; Kyle Isbel: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1, SO current=1 box=0 | KC |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CIN | Brandon Williamson | 5 ER / 12 outs | 0 ER / 18 outs | -5 |
| ATL | JR Ritchie | 2 ER / 14 outs | 1 ER / 15 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Brandon Williamson (CIN) posted 0.00 ERA vs projected 11.25 (0 ER in 18 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Brandon Williamson (CIN) threw 18 outs, 0 ER = 0 ERA against a projected 11.25 ERA (-11.25 ERA error) only 10 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 9 outs.
The HOME lineup he faced produced 0 runs on 7 hits and 0 HR, against a projected 5 runs / 8 hits (-5 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
JR Ritchie (ATL) threw 15 outs, 1 ER = 1.8 ERA against a projected 3.86 ERA (-2.06 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 4 runs on 10 hits and 3 HR, against a projected 4 runs / 8 hits (0 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CIN | Brandon Williamson (Starter) | 18 / 12 | 0 / 11.25 (-11.25) | 0 / 5 | 3 / 6 | 0 / 2 | 0 / 1 | 4.14 | 2 / 1 | 3.97 | venue away: 3.31 vs 8.47 ERA (ok) · opp run factor 1.04 (strong) · 10 prior appearances this season |
| CIN | Brock Burke (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 27 (-27.00) | 0 / 3 | 1 / 3 | 0 / 1 | 1 / 1 | 0.49 | 1 / 2 | 1 | |
| CIN | Emilio Pagán (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.3 | 1 / 0 | 1.27 | |
| CIN | Tejay Antone (Middle Reliever) | 3 / 1 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 1 | 0.35 | 1 / 1 | 1.14 | |
| ATL | JR Ritchie (Starter) | 15 / 14 | 1.8 / 3.86 | 1 / 2 | 4 / 2 | 1 / 0 | 3 / 2 | 2.48 | 8 / 7 | 4.72 | venue home: 3.29 vs 7.01 ERA (ok) · opp run factor 0.98 (weak) · 15 prior appearances this season |
| ATL | Didier Fuentes (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.32 | 1 / 0 | 1.72 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Elly De La Cruz (SS) | CIN | 3 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 2 / 1 | 0 / 1 | 1.42 | 0.375 elite | projection too low |
| Matt Olson (1B) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.26 | 0.351 elite | bad day |
| Ronald Acuña Jr. (RF) | ATL | 1 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.11 | 0.368 elite | bad day |
| Eugenio Suárez (3B) | CIN | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.93 | 0.298 below average | good day |
| Michael Harris II (CF) | ATL | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.78 | 0.339 above average | projection too low |
| Sal Stewart (1B) | CIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.6 | 0.349 elite | bad day |
| Dane Myers (CF) | CIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 1 / 1 | 0.6 | 0.31 average | no signal |
| Héctor Rodríguez (DH) | CIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.249 weak | — |
| Matt McLain (2B) | CIN | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.47 | 0.298 below average | — |
| Drake Baldwin (DH) | ATL | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 0.47 | 0.367 elite | — |
| Ozzie Albies (2B) | ATL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | -0.47 | 0.279 weak | — |
| Sean Murphy (C) | ATL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.265 weak | — |
| JJ Bleday (LF) | CIN | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.34 elite | — |
| Tyler Stephenson (C) | CIN | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -0.02 | 0.328 above average | — |
| Carlos Jorge (RF) | CIN | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.247 weak | — |
| Austin Riley (3B) | ATL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.297 below average | — |
| Mauricio Dubón (LF) | ATL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.306 average | — |
| Ha-Seong Kim (SS) | ATL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.215 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.699 | positive favors home; negative favors away |
| Recent form | 1.245 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.059 | positive favors home; negative favors away |
| Composite | 1.917 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.91-4.94 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-8 | 0.6 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-9 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-9 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-9 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-9 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.91-4.94 | 4-5 | -0.021 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 5-8 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-8 | 6-9 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-9 | 6-9 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-9 | 6-9 | 0 | Capped at max 12 realistic runs |
| simulation_result | 6-9 | 6-9 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| ATL | Drake Baldwin | batter / DH | better | predicted_RBI 5.417 |
| CIN | Carlos Jorge | batter / RF | better | predicted_AB 2.5 |
| CIN | Brandon Williamson | pitcher / Starter | worse | predicted_H 2 |
| CIN | Elly De La Cruz | batter / SS | worse | predicted_SO 1.799 |
| CIN | Matt McLain | batter / 2B | better | predicted_RBI 1.74 |
| CIN | Dane Myers | batter / CF | worse | predicted_AB 1.67 |
| ATL | Michael Harris II | batter / CF | worse | predicted_AB -1.66 |
| CIN | Eugenio Suárez | batter / 3B | worse | predicted_SO 1.653 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | ATL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | ATL |
| info | CURRENT_PITCHER_DUPLICATION | CIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | ATL model-prediction batting totals differ from final simulation box score (H: current=8, sim=9; HR: current=1, sim=3; RBI: current=4, sim=9; R: current=5, sim=9; BB: current=3, sim=6; SO: current=7, sim=6; HBP: current=0, sim=1). | ATL |
| info | CURRENT_PLAYER_MATCH_BOX | ATL current finalized hitter lines are model predictions and differ from the simulation box score: Drake Baldwin: H current=1 box=2, HR current=0 box=2, RBI current=1 box=6, SO current=1 box=0; Matt Olson: HR current=1 box=0, RBI current=1 box=0; Ozzie Albies: AB current=4 box=5, H current=1 box=2, HR current=0 box=1, RBI current=0 box=2; Ronald Acuña Jr.: 2B current=1 box=0, SO current=1 box=0; Michael Harris II: AB current=4 box=3, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=0; Austin Riley: AB current=3 box=4, H current=1 box=0, R current=0 box=1, SO current=1 box=2; Mauricio Dubón: AB current=4 box=3, 2B current=0 box=1, R current=0 box=1, BB current=0 box=1; Sean Murphy: R current=0 box=1, BB current=0 box=1, SO current=1 box=0 | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model pitcher projections differ from final simulation pitching box score (ER: current=8, sim=9). | CIN |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=8, sim=10; 2B: current=1, sim=2; HR: current=1, sim=3; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=4, sim=5; SO: current=9, sim=12). | CIN |
| info | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: Carlos Jorge: AB current=4 box=5, RBI current=0 box=1, R current=0 box=1; Sal Stewart: 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Eugenio Suárez: AB current=3 box=5, HR current=0 box=1, R current=0 box=1, SO current=1 box=3; JJ Bleday: HR current=0 box=1, RBI current=0 box=2, BB current=1 box=2; Elly De La Cruz: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Héctor Rodríguez: AB current=4 box=3, BB current=0 box=1, SO current=1 box=0; Tyler Stephenson: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Matt McLain: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=2 | CIN |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CLE | Parker Messick | 3 ER / 18 outs | 1 ER / 15 outs | -2 |
| BOS | Payton Tolle | 3 ER / 17 outs | 2 ER / 17 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Parker Messick (CLE) threw 15 outs, 1 ER = 1.8 ERA against a projected 4.5 ERA (-2.7 ERA error)
Bullpen behind him: 1 ER over 6 outs.
The HOME lineup he faced produced 1 runs on 7 hits and 0 HR, against a projected 4 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Payton Tolle (BOS) threw 17 outs, 2 ER = 3.18 ERA against a projected 4.76 ERA (-1.58 ERA error)
Bullpen behind him: 1 ER over 3 outs.
The AWAY lineup he faced produced 3 runs on 11 hits and 0 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CLE | Parker Messick (Starter) | 15 / 18 | 1.8 / 4.5 | 1 / 3 | 5 / 1 | 0 / 1 | 1 / 2 | 1.48 | 5 / 8 | 5.54 | venue away: 2.21 vs 2.97 ERA (ok) · opp run factor 0.99 (average) · 30 prior appearances this season |
| CLE | Cade Smith (Closer) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.3 | 1 / 0 | 1.54 | |
| CLE | Hunter Gaddis (Setup Man) | 3 / 2 | 9 / 13.5 (-4.50) | 1 / 1 | 2 / 2 | 1 / 0 | 0 / 1 | 0.27 | 2 / 2 | 0.78 | |
| BOS | Payton Tolle (Starter) | 17 / 17 | 3.18 / 4.76 | 2 / 3 | 8 / 4 | 0 / 2 | 2 / 2 | 1.56 | 5 / 6 | 6.84 | venue home: 3.55 vs 2.5 ERA (worse here) · opp run factor 0.96 (average) · 25 prior appearances this season |
| BOS | Erik Miller (Setup Man) | 3 / 3 | 9 / 0 (+9.00) | 1 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 0.85 | 0 / 0 | 1.37 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jahmai Jones (DH) | BOS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -1.4 | 0.33 above average | bad day |
| Adley Rutschman (C) | BOS | 4 / 4 | 3 / 1 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.92 | 0.327 above average | projection too low |
| Roman Anthony (LF) | BOS | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -0.8 | 0.346 elite | bad day |
| José Ramírez (3B) | CLE | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.329 above average | bad day |
| David Fry (1B) | CLE | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.264 weak | — |
| Nate Eaton (CF) | BOS | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.289 below average | — |
| Chase DeLauter (RF) | CLE | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 0 / 1 | 0.45 | 0.346 elite | — |
| Nick Sogard (1B) | BOS | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0.45 | 0.31 average | — |
| Andruw Monasterio (2B) | BOS | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | -0.45 | 0.292 below average | — |
| Angel Martínez (LF) | CLE | 4 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 0.32 | 0.304 average | — |
| Wilyer Abreu (RF) | BOS | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0.31 | 0.35 elite | — |
| Austin Hedges (C) | CLE | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 1 | 0.19 | 0.277 weak | — |
| Isiah Kiner-Falefa (SS) | BOS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.297 below average | — |
| Caleb Durbin (3B) | BOS | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | -0.14 | 0.295 below average | — |
| Jo Adell (DH) | CLE | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 0.02 | 0.325 above average | — |
| Steven Kwan (CF) | CLE | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 0 | 0 | 0.327 above average | — |
| Travis Bazzana (2B) | CLE | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | 0 | 0.303 average | — |
| Brayan Rocchio (SS) | CLE | 5 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.295 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.127 | positive favors home; negative favors away |
| Recent form | -0.503 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.027 | positive favors home; negative favors away |
| Composite | 0.004 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.13-4.82 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-3 | 0.505 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.13-4.82 | 4-5 | 0.312 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 4-3 | -2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-3 | 3-3 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-3 | 3-4 | 1 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | 3-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-4 | 3-4 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| BOS | Payton Tolle | pitcher / Starter | neutral | predicted_SO 5 |
| CLE | Parker Messick | pitcher / Starter | better | predicted_SO 2 |
| BOS | Erik Miller | pitcher / Setup Man | worse | predicted_SO -2 |
| BOS | Jahmai Jones | batter / DH | worse | predicted_RBI 1.92 |
| CLE | Travis Bazzana | batter / 2B | worse | predicted_AB -1.78 |
| CLE | Austin Hedges | batter / C | better | predicted_RBI 1.72 |
| BOS | Adley Rutschman | batter / C | worse | predicted_AB -1.7 |
| BOS | Caleb Durbin | batter / 3B | worse | predicted_SO 1.465 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | BOS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | BOS |
| info | CURRENT_PITCHER_DUPLICATION | CLE pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CLE |
| info | CURRENT_FINALIZED_MATCH_BOX | BOS model-prediction batting totals differ from final simulation box score (AB: current=32, sim=30; H: current=8, sim=3; 2B: current=2, sim=0; SO: current=8, sim=10; HBP: current=0, sim=1). | BOS |
| info | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Nick Sogard: AB current=4 box=3, RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Adley Rutschman: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Roman Anthony: R current=0 box=1, BB current=1 box=0; Andruw Monasterio: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Isiah Kiner-Falefa: H current=1 box=0; Nate Eaton: AB current=3 box=2, BB current=0 box=1; Jahmai Jones: AB current=3 box=4, RBI current=0 box=2, SO current=1 box=2; Wilyer Abreu: H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | BOS |
| info | CURRENT_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (AB: current=32, sim=31; H: current=8, sim=4; 2B: current=2, sim=1; HR: current=1, sim=2; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=2; SO: current=7, sim=6). | CLE |
| info | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Steven Kwan: H current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=0 box=1; Jo Adell: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; David Fry: H current=0 box=1, 2B current=0 box=1, R current=0 box=1, BB current=0 box=1; Angel Martínez: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; José Ramírez: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Travis Bazzana: AB current=3 box=2, R current=1 box=0, BB current=0 box=1; Chase DeLauter: HR current=0 box=1, R current=0 box=1, BB current=1 box=0, SO current=1 box=0; Austin Hedges: HR current=0 box=1, RBI current=0 box=2, R current=0 box=1, SO current=1 box=0 | CLE |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| HOU | Cristian Javier | 3 ER / 15 outs | 0 ER / 6 outs | -3 |
| SEA | Logan Gilbert | 3 ER / 17 outs | 4 ER / 12 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Cristian Javier (HOU) posted 0.00 ERA vs projected 5.40 (0 ER in 6 outs); he is materially worse pitching away (7.23 ERA there vs 5.28 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Cristian Javier (HOU) threw 6 outs, 0 ER = 0 ERA against a projected 5.4 ERA (-5.4 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 0 runs on 4 hits and 0 HR, against a projected 4 runs / 8 hits (-4 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Logan Gilbert (SEA) threw 12 outs, 4 ER = 9 ERA against a projected 4.76 ERA (4.24 ERA error)
Bullpen behind him: 1 ER over 5 outs.
The AWAY lineup he faced produced 7 runs on 12 hits and 3 HR, against a projected 4 runs / 7 hits (3 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| HOU | Cristian Javier (Starter) | 6 / 15 | 0 / 5.4 (-5.40) | 0 / 3 | 1 / 6 | 0 / 1 | 2 / 3 | 1.93 | 2 / 2 | 4.8 | venue away: 7.23 vs 5.28 ERA (worse here) · opp run factor 1.06 (weak) · 16 prior appearances this season |
| HOU | Logan VanWey (Setup Man) | 6 / 4 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 2 / 2 | 0.77 | |
| SEA | Logan Gilbert (Starter) | 12 / 17 | 9 / 4.76 (+4.24) | 4 / 3 | 10 / 6 | 1 / 2 | 2 / 1 | 1.78 | 3 / 3 | 7.2 | venue home: 4.41 vs 2.72 ERA (worse here) · opp run factor 0.98 (average) · 30 prior appearances this season |
| SEA | José A. Ferrer (Setup Man) | 5 / 4 | 5.4 / 0 (+5.40) | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.21 | 2 / 0 | 0.62 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Isaac Paredes (3B) | HOU | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 1.4 | 0.321 above average | projection too low |
| Cal Raleigh (C) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -1.4 | 0.312 average | no signal |
| Christian Walker (1B) | HOU | 5 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.93 | 0.298 below average | good day |
| Brice Matthews (CF) | HOU | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 2 | 0.8 | 0.257 weak | good day |
| Cam Smith (RF) | HOU | 5 / 3 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.78 | 0.315 average | no signal |
| Yordan Alvarez (DH) | HOU | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 3 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0.47 | 0.442 elite | — |
| Yainer Diaz (C) | HOU | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.304 average | — |
| J.P. Crawford (SS) | SEA | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.322 above average | — |
| Lazaro Montes (RF) | SEA | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.351 elite | — |
| Julio Rodríguez (CF) | SEA | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.333 above average | — |
| Josh Naylor (1B) | SEA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.312 average | — |
| Cole Young (2B) | SEA | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 0.33 | 0.314 average | — |
| Dominic Canzone (DH) | SEA | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.31 | 0.357 elite | — |
| Taylor Trammell (LF) | HOU | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 0.19 | 0.29 below average | — |
| Jose Altuve (2B) | HOU | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 0.16 | 0.273 weak | — |
| Randy Arozarena (LF) | SEA | 1 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | -0.14 | 0.348 elite | — |
| Jeremy Peña (SS) | HOU | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 0 | 2 / 1 | 0 | 0.326 above average | — |
| Brock Rodden (3B) | SEA | 1 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.236 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.254 | positive favors home; negative favors away |
| Recent form | 0.83 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.078 | positive favors home; negative favors away |
| Composite | 0.878 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.85-4.98 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-5 | 0.6 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.85-4.98 | 4-5 | -0.13 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 3-5 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-5 | 3-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-5 | 3-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-5 | 3-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-5 | 3-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| SEA | Brock Rodden | batter / 3B | worse | predicted_BB 1.609 |
| SEA | Cole Young | batter / 2B | better | predicted_RBI 1.6 |
| SEA | Dominic Canzone | batter / DH | worse | predicted_AB -1.44 |
| SEA | J.P. Crawford | batter / SS | worse | predicted_BB 1.436 |
| SEA | Josh Naylor | batter / 1B | worse | predicted_AB -1.42 |
| SEA | Lazaro Montes | batter / RF | worse | predicted_SO -1.357 |
| HOU | Jose Altuve | batter / 2B | worse | predicted_H -1.24 |
| SEA | Cal Raleigh | batter / C | worse | predicted_AB -1.24 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | HOU pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | HOU |
| info | CURRENT_PITCHER_DUPLICATION | SEA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | SEA |
| info | CURRENT_FINALIZED_MATCH_BOX | HOU model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=7, sim=6; 2B: current=1, sim=0; HR: current=1, sim=2; RBI: current=4, sim=3; R: current=4, sim=3; SO: current=10, sim=3; HBP: current=0, sim=1). | HOU |
| info | CURRENT_PLAYER_MATCH_BOX | HOU current finalized hitter lines are model predictions and differ from the simulation box score: Jose Altuve: H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Jeremy Peña: H current=1 box=2, RBI current=0 box=1, SO current=1 box=0; Isaac Paredes: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Yordan Alvarez: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Yainer Diaz: HR current=0 box=1, R current=0 box=1, SO current=1 box=0; Taylor Trammell: H current=1 box=0, BB current=0 box=1, SO current=1 box=0; Cam Smith: H current=0 box=1, BB current=0 box=1, SO current=1 box=0; Christian Walker: HR current=0 box=1, R current=0 box=1, SO current=1 box=0, HBP current=0 box=1 | HOU |
| info | CURRENT_FINALIZED_MATCH_BOX | SEA model-prediction batting totals differ from final simulation box score (AB: current=34, sim=31; H: current=8, sim=9; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=5; SO: current=9, sim=5; SF: current=0, sim=2). | SEA |
| info | CURRENT_PLAYER_MATCH_BOX | SEA current finalized hitter lines are model predictions and differ from the simulation box score: Randy Arozarena: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, R current=1 box=0; J.P. Crawford: AB current=4 box=3, H current=1 box=2, BB current=1 box=2; Dominic Canzone: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, SF current=0 box=1; Cal Raleigh: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Lazaro Montes: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Brock Rodden: AB current=3 box=2, BB current=0 box=2, SO current=1 box=0; Julio Rodríguez: H current=1 box=2, RBI current=0 box=1, R current=0 box=1, SO current=1 box=0; Josh Naylor: AB current=4 box=3, RBI current=0 box=1, R current=0 box=1, SF current=0 box=1 | SEA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| LAA | Yusei Kikuchi | 4 ER / 15 outs | 2 ER / 16 outs | -2 |
| OAK | Brady Basso | 5 ER / 13 outs | 5 ER / 6 outs | 0 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Brady Basso (OAK) posted 22.50 ERA vs projected 10.38 (5 ER in 6 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Yusei Kikuchi (LAA) threw 16 outs, 2 ER = 3.38 ERA against a projected 7.2 ERA (-3.82 ERA error)
Bullpen behind him: 3 ER over 1 outs.
The HOME lineup he faced produced 7 runs on 12 hits and 1 HR, against a projected 4 runs / 9 hits (3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Brady Basso (OAK) threw 6 outs, 5 ER = 22.5 ERA against a projected 10.38 ERA (12.12 ERA error)
Bullpen behind him: 2 ER over 14 outs.
The AWAY lineup he faced produced 7 runs on 15 hits and 1 HR, against a projected 3 runs / 9 hits (4 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LAA | Yusei Kikuchi (Starter) | 16 / 15 | 3.38 / 7.2 (-3.82) | 2 / 4 | 7 / 5 | 0 / 0 | 1 / 2 | 2.57 | 2 / 6 | 5.64 | venue away: 5.66 vs 4.03 ERA (worse here) · opp run factor 1.09 (weak) · 12 prior appearances this season |
| LAA | José Fermin (Middle Reliever (High Leverage)) | 0 / 3 | n/a / 0 | 3 / 0 | 3 / 0 | 0 / 0 | 1 / 0 | 0.51 | 0 / 0 | 1.3 | |
| LAA | Tayler Saucedo (Middle Reliever (High Leverage)) | 1 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0.16 | 0 / 1 | 0.92 | |
| OAK | Brady Basso (Starter) | 6 / 13 | 22.5 / 10.38 (+12.12) | 5 / 5 | 6 / 5 | 1 / 2 | 2 / 2 | 0.62 | 2 / 1 | 2.38 | venue home: 0 vs 7.59 ERA (ok) · opp run factor 0.96 (weak) · 24 prior appearances this season |
| OAK | Seth Johnson (Reliever) | 8 / 5 | 3.38 / 0 (+3.38) | 1 / 0 | 4 / 0 | 0 / 0 | 1 / 0 | n/a | 1 / 1 | n/a | |
| OAK | Hogan Harris (Reliever) | 3 / 3 | 9 / 0 (+9.00) | 1 / 0 | 3 / 0 | 0 / 0 | 1 / 0 | n/a | 1 / 0 | n/a | |
| OAK | Luis Medina (Reliever) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | n/a | 1 / 1 | n/a |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Lawrence Butler (RF) | OAK | 4 / 4 | 3 / 1 | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 0 / 1 | 0 / 1 | 1.54 | 0.324 above average | projection too low |
| Denzer Guzman (3B) | LAA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 4 / 1 | 1 / 0 | 1 / 0 | 0 / 1 | 1.26 | 0.269 weak | good day |
| Zack Gelof (3B) | OAK | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | 1.26 | 0.318 average | no signal |
| Mike Trout (DH) | LAA | 4 / 4 | 3 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 1 | 1 / 1 | 0.94 | 0.378 elite | projection too low |
| Zach Neto (SS) | LAA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | -0.93 | 0.311 average | no signal |
| Joshua Kuroda-Grauer (2B) | OAK | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | -0.78 | 0.327 above average | bad day |
| Vaughn Grissom (1B) | LAA | 4 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0.63 | 0.308 average | no signal |
| Jose Siri (CF) | LAA | 5 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.299 below average | — |
| Wade Meckler (RF) | LAA | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0.47 | 0.309 average | — |
| Christian Moore (2B) | LAA | 5 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.225 weak | — |
| Bryce Teodosio (LF) | LAA | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.202 weak | — |
| Tommy White (1B) | OAK | 2 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.29 below average | — |
| Denzel Clarke (CF) | OAK | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.214 weak | — |
| Jonah Heim (C) | OAK | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.284 below average | — |
| Moisés Ballesteros (C) | LAA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.293 below average | — |
| Henry Bolte (LF) | OAK | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0.31 | 0.317 average | — |
| Alika Williams (SS) | OAK | 4 / 3 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 0.16 | 0.24 weak | — |
| Shea Langeliers (DH) | OAK | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.01 | 0.359 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.684 | positive favors home; negative favors away |
| Recent form | -0.562 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.128 | positive favors home; negative favors away |
| Composite | -0.416 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.17-5.21 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.17-5.21 | 5-5 | 0.04 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 5-4 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by winner_starter_is_below_average, projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-4 | 5-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-4 | 5-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-4 | 5-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| OAK | Brady Basso | pitcher / Starter | worse | predicted_IP -4.9 |
| OAK | Chris Roycroft | pitcher / Reliever | better | predicted_SO 2 |
| OAK | Zack Gelof | batter / 3B | worse | predicted_AB -1.73 |
| OAK | Jonah Heim | batter / C | worse | predicted_RBI 1.67 |
| LAA | Jose Siri | batter / CF | better | predicted_RBI 1.643 |
| OAK | Joshua Kuroda-Grauer | batter / 2B | worse | predicted_H -1.562 |
| LAA | Bryce Teodosio | batter / LF | worse | predicted_AB 1.5 |
| OAK | Denzel Clarke | batter / CF | worse | predicted_AB 1.444 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | LAA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | LAA |
| info | CURRENT_PITCHER_DUPLICATION | OAK pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | OAK |
| info | CURRENT_FINALIZED_MATCH_BOX | LAA model-prediction batting totals differ from final simulation box score (H: current=9, sim=5; 2B: current=2, sim=1; HR: current=1, sim=2; R: current=3, sim=5; SO: current=8, sim=5; HBP: current=0, sim=1). | LAA |
| info | CURRENT_PLAYER_MATCH_BOX | LAA current finalized hitter lines are model predictions and differ from the simulation box score: Mike Trout: AB current=4 box=3, 2B current=1 box=0, BB current=1 box=0, SO current=1 box=0; Vaughn Grissom: 2B current=1 box=0, RBI current=1 box=2, R current=0 box=1; Jose Siri: AB current=3 box=4, HR current=0 box=1, RBI current=1 box=2, R current=0 box=1; Moisés Ballesteros: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Wade Meckler: H current=1 box=0, R current=1 box=0, SO current=1 box=2; Christian Moore: AB current=3 box=4, H current=1 box=0, SO current=1 box=0; Zach Neto: AB current=4 box=3; Denzer Guzman: H current=1 box=0, RBI current=1 box=0, SO current=1 box=0 | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (AB: current=34, sim=33; H: current=9, sim=6; 2B: current=2, sim=3; HR: current=1, sim=0; RBI: current=5, sim=4; BB: current=3, sim=2; HBP: current=0, sim=1). | OAK |
| info | CURRENT_PLAYER_MATCH_BOX | OAK current finalized hitter lines are model predictions and differ from the simulation box score: Henry Bolte: 2B current=0 box=1, RBI current=0 box=1, BB current=1 box=0, SO current=1 box=0; Shea Langeliers: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Tommy White: 2B current=0 box=1; Joshua Kuroda-Grauer: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Alika Williams: AB current=3 box=4, 2B current=1 box=0, RBI current=0 box=1, R current=0 box=1; Zack Gelof: AB current=4 box=3, RBI current=1 box=0, HBP current=0 box=1; Denzel Clarke: AB current=3 box=4, H current=1 box=0, SO current=1 box=0; Jonah Heim: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=2, R current=0 box=1 | OAK |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIA | Janson Junk | 5 ER / 14 outs | 0 ER / 15 outs | -5 |
| CHC | Shota Imanaga | 3 ER / 16 outs | 1 ER / 15 outs | -2 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Janson Junk (MIA) posted 0.00 ERA vs projected 9.64 (0 ER in 15 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Janson Junk (MIA) threw 15 outs, 0 ER = 0 ERA against a projected 9.64 ERA (-9.64 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The HOME lineup he faced produced 2 runs on 7 hits and 0 HR, against a projected 5 runs / 9 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Shota Imanaga (CHC) threw 15 outs, 1 ER = 1.8 ERA against a projected 5.06 ERA (-3.26 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 7 runs on 8 hits and 1 HR, against a projected 5 runs / 8 hits (2 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIA | Janson Junk (Starter) | 15 / 14 | 0 / 9.64 (-9.64) | 0 / 5 | 2 / 6 | 0 / 0 | 1 / 4 | 1.2 | 6 / 5 | 3.07 | venue away: 4.66 vs 4.46 ERA (ok) · opp run factor 1.04 (strong) · 24 prior appearances this season |
| MIA | Victor Vodnik (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0.8 | 2 / 1 | 0.96 | |
| MIA | Calvin Faucher (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0.56 | 2 / 2 | 1.03 | |
| MIA | Michael Petersen (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.37 | 1 / 1 | 1.48 | |
| CHC | Shota Imanaga (Starter) | 15 / 16 | 1.8 / 5.06 (-3.26) | 1 / 3 | 4 / 6 | 0 / 2 | 0 / 1 | 1.27 | 7 / 5 | 5.06 | venue home: 4 vs 3.45 ERA (worse here) · opp run factor 0.95 (average) · 30 prior appearances this season |
| CHC | Daniel Palencia (Middle Reliever (High Leverage)) | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.39 | 1 / 0 | 0.97 | |
| CHC | Ryan Zeferjahn (Setup Man) | 2 / 5 | 0 / 5.4 (-5.40) | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 0 | 0.65 | 1 / 0 | 1.39 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kyle Stowers (DH) | MIA | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 3 / 0 | 1 / 1 | 1 / 1 | 1.71 | 0.324 above average | projection too low |
| Heriberto Hernández (LF) | MIA | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.93 | 0.347 elite | bad day |
| Pedro Ramirez (3B) | CHC | 5 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.78 | 0.287 below average | projection too high |
| Javier Sanoja (3B) | MIA | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 0.49 | 0.293 below average | — |
| Seiya Suzuki (RF) | CHC | 6 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.48 | 0.339 above average | — |
| Esteury Ruiz (CF) | MIA | 6 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 4 / 1 | -0.47 | 0.282 weak | — |
| Deyvison De Los Santos (1B) | MIA | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.15 weak | — |
| Michael Conforto (DH) | CHC | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.335 above average | — |
| Dansby Swanson (SS) | CHC | 5 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 4 / 1 | -0.47 | 0.308 average | — |
| Agustín Ramírez (C) | MIA | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.285 below average | — |
| Michael Busch (1B) | CHC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 1 / 1 | 0.33 | 0.333 above average | — |
| Ian Happ (LF) | CHC | 6 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.316 average | — |
| Pete Crow-Armstrong (CF) | CHC | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | 1 / 1 | 0.18 | 0.377 elite | — |
| Nico Hoerner (2B) | CHC | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | -0.14 | 0.322 above average | — |
| Otto Lopez (SS) | MIA | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.328 above average | — |
| Jared Serna (2B) | MIA | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | 0 | 0.235 weak | — |
| Griffin Conine (RF) | MIA | 6 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.362 elite | — |
| Carson Kelly (C) | CHC | 5 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 0 | 0 | 0.315 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.936 | positive favors home; negative favors away |
| Recent form | 0.749 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.087 | positive favors home; negative favors away |
| Composite | 1.254 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.93-5.83 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.93-5.83 | 4-6 | 0.101 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 4-6 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-6 | 4-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | 4-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | 4-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-6 | 4-6 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| CHC | Pete Crow-Armstrong | batter / CF | worse | predicted_AB -3.43 |
| CHC | Shota Imanaga | pitcher / Starter | better | predicted_SO 2 |
| CHC | Carson Kelly | batter / C | better | predicted_2B 1.865 |
| CHC | Nico Hoerner | batter / 2B | worse | predicted_AB -1.82 |
| MIA | Heriberto Hernández | batter / LF | better | predicted_RBI 1.52 |
| MIA | Esteury Ruiz | batter / CF | worse | predicted_AB 1.5 |
| MIA | Deyvison De Los Santos | batter / 1B | better | predicted_AB 1.5 |
| MIA | Jared Serna | batter / 2B | worse | predicted_AB 1.5 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | CHC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | CHC |
| info | CURRENT_PITCHER_DUPLICATION | MIA pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | CHC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=31; H: current=9, sim=8; 2B: current=1, sim=2; 3B: current=0, sim=1; HR: current=2, sim=0; RBI: current=5, sim=6; R: current=5, sim=6; BB: current=4, sim=6). | CHC |
| info | CURRENT_PLAYER_MATCH_BOX | CHC current finalized hitter lines are model predictions and differ from the simulation box score: Seiya Suzuki: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Michael Conforto: AB current=3 box=4, H current=1 box=2, RBI current=1 box=2, R current=0 box=1; Michael Busch: RBI current=0 box=2; Pedro Ramirez: AB current=4 box=3, H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0; Pete Crow-Armstrong: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, SO current=1 box=2; Nico Hoerner: AB current=4 box=3, H current=1 box=0, BB current=0 box=1, SO current=0 box=2; Ian Happ: H current=1 box=0, R current=1 box=0, BB current=1 box=0; Carson Kelly: H current=1 box=2, 2B current=0 box=2, R current=0 box=1, BB current=0 box=1 | CHC |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model pitcher projections differ from final simulation pitching box score (BB: current=5, sim=6). | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; HR: current=1, sim=3; R: current=5, sim=4; BB: current=3, sim=1; SO: current=8, sim=5). | MIA |
| info | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Kyle Stowers: H current=1 box=2, HR current=0 box=1, R current=0 box=1, BB current=1 box=0; Agustín Ramírez: AB current=4 box=3, HR current=0 box=1, RBI current=0 box=1; Esteury Ruiz: AB current=3 box=4, 2B current=0 box=1; Otto Lopez: SO current=1 box=0; Deyvison De Los Santos: AB current=3 box=4, SO current=1 box=2; Jared Serna: AB current=3 box=4, R current=1 box=0, SO current=1 box=0; Heriberto Hernández: H current=1 box=2, RBI current=1 box=2, BB current=1 box=0, SO current=1 box=0; Javier Sanoja: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0 | MIA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIL | Dustin May | 2 ER / 14 outs | 2 ER / 6 outs | 0 |
| PHI | Zack Wheeler | 2 ER / 18 outs | 3 ER / 17 outs | 1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Dustin May (MIL) posted 9.00 ERA vs projected 3.86 (2 ER in 6 outs); he is materially worse pitching away (5.76 ERA there vs 3.87 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Dustin May (MIL) threw 6 outs, 2 ER = 9 ERA against a projected 3.86 ERA (5.14 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 6 runs on 8 hits and 1 HR, against a projected 4 runs / 8 hits (2 runs vs projection).
Who did the damage to him:
Verdict: pitching: the starter gave up runs at a far worse rate than projected
HOME pitching
Zack Wheeler (PHI) threw 17 outs, 3 ER = 4.76 ERA against a projected 3 ERA (1.76 ERA error)
Bullpen behind him: 1 ER over 3 outs.
The AWAY lineup he faced produced 4 runs on 6 hits and 0 HR, against a projected 5 runs / 8 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIL | Dustin May (Starter) | 6 / 14 | 9 / 3.86 (+5.14) | 2 / 2 | 1 / 2 | 1 / 0 | 2 / 2 | 1.66 | 2 / 4 | 5.22 | venue away: 5.76 vs 3.87 ERA (worse here) · opp run factor 0.98 (average) · 29 prior appearances this season |
| PHI | Zack Wheeler (Starter) | 17 / 18 | 4.76 / 3 | 3 / 2 | 5 / 5 | 0 / 0 | 1 / 3 | 2.49 | 11 / 7 | 5.83 | venue home: 2.86 vs 3.1 ERA (ok) · opp run factor 0.97 (strong) · 26 prior appearances this season |
| PHI | Jhoan Duran (Closer) | 3 / 3 | 9 / 0 (+9.00) | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.13 | 2 / 2 | 1.28 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kyle Schwarber (DH) | PHI | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.365 elite | bad day |
| Brandon Marsh (LF) | PHI | 4 / 3 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 1.71 | 0.3 below average | good day |
| Jackson Chourio (LF) | MIL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | 2 / 2 | -1.07 | 0.34 elite | bad day |
| Alec Bohm (1B) | PHI | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0.78 | 0.33 above average | projection too low |
| Garrett Mitchell (CF) | MIL | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 2 / 2 | -0.64 | 0.355 elite | bad day |
| Cooper Pratt (SS) | MIL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.318 average | — |
| David Hamilton (3B) | MIL | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.269 weak | — |
| Bryce Harper (RF) | PHI | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.381 elite | — |
| Brice Turang (2B) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.33 | 0.344 elite | — |
| Jake Bauers (1B) | MIL | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -0.33 | 0.38 elite | — |
| Luis Arraez (2B) | PHI | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.16 | 0.308 average | — |
| Christian Yelich (DH) | MIL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 2 / 1 | -0.14 | 0.308 average | — |
| J.T. Realmuto (C) | PHI | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.32 average | — |
| Luis Lara (RF) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.292 below average | — |
| William Contreras (C) | MIL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | 0 | 0.336 above average | — |
| Bryson Stott (3B) | PHI | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 0 | 1 / 1 | 0 / 1 | 0 | 0.327 above average | — |
| Trea Turner (SS) | PHI | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 0 | 0.295 below average | — |
| Justin Crawford (CF) | PHI | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.284 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.149 | positive favors home; negative favors away |
| Recent form | -1.125 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.004 | positive favors home; negative favors away |
| Composite | -1.444 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.88-5.44 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 7-4 | 0.6 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.88-5.44 | 4-5 | 0.564 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 7-4 | 4 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-4 | 7-4 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-4 | 7-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-4 | 7-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-4 | 7-4 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| PHI | Luis Arraez | batter / 2B | worse | predicted_BB 2.767 |
| MIL | Jackson Chourio | batter / LF | worse | predicted_RBI 2.38 |
| PHI | Brandon Marsh | batter / LF | worse | predicted_SO 2.075 |
| PHI | Zack Wheeler | pitcher / Starter | better | predicted_ER -2 |
| MIL | Luis Lara | batter / RF | better | predicted_2B 1.863 |
| MIL | William Contreras | batter / C | better | predicted_2B 1.814 |
| MIL | Jake Bauers | batter / 1B | better | predicted_AB 1.636 |
| PHI | Bryson Stott | batter / 3B | better | predicted_RBI 1.568 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | MIL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIL |
| info | CURRENT_PITCHER_DUPLICATION | PHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | PHI |
| info | CURRENT_FINALIZED_MATCH_BOX | MIL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=39; H: current=8, sim=9; 2B: current=1, sim=7; HR: current=1, sim=0; RBI: current=5, sim=7; R: current=5, sim=7; SO: current=11, sim=9). | MIL |
| info | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: Garrett Mitchell: H current=1 box=0, 2B current=1 box=0, R current=0 box=1, SO current=2 box=1; Brice Turang: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, BB current=1 box=0; Jackson Chourio: AB current=4 box=5, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=3; Luis Lara: AB current=4 box=3, H current=1 box=2, 2B current=0 box=2, RBI current=0 box=1; William Contreras: AB current=4 box=5, H current=1 box=3, 2B current=0 box=2, RBI current=1 box=0; Jake Bauers: AB current=3 box=5, 2B current=0 box=1, BB current=1 box=0, SO current=1 box=0; Christian Yelich: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Cooper Pratt: H current=1 box=0, BB current=0 box=1 | MIL |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | PHI |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (H: current=8, sim=3; 3B: current=0, sim=1; HR: current=1, sim=0; BB: current=3, sim=8; SO: current=8, sim=9; HBP: current=0, sim=1). | PHI |
| info | CURRENT_PLAYER_MATCH_BOX | PHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Alec Bohm: H current=1 box=0, RBI current=1 box=0, HBP current=0 box=1; Bryson Stott: 3B current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=1 box=0; Trea Turner: H current=1 box=0, R current=1 box=0, BB current=0 box=1; J.T. Realmuto: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Kyle Schwarber: HR current=1 box=0, SO current=1 box=0; Luis Arraez: AB current=4 box=2, R current=0 box=1, BB current=0 box=3; Brandon Marsh: H current=1 box=0, RBI current=0 box=1, BB current=0 box=1, SO current=1 box=3 | PHI |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIN | Taj Bradley | 3 ER / 18 outs | 1 ER / 18 outs | -2 |
| SF | Anthony Molina | 3 ER / 15 outs | 2 ER / 18 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Taj Bradley (MIN) posted 1.50 ERA vs projected 4.50 (1 ER in 18 outs); he is materially worse pitching away (4.47 ERA there vs 3.05 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Taj Bradley (MIN) threw 18 outs, 1 ER = 1.5 ERA against a projected 4.5 ERA (-3 ERA error)
Bullpen behind him: 1 ER over 5 outs.
The HOME lineup he faced produced 1 runs on 5 hits and 0 HR, against a projected 5 runs / 7 hits (-4 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Anthony Molina (SF) threw 18 outs, 2 ER = 3 ERA against a projected 5.4 ERA (-2.4 ERA error) only 8 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 3 runs on 6 hits and 1 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIN | Taj Bradley (Starter) | 18 / 18 | 1.5 / 4.5 (-3.00) | 1 / 3 | 3 / 2 | 0 / 1 | 3 / 3 | 2.05 | 6 / 6 | 7.2 | venue away: 4.47 vs 3.05 ERA (worse here) · opp run factor 0.95 (weak) · 30 prior appearances this season |
| MIN | A.J. Minter (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.17 | 1 / 0 | 1 | |
| MIN | Jeff Hoffman (Setup Man) | 3 / 4 | 9 / 0 (+9.00) | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0.44 | 1 / 1 | 1.56 | |
| SF | Anthony Molina (Starter) | 18 / 15 | 3 / 5.4 | 2 / 3 | 4 / 4 | 0 / 0 | 1 / 2 | 0.88 | 6 / 7 | 6.35 | venue home: 21 vs 1.72 ERA (ok) · opp run factor 1.01 (average) · 8 prior appearances this season |
| SF | Carson Seymour (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0.52 | 0 / 1 | 0.87 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Josh Bell (DH) | MIN | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 1 | -1.11 | 0.335 above average | bad day |
| Turner Hill (LF) | SF | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -1.11 | 0.323 above average | bad day |
| Victor Bericoto (1B) | SF | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 2 / 1 | -1.07 | 0.302 below average | projection too high |
| Kody Clemens (2B) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.331 above average | bad day |
| Drew Cavanaugh (C) | SF | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | -0.8 | 0.305 average | no signal |
| Walker Jenkins (CF) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0.6 | 0.31 average | no signal |
| Brooks Lee (3B) | MIN | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 0.47 | 0.278 weak | — |
| Royce Lewis (1B) | MIN | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.306 average | — |
| Scott Bandura (RF) | SF | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.113 weak | — |
| Christian Koss (SS) | SF | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0.47 | 0.25 weak | — |
| Shay Whitcomb (3B) | SF | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.251 weak | — |
| Luke Keaschall (RF) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 0.29 | 0.315 average | — |
| Emmanuel Rodriguez (LF) | MIN | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.354 elite | — |
| Jonah Cox (2B) | SF | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | 2 / 2 | -0.14 | 0.264 weak | — |
| Victor Caratini (C) | MIN | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.309 average | — |
| Ryan Kreidler (SS) | MIN | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.295 below average | — |
| Bo Davidson (DH) | SF | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 | 0.309 average | — |
| Drew Gilbert (CF) | SF | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.333 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.124 | positive favors home; negative favors away |
| Recent form | 0.302 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.06 | positive favors home; negative favors away |
| Composite | -0.484 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.57-4.01 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 0.515 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.57-4.01 | 5-4 | 0.441 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 5-4 | -0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 5-3 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-3 | 5-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-3 | 5-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 5-3 | 5-3 | -0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| SF | Scott Bandura | batter / RF | better | predicted_AB 2.5 |
| MIN | Ryan Kreidler | batter / SS | worse | predicted_H 2.41 |
| MIN | Brooks Lee | batter / 3B | better | predicted_RBI 2.37 |
| SF | Jonah Cox | batter / 2B | worse | predicted_AB 2.152 |
| SF | Victor Bericoto | batter / 1B | worse | predicted_AB 2.121 |
| MIN | Taylor Rogers | pitcher / Reliever | better | predicted_IP 2 |
| SF | Bo Davidson | batter / DH | better | predicted_BB 2 |
| SF | Joel Kuhnel | pitcher / Middle Reliever | better | predicted_IP 2 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | MIN pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | MIN |
| info | CURRENT_PITCHER_DUPLICATION | SF pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | SF |
| info | CURRENT_FINALIZED_MATCH_BOX | MIN model-prediction batting totals differ from final simulation box score (AB: current=34, sim=46; H: current=8, sim=10; 2B: current=1, sim=0; RBI: current=4, sim=5; R: current=4, sim=5; SO: current=7, sim=12). | MIN |
| info | CURRENT_PLAYER_MATCH_BOX | MIN current finalized hitter lines are model predictions and differ from the simulation box score: Luke Keaschall: AB current=4 box=5, H current=1 box=0, R current=1 box=0, SO current=0 box=2; Walker Jenkins: AB current=4 box=5, H current=1 box=0, R current=1 box=0, BB current=1 box=0; Brooks Lee: AB current=4 box=5, RBI current=1 box=3, BB current=0 box=1; Emmanuel Rodriguez: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Kody Clemens: AB current=4 box=6, H current=1 box=2, RBI current=1 box=2, SO current=1 box=2; Josh Bell: AB current=4 box=6, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Royce Lewis: R current=0 box=1, BB current=0 box=1, SO current=1 box=2; Victor Caratini: AB current=3 box=5, H current=0 box=2, R current=0 box=1 | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (AB: current=33, sim=37; H: current=7, sim=2; 2B: current=1, sim=0; RBI: current=4, sim=3; R: current=5, sim=3; BB: current=3, sim=5; SO: current=10, sim=9; SF: current=0, sim=1). | SF |
| info | CURRENT_PLAYER_MATCH_BOX | SF current finalized hitter lines are model predictions and differ from the simulation box score: Jonah Cox: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Victor Bericoto: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Turner Hill: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Bo Davidson: AB current=4 box=3, BB current=1 box=2; Scott Bandura: AB current=3 box=5; Shay Whitcomb: AB current=4 box=3, H current=1 box=0, RBI current=0 box=1, R current=0 box=1; Drew Gilbert: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Christian Koss: AB current=3 box=4, R current=1 box=0 | SF |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| NYM | Sean Manaea | 2 ER / 17 outs | 2 ER / 18 outs | 0 |
| TEX | MacKenzie Gore | 2 ER / 14 outs | 1 ER / 15 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Sean Manaea (NYM) threw 18 outs, 2 ER = 3 ERA against a projected 3.18 ERA (-0.18 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 3 runs on 3 hits and 0 HR, against a projected 4 runs / 8 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
MacKenzie Gore (TEX) threw 15 outs, 1 ER = 1.8 ERA against a projected 3.86 ERA (-2.06 ERA error)
Bullpen behind him: 0 ER over 4 outs.
The AWAY lineup he faced produced 5 runs on 9 hits and 0 HR, against a projected 4 runs / 8 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYM | Sean Manaea (Starter) | 18 / 17 | 3 / 3.18 | 2 / 2 | 3 / 3 | 0 / 0 | 2 / 4 | 1.05 | 9 / 6 | 4.23 | venue away: 4.83 vs 4.04 ERA (worse here) · opp run factor 0.99 (average) · 31 prior appearances this season |
| NYM | Nathan Lavender (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.2 | 2 / 1 | 1.23 | |
| NYM | Dedniel Núñez (Middle Reliever (High Leverage)) | 3 / 1 | 0 / 54 (-54.00) | 0 / 2 | 0 / 1 | 0 / 1 | 0 / 1 | 0 | 2 / 1 | 0.82 | |
| TEX | MacKenzie Gore (Starter) | 15 / 14 | 1.8 / 3.86 | 1 / 2 | 4 / 3 | 0 / 1 | 1 / 1 | 2.91 | 2 / 3 | 3.8 | venue home: 3.53 vs 5.79 ERA (ok) · opp run factor 1.02 (average) · 32 prior appearances this season |
| TEX | Jakob Junis (Setup Man) | 4 / 4 | 0 / 13.5 (-13.50) | 0 / 2 | 1 / 2 | 0 / 1 | 1 / 0 | 0.31 | 0 / 1 | 0.69 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jake Burger (1B) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -1.73 | 0.32 average | no signal |
| Carson Benge (RF) | NYM | 4 / 4 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 0 | 1 / 1 | 1.42 | 0.339 above average | projection too low |
| Wyatt Langford (LF) | TEX | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.325 above average | bad day |
| Corey Seager (SS) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.352 elite | bad day |
| Juan Soto (LF) | NYM | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.79 | 0.412 elite | bad day |
| Mark Vientos (1B) | NYM | 2 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.78 | 0.312 average | no signal |
| Francisco Alvarez (DH) | NYM | 5 / 4 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 2 / 0 | 0 / 1 | 1 / 1 | 0.76 | 0.319 average | no signal |
| Marcus Semien (2B) | NYM | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.302 below average | — |
| Elias Díaz (DH) | TEX | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.266 weak | — |
| Justin Foscue (2B) | TEX | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.328 above average | — |
| A.J. Ewing (CF) | NYM | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.32 average | — |
| Bo Bichette (3B) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 0.33 | 0.328 above average | — |
| Danny Jansen (C) | TEX | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.263 weak | — |
| Brandon Nimmo (RF) | TEX | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.16 | 0.342 elite | — |
| Ezequiel Duran (CF) | TEX | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.303 average | — |
| Francisco Lindor (SS) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 0 | 0.33 above average | — |
| Luis Torrens (C) | NYM | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 | 0.294 below average | — |
| Josh Jung (3B) | TEX | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 2 / 0 | 0 | 0.347 elite | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.214 | positive favors home; negative favors away |
| Recent form | 0.404 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.028 | positive favors home; negative favors away |
| Composite | 0.517 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.5-4.65 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 0.601 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 4-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.5-4.65 | 5-5 | -0.151 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 4-6 | 2 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 4-6 | 4-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | 4-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | 4-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-6 | 4-6 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TEX | Jake Burger | batter / 1B | better | predicted_RBI 2.37 |
| NYM | Marcus Semien | batter / 2B | worse | predicted_RBI 1.66 |
| NYM | Francisco Lindor | batter / SS | better | predicted_RBI 1.52 |
| TEX | Justin Foscue | batter / 2B | worse | predicted_AB 1.5 |
| TEX | Corey Seager | batter / SS | better | predicted_RBI 1.46 |
| NYM | Luis Torrens | batter / C | worse | predicted_SO 1.333 |
| NYM | Juan Soto | batter / LF | worse | predicted_H -1.22 |
| NYM | Bo Bichette | batter / 3B | worse | predicted_H -1.21 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | NYM pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | NYM |
| info | CURRENT_PITCHER_DUPLICATION | TEX pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TEX |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model pitcher projections differ from final simulation pitching box score (H: current=7, sim=11; HR: current=2, sim=3). | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | NYM model-prediction batting totals differ from final simulation box score (AB: current=34, sim=32; H: current=8, sim=5; HR: current=1, sim=2; BB: current=3, sim=1; SO: current=8, sim=9). | NYM |
| info | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Mark Vientos: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Carson Benge: SO current=1 box=0; Juan Soto: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Francisco Alvarez: AB current=4 box=3, H current=1 box=0, BB current=1 box=0; A.J. Ewing: H current=1 box=0, SO current=1 box=0; Francisco Lindor: H current=1 box=2, HR current=0 box=1, RBI current=1 box=2, BB current=1 box=0; Bo Bichette: H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Luis Torrens: H current=0 box=1, 2B current=0 box=1, SO current=1 box=2 | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | TEX model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; H: current=8, sim=11; HR: current=1, sim=3; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=5; SO: current=8, sim=9). | TEX |
| info | CURRENT_PLAYER_MATCH_BOX | TEX current finalized hitter lines are model predictions and differ from the simulation box score: Wyatt Langford: H current=1 box=0, R current=1 box=0, SO current=1 box=2; Josh Jung: H current=1 box=2, RBI current=0 box=1, BB current=0 box=1, SO current=0 box=1; Ezequiel Duran: RBI current=1 box=0, R current=0 box=1; Corey Seager: AB current=4 box=5, H current=1 box=2, HR current=0 box=1, RBI current=1 box=2; Elias Díaz: H current=1 box=0, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=0; Jake Burger: H current=1 box=2, HR current=1 box=2, RBI current=1 box=3, SO current=1 box=0; Justin Foscue: AB current=3 box=4, SO current=1 box=2; Danny Jansen: H current=0 box=1, 2B current=0 box=1, R current=0 box=1, BB current=0 box=1 | TEX |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SD | Michael King | 4 ER / 18 outs | 5 ER / 12 outs | 1 |
| LAD | Brock Stewart | 2 ER / 13 outs | 0 ER / 3 outs | -2 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Michael King (SD) posted 11.25 ERA vs projected 6.00 (5 ER in 12 outs); he is materially worse pitching away (3.31 ERA there vs 2.74 on the other side), a venue-role weakness the model under-weighted.
What to do: Enable/raise the venue-split weight (context.venue_adjustment_weight) and validate in shadow; the split is credible for this starter.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Michael King (SD) threw 12 outs, 5 ER = 11.25 ERA against a projected 6 ERA (5.25 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 6 runs on 7 hits and 2 HR, against a projected 4 runs / 7 hits (2 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
HOME pitching
Brock Stewart (LAD) threw 3 outs, 0 ER = 0 ERA against a projected 4.15 ERA (-4.15 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 0 runs on 4 hits and 0 HR, against a projected 6 runs / 7 hits (-6 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: neither side broke materially - the result is closer to variance
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SD | Michael King (Starter) | 12 / 18 | 11.25 / 6 (+5.25) | 5 / 4 | 6 / 8 | 0 / 1 | 2 / 2 | 2.02 | 5 / 3 | 4.7 | venue away: 3.31 vs 2.74 ERA (worse here) · opp run factor 0.96 (strong) · 31 prior appearances this season |
| LAD | Brock Stewart (Starter) | 3 / 13 | 0 / 4.15 (-4.15) | 0 / 2 | 1 / 3 | 0 / 1 | 0 / 4 | 1.44 | 1 / 5 | 3.18 | opp run factor 1 (average) · 26 prior appearances this season |
| LAD | Jack Dreyer (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 1 | 0 / 1 | 0 / 1 | 0.41 | 1 / 0 | 0.83 | |
| LAD | Alex Vesia (Setup Man) | 3 / 2 | 0 / 0 | 0 / 0 | 0 / 2 | 0 / 0 | 1 / 1 | 0.33 | 2 / 1 | 0.72 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tommy Edman (2B) | LAD | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 2 / 0 | 1 / 0 | 1 / 1 | 1.26 | 0.304 average | no signal |
| Max Muncy (3B) | LAD | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.11 | 0.35 elite | bad day |
| Ty France (1B) | SD | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 2 / 1 | -1.07 | 0.334 above average | bad day |
| Will Smith (C) | LAD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0.93 | 0.385 elite | projection too low |
| Dustin Harris (LF) | SD | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.314 average | — |
| Jackson Merrill (CF) | SD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.348 elite | — |
| Manny Machado (3B) | SD | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 1 / 1 | -0.47 | 0.33 above average | — |
| Austin Hays (DH) | SD | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.299 below average | — |
| Fernando Tatis Jr. (RF) | SD | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.31 | 0.38 elite | — |
| Mookie Betts (SS) | LAD | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 0 | 0 / 0 | -0.29 | 0.34 elite | — |
| Luis Campusano (C) | SD | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0.14 | 0.328 above average | — |
| Xander Bogaerts (SS) | SD | 3 / 4 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.323 above average | — |
| Freddie Freeman (1B) | LAD | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | 0.14 | 0.366 elite | — |
| Kyle Tucker (RF) | LAD | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.334 above average | — |
| Andy Pages (CF) | LAD | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | -0.14 | 0.34 elite | — |
| Jake Cronenworth (2B) | SD | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.275 weak | — |
| Teoscar Hernández (LF) | LAD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.333 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.593 | positive favors home; negative favors away |
| Recent form | -0.066 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.041 | positive favors home; negative favors away |
| Composite | 0.58 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.75-5.28 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.53 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.75-5.28 | 4-5 | -0.528 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 4-5 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-6 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-6 | 4-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-6 | 4-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-6 | 4-6 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| SD | Luis Campusano | batter / C | worse | predicted_RBI 2.56 |
| LAD | Max Muncy | batter / 3B | better | predicted_RBI 2.29 |
| SD | Austin Hays | batter / DH | worse | predicted_BB 1.968 |
| SD | Dustin Harris | batter / LF | worse | predicted_BB 1.765 |
| LAD | Kyle Tucker | batter / RF | better | predicted_H 1.66 |
| LAD | Will Smith | batter / C | worse | predicted_AB 1.636 |
| LAD | Teoscar Hernández | batter / LF | deboosted | predicted_RBI 1.53 |
| SD | Jackson Merrill | batter / CF | worse | predicted_H -1.36 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | LAD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | LAD |
| info | CURRENT_PITCHER_DUPLICATION | SD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | SD |
| info | CURRENT_FINALIZED_MATCH_BOX | LAD model-prediction batting totals differ from final simulation box score (AB: current=34, sim=36; H: current=7, sim=11; 2B: current=1, sim=4; 3B: current=0, sim=1; RBI: current=4, sim=6; R: current=5, sim=6; SO: current=7, sim=3). | LAD |
| info | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Will Smith: AB current=4 box=5, H current=1 box=0, SO current=1 box=0; Freddie Freeman: H current=1 box=2, 2B current=0 box=1, R current=0 box=1, SO current=1 box=0; Max Muncy: H current=1 box=3, 2B current=1 box=2, HR current=0 box=1, RBI current=1 box=3; Josue De Paula: AB current=3 box=4, R current=1 box=0, BB current=1 box=0, SO current=0 box=1; Mookie Betts: H current=1 box=2, HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Kyle Tucker: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, RBI current=0 box=1; Teoscar Hernández: H current=1 box=2, 3B current=0 box=1, RBI current=1 box=2, R current=0 box=1; Andy Pages: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1 | LAD |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model pitcher projections differ from final simulation pitching box score (H: current=9, sim=11; BB: current=3, sim=4). | SD |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; 2B: current=1, sim=2; HR: current=1, sim=2; R: current=6, sim=4; BB: current=3, sim=8; SO: current=9, sim=8; HBP: current=0, sim=1). | SD |
| info | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Fernando Tatis Jr.: 2B current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Ty France: HR current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Dustin Harris: AB current=4 box=3, H current=1 box=0, R current=1 box=0, BB current=0 box=2; Jackson Merrill: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Manny Machado: H current=1 box=2, HR current=0 box=1, R current=0 box=1, SO current=1 box=0; Austin Hays: 2B current=0 box=1, R current=0 box=1, BB current=0 box=2; Luis Campusano: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=3, R current=0 box=1; Xander Bogaerts: AB current=4 box=3, H current=0 box=1, 2B current=0 box=1, R current=1 box=0 | SD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| STL | Andre Pallante | 2 ER / 16 outs | 1 ER / 18 outs | -1 |
| PIT | Jared Jones | 1 ER / 15 outs | 0 ER / 21 outs | -1 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Andre Pallante (STL) threw 18 outs, 1 ER = 1.5 ERA against a projected 3.38 ERA (-1.88 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 5 hits and 0 HR, against a projected 5 runs / 9 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Jared Jones (PIT) threw 21 outs, 0 ER = 0 ERA against a projected 1.8 ERA (-1.8 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 0 runs on 1 hits and 0 HR, against a projected 4 runs / 8 hits (-4 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| STL | Andre Pallante (Starter) | 18 / 16 | 1.5 / 3.38 | 1 / 2 | 3 / 2 | 0 / 2 | 2 / 1 | 1.83 | 2 / 10 | 2.86 | venue away: 2.75 vs 4.41 ERA (ok) · opp run factor 0.98 (average) · 27 prior appearances this season |
| PIT | Jared Jones (Starter) | 21 / 15 | 0 / 1.8 | 0 / 1 | 1 / 3 | 0 / 0 | 0 / 0 | 1.91 | 9 / 4 | 6.94 | venue home: 4.68 vs 3.54 ERA (worse here) · opp run factor 1.01 (average) · 19 prior appearances this season |
| PIT | Gregory Soto (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 2 | 0 / 0 | 1 / 0 | 0.55 | 2 / 1 | 1.36 | |
| PIT | Luke Weaver (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0.22 | 3 / 1 | 1.06 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jordan Walker (RF) | STL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.342 elite | bad day |
| Brandon Lowe (2B) | PIT | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.328 above average | bad day |
| Alec Burleson (1B) | STL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -1.11 | 0.373 elite | bad day |
| JJ Wetherholt (2B) | STL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.349 elite | bad day |
| Iván Herrera (DH) | STL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 4 / 1 | -0.8 | 0.335 above average | bad day |
| Leonardo Bernal (C) | STL | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.78 | 0.379 elite | bad day |
| Konnor Griffin (SS) | PIT | 4 / 4 | 2 / 1 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0.78 | 0.307 average | no signal |
| Oneil Cruz (CF) | PIT | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.353 elite | — |
| Jacob Gonzalez (3B) | PIT | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.305 average | — |
| Ronny Simon (RF) | PIT | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.328 above average | — |
| Bryan Reynolds (LF) | PIT | 3 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.354 elite | — |
| Nathan Church (CF) | STL | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0.31 | 0.288 below average | — |
| Spencer Horwitz (1B) | PIT | 2 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 0.31 | 0.313 average | — |
| Thomas Saggese (3B) | STL | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.314 average | — |
| Masyn Winn (SS) | STL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.297 below average | — |
| Rafael Flores Jr. (C) | PIT | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.362 elite | — |
| Bryan Torres (LF) | STL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.289 below average | — |
| Ryan O'Hearn (DH) | PIT | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.316 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.333 | positive favors home; negative favors away |
| Recent form | 0.49 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.026 | positive favors home; negative favors away |
| Composite | 0.428 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.46-5.4 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.539 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.46-5.4 | 4-5 | 0.056 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 4-5 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 4-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | 4-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-5 | 4-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| STL | Bryan Torres | batter / LF | worse | predicted_H 2.4 |
| STL | Masyn Winn | batter / SS | worse | predicted_SO 2.16 |
| PIT | Brandon Lowe | batter / 2B | worse | predicted_RBI 2.08 |
| PIT | Oneil Cruz | batter / CF | worse | predicted_AB -1.79 |
| STL | Jordan Walker | batter / RF | deboosted | predicted_RBI 1.54 |
| PIT | Ronny Simon | batter / RF | worse | predicted_SO 1.533 |
| STL | Riley O'Brien | pitcher / Closer | better | predicted_IP 1.433 |
| PIT | Spencer Horwitz | batter / 1B | better | predicted_AB -1.404 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | PIT pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | PIT |
| info | CURRENT_PITCHER_DUPLICATION | STL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | STL |
| info | CURRENT_FINALIZED_MATCH_BOX | PIT model-prediction batting totals differ from final simulation box score (AB: current=35, sim=28; H: current=9, sim=4; 2B: current=2, sim=0; HR: current=1, sim=3; BB: current=3, sim=2; SO: current=8, sim=12). | PIT |
| info | CURRENT_PLAYER_MATCH_BOX | PIT current finalized hitter lines are model predictions and differ from the simulation box score: Konnor Griffin: 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Oneil Cruz: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Ryan O'Hearn: AB current=4 box=3, HR current=0 box=1, R current=0 box=1, SO current=1 box=0; Brandon Lowe: RBI current=1 box=3, SO current=1 box=2; Bryan Reynolds: H current=1 box=0, 2B current=1 box=0, R current=1 box=0, BB current=1 box=0; Jacob Gonzalez: H current=1 box=0, SO current=1 box=0; Rafael Flores Jr.: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0; Ronny Simon: AB current=4 box=2, H current=1 box=0, BB current=0 box=1, SO current=1 box=2 | PIT |
| info | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; 3B: current=0, sim=1; RBI: current=5, sim=4; BB: current=3, sim=1; SF: current=0, sim=1). | STL |
| info | CURRENT_PLAYER_MATCH_BOX | STL current finalized hitter lines are model predictions and differ from the simulation box score: JJ Wetherholt: R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Iván Herrera: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=1 box=0; Bryan Torres: AB current=3 box=4, H current=0 box=3, 3B current=0 box=1, R current=0 box=1; Thomas Saggese: AB current=4 box=2, H current=1 box=0, RBI current=0 box=1, R current=0 box=1; Jordan Walker: RBI current=1 box=2; Leonardo Bernal: SO current=1 box=0; Alec Burleson: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Nathan Church: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0 | STL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TB | Nick Martinez | 1 ER / 18 outs | 1 ER / 20 outs | 0 |
| NYY | Carlos Rodón | 1 ER / 17 outs | 4 ER / 20 outs | 3 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Nick Martinez (TB) threw 18 outs, 2 ER = 3 ERA against a projected 1.5 ERA (1.5 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 5 hits and 1 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: offense: the lineup scored well below its projection
HOME pitching
Carlos Rodón (NYY) threw 24 outs, 0 ER = 0 ERA against a projected 1.59 ERA (-1.59 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The AWAY lineup he faced produced 0 runs on 3 hits and 0 HR, against a projected 5 runs / 7 hits (-5 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TB | Nick Martinez (Starter) | 18 / 18 | 3 / 1.5 | 2 / 1 | 5 / 5 | 1 / 0 | 1 / 0 | 0.53 | 7 / 5 | 2.96 | venue away: 1.99 vs 3.9 ERA (ok) · opp run factor 0.97 (strong) · 29 prior appearances this season |
| NYY | Carlos Rodón (Starter) | 24 / 17 | 0 / 1.59 | 0 / 1 | 3 / 1 | 0 / 1 | 0 / 1 | 2.02 | 8 / 7 | 5.62 | venue home: 2.61 vs 3.18 ERA (ok) · opp run factor 1.05 (strong) · 15 prior appearances this season |
| NYY | David Bednar (Closer) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 2 | 0 / 0 | 0 / 1 | 0.19 | 0 / 1 | 1.16 |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Junior Caminero (3B) | TB | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.363 elite | bad day |
| Yandy Díaz (DH) | TB | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.347 elite | bad day |
| Liam Hicks (C) | TB | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.32 average | no signal |
| Anthony Volpe (2B) | NYY | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | -0.8 | 0.296 below average | projection too high |
| Jonny DeLuca (CF) | TB | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.78 | 0.259 weak | projection too high |
| Ben Rice (DH) | NYY | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | 1 / 1 | -0.62 | 0.376 elite | bad day |
| Heliot Ramos (RF) | NYY | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.329 above average | — |
| Luis García Jr. (1B) | NYY | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.345 elite | — |
| Jonathan Aranda (1B) | TB | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.345 elite | — |
| Cody Bellinger (LF) | NYY | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 0.29 | 0.338 above average | — |
| Chandler Simpson (LF) | TB | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0.266 weak | — |
| Richie Palacios (2B) | TB | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.31 average | — |
| Jorge Mateo (SS) | TB | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.28 weak | — |
| Victor Mesa Jr. (RF) | TB | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 | 0.333 above average | — |
| George Lombard Jr. (SS) | NYY | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.298 below average | — |
| José Caballero (3B) | NYY | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.282 weak | — |
| Ali Sánchez (C) | NYY | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.252 weak | — |
| Spencer Jones (CF) | NYY | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.328 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.082 | positive favors home; negative favors away |
| Recent form | -0.234 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.08 | positive favors home; negative favors away |
| Composite | -0.009 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.81-5.21 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-4 | 0.535 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.81-5.21 | 4-5 | -0.398 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 3-4 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 3-4 | 3-4 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | 3-4 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | 3-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-4 | 3-4 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| TB | Yandy Díaz | batter / DH | worse | predicted_SO 2.358 |
| TB | Alex Cook | pitcher / Reliever | worse | predicted_ER 2 |
| TB | Junior Caminero | batter / 3B | worse | predicted_AB -1.63 |
| TB | Chandler Simpson | batter / LF | worse | predicted_H -1.48 |
| NYY | Cody Bellinger | batter / LF | worse | predicted_H -1.46 |
| NYY | Luis García Jr. | batter / 1B | better | predicted_RBI 1.45 |
| TB | Jorge Mateo | batter / SS | worse | predicted_AB 1.356 |
| NYY | Anthony Volpe | batter / 2B | worse | predicted_SO 1.222 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | NYY pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | NYY |
| info | CURRENT_PITCHER_DUPLICATION | TB pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TB |
| info | CURRENT_FINALIZED_MATCH_BOX | NYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=37; H: current=8, sim=7; 2B: current=1, sim=0; HR: current=1, sim=2; BB: current=3, sim=2; HBP: current=0, sim=2). | NYY |
| info | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines are model predictions and differ from the simulation box score: Heliot Ramos: AB current=3 box=4, R current=1 box=0, HBP current=0 box=1; George Lombard Jr.: AB current=4 box=5, H current=1 box=2, RBI current=0 box=1, SO current=1 box=2; Ben Rice: AB current=4 box=5, BB current=1 box=0, SO current=1 box=0; Anthony Volpe: H current=1 box=0, SO current=1 box=2; Cody Bellinger: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; José Caballero: AB current=3 box=4, H current=1 box=0; Luis García Jr.: AB current=4 box=5, H current=1 box=2, HR current=0 box=1, RBI current=1 box=2; Ali Sánchez: H current=0 box=1, R current=0 box=1, BB current=0 box=1 | NYY |
| info | CURRENT_FINALIZED_MATCH_BOX | TB model-prediction batting totals differ from final simulation box score (H: current=7, sim=4; RBI: current=5, sim=3; R: current=5, sim=3; BB: current=4, sim=3; SO: current=8, sim=10). | TB |
| info | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines are model predictions and differ from the simulation box score: Jonathan Aranda: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Yandy Díaz: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Junior Caminero: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jonny DeLuca: 2B current=1 box=0, R current=0 box=1, SO current=1 box=0; Liam Hicks: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0; Chandler Simpson: H current=1 box=0, SO current=0 box=1; Richie Palacios: H current=0 box=1, 2B current=0 box=1, RBI current=0 box=1, BB current=0 box=1; Jorge Mateo: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, RBI current=0 box=1 | TB |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Drew Rasmussen (TB) threw 20 outs, 1 ER = 1.35 ERA against a projected 3 ERA (-1.65 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 1 runs on 2 hits and 0 HR, against a projected 4 runs / 6 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Max Fried (NYY) threw 20 outs, 4 ER = 5.4 ERA against a projected 4.5 ERA (0.9 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 1 runs on 5 hits and 0 HR, against a projected 3 runs / 5 hits (-2 runs vs projection).
No individual hitter beat his projection by a meaningful margin.
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TB | Drew Rasmussen (Starter) | 20 / 18 | 1.35 / 3 | 1 / 2 | 1 / 5 | 0 / 1 | 3 / 0 | 0.82 | 11 / 5 | 4.31 | venue away: 2.57 vs 2.87 ERA (ok) · opp run factor 0.99 (strong) · 29 prior appearances this season |
| TB | Bryan Baker (Closer) | 3 / 3 | 0 / 18 (-18.00) | 0 / 2 | 1 / 3 | 0 / 1 | 1 / 0 | 0.27 | 1 / 0 | 0.72 | |
| TB | Cam Booser (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 2 | 0 / 0 | 0 / 0 | 0.12 | 1 / 0 | 0.86 | |
| NYY | Max Fried (Starter) | 20 / 18 | 5.4 / 4.5 | 4 / 3 | 6 / 6 | 0 / 0 | 2 / 5 | 1.32 | 4 / 5 | 5.57 | venue home: 3.66 vs 2.34 ERA (worse here) · opp run factor 1 (strong) · 19 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Ben Rice (DH) | NYY | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -1.73 | 0.376 elite | bad day |
| Junior Caminero (3B) | TB | 5 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.95 | 0.363 elite | bad day |
| Jonathan Aranda (1B) | TB | 1 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.8 | 0.345 elite | bad day |
| Luis García Jr. (1B) | NYY | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.78 | 0.345 elite | bad day |
| Cody Bellinger (LF) | NYY | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.338 above average | — |
| Heliot Ramos (RF) | NYY | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 0.31 | 0.329 above average | — |
| Yandy Díaz (DH) | TB | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 4 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.347 elite | — |
| Spencer Jones (CF) | NYY | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 2 | -0.14 | 0.328 above average | — |
| Jonny DeLuca (CF) | TB | 4 / 4 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | 0 | 0.259 weak | — |
| Chandler Simpson (LF) | TB | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0 | 0.266 weak | — |
| José Caballero (3B) | NYY | 0 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.282 weak | — |
| George Lombard Jr. (SS) | NYY | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.298 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.082 | positive favors home; negative favors away |
| Recent form | -0.234 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.01 | positive favors home; negative favors away |
| Composite | 0.145 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.35-4.77 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.521 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.35-4.77 | 4-5 | 0.583 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 4-5 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail) |
| embedded_savant_run_environment | 4-5 | 4-5 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-5 | 4-5 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-5 | 4-5 | 0 | Capped at max 12 realistic runs |
| simulation_result | 4-5 | 4-5 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| NYY | José Caballero | batter / 3B | better | predicted_RBI 2.583 |
| TB | Jonathan Aranda | batter / 1B | neutral | predicted_RBI 2.2 |
| NYY | Spencer Jones | batter / CF | better | predicted_H 2.09 |
| TB | Yandy Díaz | batter / DH | worse | predicted_BB 1.628 |
| NYY | Ali Sánchez | batter / C | worse | predicted_AB 1.5 |
| TB | Jorge Mateo | batter / SS | worse | predicted_AB 1.356 |
| NYY | Cody Bellinger | batter / LF | worse | predicted_AB -1.17 |
| TB | Liam Hicks | batter / C | worse | predicted_H -1.14 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | NYY pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | NYY |
| info | CURRENT_PITCHER_DUPLICATION | TB pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TB |
| info | CURRENT_FINALIZED_MATCH_BOX | NYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=36; H: current=7, sim=10; 2B: current=1, sim=4; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=0; SO: current=10, sim=5). | NYY |
| info | CURRENT_PLAYER_MATCH_BOX | NYY current finalized hitter lines are model predictions and differ from the simulation box score: Heliot Ramos: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Luis García Jr.: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Ben Rice: HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Cody Bellinger: 2B current=0 box=1, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; Anthony Volpe: AB current=3 box=4, 2B current=0 box=1, BB current=1 box=0; José Caballero: AB current=3 box=4, H current=0 box=3, 2B current=0 box=1, HR current=0 box=1; Ali Sánchez: AB current=3 box=4, SO current=1 box=0; Spencer Jones: H current=1 box=3, 2B current=0 box=1, HR current=0 box=1, RBI current=1 box=2 | NYY |
| info | CURRENT_FINALIZED_MATCH_BOX | TB model-prediction batting totals differ from final simulation box score (H: current=8, sim=7; HR: current=1, sim=0; RBI: current=5, sim=4; R: current=5, sim=4; BB: current=3, sim=5; SO: current=8, sim=7; HBP: current=0, sim=1). | TB |
| info | CURRENT_PLAYER_MATCH_BOX | TB current finalized hitter lines are model predictions and differ from the simulation box score: Jonathan Aranda: 2B current=0 box=1, RBI current=1 box=3; Liam Hicks: H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Jonny DeLuca: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Junior Caminero: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Yandy Díaz: AB current=4 box=3, H current=1 box=0, BB current=1 box=2, SO current=1 box=2; Victor Mesa Jr.: AB current=4 box=3, H current=1 box=2, HBP current=0 box=1; Richie Palacios: BB current=0 box=1, SO current=1 box=0; Jorge Mateo: AB current=3 box=4, H current=0 box=1 | TB |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| WAS | Riley Cornelio | 2 ER / 12 outs | 0 ER / 8 outs | -2 |
| DET | Drew Anderson | 3 ER / 15 outs | 3 ER / 18 outs | 0 |
Every value is actual / projected. Run impact approximates how far each hitter's real line moved run expectancy from its projection; it orders the movers and is not a published stat.
Top deviations that drove the game:
Starter miss: Riley Cornelio (WAS) posted 0.00 ERA vs projected 4.50 (0 ER in 8 outs); no credible venue, opponent-strength or experience signal explains it — an outlier start (variance).
What to do: Variance — no model change is warranted for this start.
Pitcher versus batter: what actually broke this game
Per-pitch matchup fields are not populated in the current feeds, so this is reconstructed from the settled box: each starter's workload-adjusted ERA, the bullpen share behind him, and the opposing lineup's real production against its projection, with the hitters who beat that projection named.
AWAY pitching
Riley Cornelio (WAS) threw 8 outs, 0 ER = 0 ERA against a projected 4.5 ERA (-4.5 ERA error)
Bullpen behind him: 0 ER over 7 outs.
The HOME lineup he faced produced 1 runs on 7 hits and 0 HR, against a projected 4 runs / 7 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Drew Anderson (DET) threw 18 outs, 3 ER = 4.5 ERA against a projected 5.4 ERA (-0.9 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 3 runs on 7 hits and 2 HR, against a projected 4 runs / 7 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)
| Pitcher | Team | Outs | ERA | ER | H | HR | BB | exp BB | SO | exp SO | Context (as-of) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| WAS | Riley Cornelio (Starter) | 8 / 12 | 0 / 4.5 (-4.50) | 0 / 2 | 1 / 5 | 0 / 1 | 3 / 2 | 0.97 | 4 / 7 | 7.26 | venue away: 0 vs 0 ERA (ok) · opp run factor 0.99 (average) · 16 prior appearances this season |
| WAS | Erik Tolman (Closer) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 0 / 2 | 0 / 0 | 1 / 0 | 0.44 | 3 / 2 | 0.91 | |
| WAS | Jack Sinclair (Reliever) | 4 / 0 | 0 / n/a | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | n/a | 1 / 1 | n/a | |
| DET | Drew Anderson (Starter) | 18 / 15 | 4.5 / 5.4 | 3 / 3 | 5 / 3 | 2 / 1 | 0 / 3 | 2.82 | 5 / 9 | 4.44 | venue home: 2.66 vs 2.04 ERA (worse here) · opp run factor 0.98 (strong) · 48 prior appearances this season |
Hitters: actual / projected (sorted by run impact vs projection)
| Batter | Team | AB | H | 2B | 3B | HR | RBI | R | BB | SO | Run impact | Season xwOBA | Signal |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CJ Abrams (2B) | WAS | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 2 / 0 | 3 / 1 | 2 / 1 | 0 / 1 | 1 / 1 | 1.69 | 0.327 above average | projection too low |
| Eduardo Valencia (C) | DET | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -1.4 | 0.351 elite | bad day |
| James Wood (RF) | WAS | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.26 | 0.408 elite | bad day |
| Spencer Torkelson (1B) | DET | 0 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 / 1 | 0.66 | 0.312 average | no signal |
| Dylan Crews (CF) | WAS | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.317 average | — |
| Yohandy Morales (DH) | WAS | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.336 above average | — |
| Daylen Lile (LF) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.327 above average | — |
| Javier Báez (LF) | DET | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.263 weak | — |
| Kevin McGonigle (3B) | DET | 5 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 0 | 0.45 | 0.359 elite | — |
| Hao-Yu Lee (2B) | DET | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 0 | 1 / 1 | 0.35 | 0.301 below average | — |
| Jorbit Vivas (3B) | WAS | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | -0.33 | 0.294 below average | — |
| Ben Malgeri (RF) | DET | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.318 average | — |
| Max Clark (CF) | DET | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.321 above average | — |
| Nasim Nuñez (SS) | WAS | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.267 weak | — |
| Andrés Chaparro (1B) | WAS | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.345 elite | — |
| Keibert Ruiz (C) | WAS | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0.288 below average | — |
| Gleyber Torres (DH) | DET | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | 0 | 0.324 above average | — |
| John Peck (SS) | DET | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.33 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.39 | positive favors home; negative favors away |
| Recent form | 0.618 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.017 | positive favors home; negative favors away |
| Composite | 0.587 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.54-4.5 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-4 | 0.571 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 3-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 3-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.54-4.5 | 4-5 | 0.041 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 3-4 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run) |
| embedded_savant_run_environment | 3-4 | 3-4 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 3-4 | 3-4 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 3-4 | 3-4 | 0 | Capped at max 12 realistic runs |
| simulation_result | 3-4 | 3-4 | 0 | Final inning-by-inning simulation result |
These are pregame model adjustments, not claims about actual postgame player error.
| Team | Player | Role | Net effect | Largest change |
|---|---|---|---|---|
| DET | Kevin McGonigle | batter / 3B | worse | predicted_SO 2.396 |
| WAS | CJ Abrams | batter / 2B | worse | predicted_RBI 2.327 |
| DET | Javier Báez | batter / LF | better | predicted_H 2.189 |
| DET | Drew Anderson | pitcher / Starter | better | predicted_SO 2 |
| DET | Max Clark | batter / CF | better | predicted_H 1.98 |
| DET | Ben Malgeri | batter / RF | worse | predicted_BB 1.663 |
| DET | Spencer Torkelson | batter / 1B | worse | predicted_AB 1.651 |
| DET | Eduardo Valencia | batter / C | worse | predicted_H -1.64 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | DET pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | DET |
| info | CURRENT_PITCHER_DUPLICATION | WAS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | WAS |
| info | CURRENT_FINALIZED_MATCH_BOX | DET model-prediction batting totals differ from final simulation box score (AB: current=31, sim=40; H: current=7, sim=10; 2B: current=1, sim=4; 3B: current=0, sim=1; SO: current=8, sim=14). | DET |
| info | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Gleyber Torres: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, R current=1 box=0; Kevin McGonigle: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=0 box=3; Ben Malgeri: H current=1 box=0, BB current=0 box=2, SO current=1 box=2; Eduardo Valencia: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Javier Báez: AB current=3 box=5, H current=1 box=3, 2B current=0 box=2, 3B current=0 box=1; Spencer Torkelson: AB current=3 box=5, BB current=1 box=0, SO current=1 box=0; Hao-Yu Lee: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0, HR current=0 box=1; Max Clark: AB current=3 box=5, H current=1 box=3, 2B current=0 box=1, RBI current=0 box=1 | DET |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=31, sim=33; H: current=7, sim=3; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=7; SO: current=8, sim=9). | WAS |
| info | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: Dylan Crews: H current=1 box=0, BB current=0 box=1, SO current=1 box=0; CJ Abrams: AB current=4 box=5, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=3; Yohandy Morales: AB current=3 box=4, H current=1 box=0, R current=1 box=0, SO current=1 box=0; Daylen Lile: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Nasim Nuñez: AB current=3 box=2, H current=0 box=1, R current=0 box=1, BB current=0 box=2; James Wood: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Andrés Chaparro: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, SO current=1 box=2; Keibert Ruiz: 2B current=0 box=1, R current=0 box=1, BB current=0 box=1, SO current=0 box=1 | WAS |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
Each candidate fix, and exactly which games it would help versus hurt. A lever that repairs one game and breaks two is visible here before it is proposed.
Compared against packet 20260921. Last recorded change: v4.30.0 (2026-09-08) Hitter shrinkage is derived from the between-hitter spread rather than fitted to slate error, so an established extreme profile is no longer flattened toward the league.
| Metric | Prior | Current | Δ | Result |
|---|---|---|---|---|
| brier_score | 0.2409 | 0.2448 | +0.003936 | regressed |
| accuracy | 0.5833 | 0.563 | -0.0203 | regressed |
| team_run_mae | 2.4917 | 2.4958 | +0.0041 | regressed |
| total_run_mae | 3.2833 | 3.3109 | +0.0276 | regressed |
| calibration_error | 0.0887 | 0.1034 | +0.0147 | regressed |
| starter_er_mae | 1.6969 | 1.712 | +0.0151 | regressed |
| starter_outs_mae | 3.5276 | 3.516 | -0.0116 | improved |