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_20260923.json | 404001 |
| forensic deep audit | loaded | probability, provenance, starter and decision contracts | /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260923.json | 256114 |
| continuous learning | loaded | pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons | /app/output/learning/continuous_learning_daily_20260923.json | 2651580 |
| detailed report | loaded | full game and simulation rendering | /app/output/reports/detailed_20260923.html | 382569 |
| ultra detailed player audit | loaded | player-level prediction trace | /app/output/reports/20260923_ultra_detailed_player_audit.html | 35142661 |
| structural audit | loaded | all invariant findings | /app/output/reports/audit_report_20260923.html | 2035176 |
| integrity revision audit | missing | post-Luna remediation proof for immutable revision artifacts | /app/output/reports/audit_report_20260923_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 | NYM@TEX | 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 | artifact_integrity | Canonical artifact warning requires reconciliation structural audit totals: {'critical': 0, 'error': 0, 'warning': 2, 'info': 119} | slate-wide | Do thisFix the flagged stat or presentation contract before treating this slate as clean evidence. Don't concludeA warning flags a display or contract issue; it does not prove the model picked the wrong side. |
| HIGH | model_validation | Validated run models explain very little holdout variance home/away/total R² = 0.0040/0.0349/0.0031 | 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, TOR@BAL, TOR@BAL, 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. |
| INFO | coverage | Every settled game received structural QA 16/16 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, TOR@BAL, TOR@BAL, 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, TOR@BAL, TOR@BAL, 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. |
| 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 | 0 | 3/11 | no | param |
| pipeline_winner_instability | 0 | 5/11 | no | code/diagnostic |
| simulation_inert_on_slate | 11 | 11/11 | yes | code/diagnostic |
| single_slate_calibration_instability | 0 | 7/11 | no | param |
| weak_run_model_signal | 11 | 11/11 | yes | code/diagnostic |
| Metric | Direction | Series (old → new) |
|---|---|---|
| winner_accuracy | regressing | [0.6, 0.7, 0.4, 0.6667, 0.4444, 0.6667, 0.7333, 0.6, 0.3333, 0.4, 0.5] |
| weighted_calibration_error | improving | [0.0827, 0.2812, 0.2795, 0.1661, 0.1016, 0.1247, 0.3458, 0.3184, 0.2028, 0.1881, 0.1108] |
| margin_bias | improving | [-1.8, -0.4, -1.667, -1.133, -2.111, -2.0, -0.667, -1.533, -2.667, -1.867, -1.188] |
| team_run_error_on_losses | regressing | [5.0, 6.333, 5.556, 6.4, 3.6, 5.2, 6.5, 6.5, 3.0, 6.222, 5.75] |
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 | 8/16 | 50% | 2.053 | 3.025 | 2.729 |
| variance_applied | 6/16 | 37.5% | 2.062 | 3.125 | 2.875 |
| enhanced_prediction | 8/16 | 50% | 2.219 | 3.688 | 2.438 |
| embedded_savant_run_environment | 8/16 | 50% | 2.281 | 3.812 | 2.438 |
| fundamental_edge_target_review | 8/16 | 50% | 2.281 | 3.812 | 2.438 |
| capped_target | 8/16 | 50% | 2.281 | 3.812 | 2.438 |
| simulation_result | 8/16 | 50% | 2.281 | 3.812 | 2.438 |
| published_final | 8/16 | 50% | 2.281 | 3.812 | 2.438 |
| Transition | Δ accuracy | Δ hits | Δ team-run MAE | Δ margin MAE | Games whose winner/tie changed |
|---|---|---|---|---|---|
| historical_ml → variance_applied | -0.125 | -2 | 0.0095 | 0.1457 | ARI@COL: ARI → TIE; HOU@SEA: SEA → TIE; MIA@CHC: CHC → TIE |
| variance_applied → enhanced_prediction | 0.125 | 2 | 0.1563 | -0.4375 | ARI@COL: TIE → ARI; CLE@BOS: BOS → CLE; HOU@SEA: TIE → SEA; MIA@CHC: TIE → CHC; TB@NYY: NYY → TB; TOR@BAL: TOR → BAL; WAS@DET: DET → WAS |
| enhanced_prediction → embedded_savant_run_environment | 0 | 0 | 0.0624 | 0 | |
| embedded_savant_run_environment → fundamental_edge_target_review | 0 | 0 | 0 | 0 | |
| 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.5896 | 0.6329 | 0.6329 | 0.6329 | 0.56 | score coherence followed by matchup-recency guardrail |
| CHW@KC | miss | 0.6938 | 0.6519 | 0.6519 | 0.613 | 0.56 | score coherence followed by matchup-recency guardrail |
| CIN@ATL | hit | 0.7023 | 0.6488 | 0.6488 | 0.6114 | 0.56 | 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 | hit | 0.5518 | 0.5314 | 0.5314 | 0.5314 | 0.5153 | score coherence followed by matchup-recency guardrail |
| LAA@OAK | miss | 0.5613 | 0.5821 | 0.5821 | 0.5781 | 0.54 | score coherence followed by matchup-recency guardrail |
| MIA@CHC | miss | 0.5725 | 0.5686 | 0.5686 | 0.5686 | 0.53 | score coherence followed by matchup-recency guardrail |
| MIL@PHI | hit | 0.6273 | 0.6418 | 0.6418 | 0.6418 | 0.56 | score coherence followed by matchup-recency guardrail |
| MIN@SF | hit | 0.544 | 0.5271 | 0.5271 | 0.5271 | 0.5111 | score coherence followed by matchup-recency guardrail |
| NYM@TEX | hit | 0.6402 | 0.6218 | 0.6218 | 0.6218 | 0.5954 | no recorded transformation explains the publication delta |
| SD@LAD | miss | 0.5606 | 0.5414 | 0.5414 | 0.5414 | 0.5352 | score coherence followed by matchup-recency guardrail |
| STL@PIT | miss | 0.6152 | 0.581 | 0.581 | 0.5775 | 0.556 | score coherence followed by matchup-recency guardrail |
| TB@NYY | miss | 0.5 | 0.5073 | 0.5073 | 0.5073 | 0.5053 | published probability matches the calibrated/governed value |
| TOR@BAL | hit | 0.5059 | 0.5073 | 0.5073 | 0.5073 | 0.505 | published probability matches the calibrated/governed value |
| TOR@BAL | miss | 0.5415 | 0.5258 | 0.5258 | 0.5258 | 0.5117 | score coherence followed by matchup-recency guardrail |
| WAS@DET | hit | 0.5 | 0.5073 | 0.5073 | 0.5073 | 0.505 | published probability matches the calibrated/governed value |
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 |
|---|---|---|---|---|---|---|
| 32 | 4 | 11 | 1 | 16 | -0.49 | -0.91 |
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.
3 of 16 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 |
|---|---|---|---|---|---|---|---|
| CLE@BOS | 0.677 | 0.587 | home | 0.495 | away | yes | miss |
| TB@NYY | 0.71 | 0.606 | home | 0.495 | away | yes | miss |
| WAS@DET | 0.616 | 0.555 | home | 0.495 | away | yes | hit |
Blend side survived on 13 of 16 games; the blend flagged a winner change on 3.
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.62 over 12 slates (sign shared by 0.50 of them, z = 1.32).
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.62 +/- 0.47 standard error: not separable from noise
lineup runs actual minus projected
Mean -0.25 over 12 slates (sign shared by 0.67 of them, z = -1.83).
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.25 +/- 0.14 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 |
|---|---|---|---|---|---|---|
| 20260922 | 15 | 0.400 | -0.32 | -0.97 | 3 | 11 |
| 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 |
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 | 2 | 2 | 0 |
| CHW@KC | 2 | 1 | 1 |
| CIN@ATL | 1 | 1 | 0 |
| CLE@BOS | 1 | 1 | 0 |
| HOU@SEA | 1 | 1 | 0 |
| LAA@OAK | 1 | 4 | -3 |
| MIA@CHC | 1 | 1 | 0 |
| MIL@PHI | 2 | 3 | -1 |
| MIN@SF | 1 | 2 | -1 |
| NYM@TEX | 3 | 5 | -2 |
| SD@LAD | 2 | 4 | -2 |
| STL@PIT | 1 | 4 | -3 |
| TB@NYY | 1 | 7 | -6 |
| TOR@BAL | 1 | 2 | -1 |
| TOR@BAL | 1 | 2 | -1 |
| WAS@DET | 2 | 2 | 0 |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| ARI | Merrill Kelly | 5 ER / 16 outs | 2 ER / 16 outs | -3 |
| COL | Mason Adams | 5 ER / 13 outs | 0 ER / 18 outs | -5 |
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: Mason Adams (COL) posted 0.00 ERA vs projected 10.38 (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
No settled pitching line for this club. The forecast named Merrill Kelly (ARI) at a projected 8.44 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 3 runs on 7 hits and 1 HR, against a projected 4 runs / 9 hits (-1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Mason Adams (COL) threw 18 outs, 0 ER = 0 ERA against a projected 10.38 ERA (-10.38 ERA error) only 5 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 5 runs on 8 hits and 1 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| COL | Mason Adams (Starter) | 18 / 13 | 0 / 10.38 (-10.38) | 0 / 5 | 5 / 6 | 0 / 2 | 0 / 4 | 2.4 | 8 / 4 | 4.75 | venue home: 9 vs 2.57 ERA (ok) · opp run factor 1.02 (average) · 5 prior appearances this season |
| COL | Jaden Hill (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.58 | 1 / 1 | 0.96 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Ezequiel Tovar (SS) | COL | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 2 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.279 weak | good day |
| Cole Carrigg (CF) | COL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.11 | 0.311 average | no signal |
| Tim Tawa (CF) | ARI | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.93 | 0.31 average | no signal |
| Nolan Arenado (3B) | ARI | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 0 | 2 / 1 | -0.93 | 0.296 below average | projection too high |
| Lars Nootbaar (LF) | ARI | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 1 | -0.8 | 0.341 elite | bad day |
| Geraldo Perdomo (SS) | ARI | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 2 / 0 | -0.8 | 0.328 above average | bad day |
| TJ Rumfield (1B) | COL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | -0.8 | 0.334 above average | bad day |
| Corbin Carroll (RF) | ARI | 4 / 4 | 1 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | 0.62 | 0.345 elite | projection too low |
| Mickey Moniak (RF) | COL | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.277 weak | — |
| Zac Veen (LF) | COL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.274 weak | — |
| Hunter Goodman (C) | COL | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.46 | 0.319 average | — |
| Ketel Marte (2B) | ARI | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | -0.31 | 0.343 elite | — |
| Jake McCarthy (DH) | COL | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.31 | 0.324 above average | — |
| Adael Amador (2B) | COL | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0.31 | 0.263 weak | — |
| Gabriel Moreno (C) | ARI | 4 / 4 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 0 | 0.3 | 0.362 elite | — |
| Pavin Smith (1B) | ARI | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.274 weak | — |
| Kyle Karros (3B) | COL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 | 0.338 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.174 | positive favors home; negative favors away |
| Recent form | -0.762 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.07 | positive favors home; negative favors away |
| Composite | -1.35 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.41-5.12 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 8-6 | 0.56 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 8-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 8-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 8-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.41-5.12 | 5-5 | -0.294 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 8-6 | 2 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 8-6 | 8-6 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 8-6 | 8-6 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 8-6 | 8-6 | -0 | Capped at max 12 realistic runs |
| simulation_result | 8-6 | 8-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 |
|---|---|---|---|---|
| COL | Jake McCarthy | batter / DH | better | predicted_H 2.853 |
| ARI | Jesús Sánchez | batter / DH | better | predicted_RBI 2.84 |
| ARI | Ketel Marte | batter / 2B | better | predicted_RBI 2.52 |
| COL | Mason Adams | pitcher / Starter | worse | predicted_H 2 |
| COL | Brennan Bernardino | pitcher / Setup Man | better | predicted_H -2 |
| COL | Adael Amador | batter / 2B | better | predicted_AB 1.81 |
| COL | Zac Veen | batter / LF | worse | predicted_H 1.59 |
| ARI | Geraldo Perdomo | batter / SS | worse | predicted_SO 1.457 |
| 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 (AB: current=33, sim=35; H: current=9, sim=8; 2B: current=2, sim=1; HR: current=1, sim=3; RBI: current=5, sim=8; R: current=4, sim=8; BB: current=3, sim=5; SO: current=6, sim=8). | ARI |
| info | CURRENT_PLAYER_MATCH_BOX | ARI current finalized hitter lines are model predictions and differ from the simulation box score: Lars Nootbaar: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1, SO current=1 box=2; Gabriel Moreno: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Pavin Smith: H current=1 box=0, R current=0 box=1, BB current=0 box=1; Geraldo Perdomo: AB current=4 box=5, H current=1 box=0, BB current=1 box=0, SO current=0 box=2; Ketel Marte: H current=1 box=2, 2B current=1 box=0, HR current=0 box=2, RBI current=1 box=3; Tim Tawa: RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Nolan Arenado: HR current=1 box=0, RBI current=1 box=0, SO current=1 box=0; Corbin Carroll: H current=1 box=2 | ARI |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model pitcher projections differ from final simulation pitching box score (ER: current=7, sim=8). | COL |
| info | CURRENT_FINALIZED_MATCH_BOX | COL model-prediction batting totals differ from final simulation box score (AB: current=34, sim=39; H: current=9, sim=13; RBI: current=5, sim=6; R: current=4, sim=6; SO: current=7, sim=5; SF: 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: AB current=4 box=5, H current=1 box=4, RBI current=1 box=2, SO current=1 box=0; Cole Carrigg: 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Adael Amador: AB current=4 box=5, HR current=0 box=1, RBI current=1 box=2, SO current=0 box=1; Mickey Moniak: RBI current=1 box=0, BB current=0 box=1; Hunter Goodman: H current=1 box=0, HR current=1 box=0, SF current=0 box=1; Kyle Karros: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, R current=0 box=1; TJ Rumfield: H current=1 box=0, SO current=0 box=1; Zac Veen: AB current=3 box=4, H current=1 box=2, RBI current=0 box=1, 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 | Bryan Hudson | 2 ER / 15 outs | 3 ER / 1 outs | 1 |
| KC | Seth Lugo | 3 ER / 14 outs | 4 ER / 10 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: Seth Lugo (KC) posted 10.80 ERA vs projected 5.79 (4 ER in 10 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 Bryan Hudson (CHW) 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 5 runs on 12 hits and 0 HR, against a projected 4 runs / 9 hits (1 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Seth Lugo (KC) threw 10 outs, 4 ER = 10.8 ERA against a projected 5.79 ERA (5.01 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 4 runs on 9 hits and 0 HR, against a projected 5 runs / 8 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 | Seth Lugo (Starter) | 10 / 14 | 10.8 / 5.79 (+5.01) | 4 / 3 | 7 / 4 | 0 / 0 | 0 / 6 | 1.63 | 3 / 6 | 3.8 | venue home: 4.09 vs 6.1 ERA (ok) · opp run factor 1.03 (average) · 31 prior appearances this season |
| KC | Connor Thomas (Middle Reliever (High Leverage)) | 6 / 3 | 0 / 27 (-27.00) | 0 / 3 | 1 / 4 | 0 / 0 | 0 / 0 | 0.46 | 1 / 1 | 0.83 | |
| KC | Steven Cruz (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.31 | 2 / 0 | 1.01 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Maikel Garcia (3B) | KC | 3 / 4 | 3 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 3 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 1.27 | 0.313 average | no signal |
| Braden Montgomery (RF) | CHW | 4 / 3 | 3 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 1.08 | 0.325 above average | projection too low |
| Munetaka Murakami (1B) | CHW | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.95 | 0.344 elite | bad day |
| Tristan Peters (CF) | CHW | 3 / 3 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.78 | 0.315 average | no signal |
| Bobby Witt Jr. (SS) | KC | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.379 elite | bad day |
| Andrew Benintendi (DH) | CHW | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.307 average | — |
| Chase Meidroth (2B) | CHW | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.47 | 0.299 below average | — |
| Colson Montgomery (SS) | CHW | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | -0.47 | 0.301 below average | — |
| John Rave (CF) | KC | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.311 average | — |
| Michael Massey (2B) | KC | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.305 average | — |
| Isaac Collins (LF) | KC | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | -0.47 | 0.294 below average | — |
| Miguel Vargas (3B) | CHW | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.38 elite | — |
| Carter Jensen (C) | KC | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.32 | 0.31 average | — |
| Sam Antonacci (LF) | CHW | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | -0.31 | 0.341 elite | — |
| Vinnie Pasquantino (1B) | KC | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0.31 | 0.336 above average | — |
| Kyle Teel (C) | CHW | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 1 / 0 | 1 / 1 | 2 / 1 | 0 | 0.303 below average | — |
| Jac Caglianone (RF) | KC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.357 elite | — |
| Salvador Perez (DH) | KC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.31 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.991 | positive favors home; negative favors away |
| Recent form | -1.018 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.039 | positive favors home; negative favors away |
| Composite | -1.245 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.33-3.24 | n/a | Base ML historical model prediction |
| variance_applied | 5-3 | 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 matchup_recency_guardrail) |
| embedded_savant_run_environment | 7-5 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | n/a | Capped at max 12 realistic runs |
| simulation_result | 7-5 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 5.33-3.24 | 5-3 | -0.092 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 6-5 | -1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-5 | 7-5 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 7-5 | 7-5 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 7-5 | 7-5 | -0 | Capped at max 12 realistic runs |
| simulation_result | 7-5 | 7-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 |
|---|---|---|---|---|
| CHW | Andrew Benintendi | batter / DH | better | predicted_RBI 3.65 |
| CHW | Tristan Peters | batter / CF | better | predicted_RBI 2.78 |
| KC | John Rave | batter / CF | worse | predicted_BB 2.674 |
| CHW | Sam Antonacci | batter / LF | better | predicted_AB 1.567 |
| KC | Michael Massey | batter / 2B | worse | predicted_RBI 1.49 |
| CHW | Colson Montgomery | batter / SS | worse | predicted_SO -1.48 |
| KC | Jac Caglianone | batter / RF | worse | predicted_RBI 1.45 |
| CHW | Kyle Teel | batter / C | better | predicted_H 1.41 |
| 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=36; H: current=8, sim=9; 2B: current=2, sim=3; HR: current=1, sim=0; RBI: current=4, sim=7; R: current=5, sim=7; BB: current=4, sim=6). | CHW |
| info | CURRENT_PLAYER_MATCH_BOX | CHW current finalized hitter lines are model predictions and differ from the simulation box score: Sam Antonacci: AB current=4 box=5, H current=1 box=2, 2B current=1 box=0; Munetaka Murakami: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Kyle Teel: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, R current=0 box=1; Miguel Vargas: 2B current=0 box=1, RBI current=1 box=0, SO current=1 box=0; Andrew Benintendi: AB current=3 box=4, H current=1 box=3, 2B current=0 box=1, RBI current=1 box=4; Braden Montgomery: AB current=3 box=4, BB current=1 box=0, SO current=1 box=2; Tristan Peters: AB current=3 box=4, RBI current=0 box=3, R current=0 box=1, BB current=0 box=1; Chase Meidroth: H current=1 box=0, BB current=0 box=1, SO current=1 box=2 | CHW |
| info | CURRENT_FINALIZED_MATCH_BOX | KC model pitcher projections differ from final simulation pitching box score (ER: current=6, sim=7). | KC |
| info | CURRENT_FINALIZED_MATCH_BOX | KC model-prediction batting totals differ from final simulation box score (H: current=9, sim=7; 2B: current=2, sim=1; HR: current=1, sim=0; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=7; SO: current=7, sim=8). | KC |
| info | CURRENT_PLAYER_MATCH_BOX | KC current finalized hitter lines are model predictions and differ from the simulation box score: Bobby Witt Jr.: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Maikel Garcia: 2B current=1 box=0, R current=0 box=1, BB current=0 box=1; Carter Jensen: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jac Caglianone: RBI current=1 box=2, BB current=0 box=1, SO current=1 box=0; John Rave: AB current=3 box=1, H current=1 box=0, BB current=0 box=3; Michael Massey: AB current=4 box=3, 2B current=0 box=1, RBI current=0 box=2, R current=0 box=1; Vinnie Pasquantino: RBI current=1 box=0, BB current=0 box=1; Salvador Perez: H current=1 box=2, 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 | Andrew Abbott | 1 ER / 13 outs | 2 ER / 21 outs | 1 |
| ATL | Chris Sale | 2 ER / 19 outs | 1 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
Andrew Abbott (CIN) threw 21 outs, 2 ER = 2.57 ERA against a projected 2.08 ERA (0.49 ERA error)
Bullpen behind him: 0 ER over 1 outs.
The HOME lineup he faced produced 2 runs on 7 hits and 2 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
Chris Sale (ATL) threw 17 outs, 1 ER = 1.59 ERA against a projected 2.84 ERA (-1.25 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 2 runs on 5 hits and 1 HR, against a projected 3 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| CIN | Andrew Abbott (Starter) | 21 / 13 | 2.57 / 2.08 | 2 / 1 | 6 / 5 | 2 / 1 | 1 / 1 | 2.42 | 6 / 8 | 4.19 | venue away: 4.91 vs 4.48 ERA (ok) · opp run factor 1.08 (strong) · 31 prior appearances this season |
| CIN | Luis Mey (Setup Man) | 1 / 3 | 0 / 9 (-9.00) | 0 / 1 | 1 / 2 | 0 / 0 | 0 / 0 | 0.68 | 0 / 0 | 1.59 | |
| ATL | Chris Sale (Starter) | 17 / 19 | 1.59 / 2.84 | 1 / 2 | 4 / 3 | 1 / 0 | 0 / 2 | 0.71 | 10 / 5 | 7.77 | venue home: 1.66 vs 2.74 ERA (ok) · opp run factor 1.01 (weak) · 26 prior appearances this season |
| ATL | Dylan Lee (Setup Man) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0.25 | 0 / 0 | 1.08 | |
| ATL | Raisel Iglesias (Closer) | 3 / 3 | 0 / 18 (-18.00) | 0 / 2 | 0 / 2 | 0 / 0 | 0 / 0 | 0.24 | 3 / 0 | 1.14 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sal Stewart (1B) | CIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 1 | -1.4 | 0.348 elite | bad day |
| Austin Riley (3B) | ATL | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 1.4 | 0.298 below average | good day |
| Juan Brito (RF) | CIN | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1.09 | 0.284 below average | good day |
| Matt McLain (2B) | CIN | 4 / 3 | 2 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 1.09 | 0.297 below average | good day |
| Elly De La Cruz (SS) | CIN | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.378 elite | bad day |
| Drake Baldwin (C) | ATL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.367 elite | bad day |
| Mauricio Dubón (LF) | ATL | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 0.8 | 0.304 average | no signal |
| Eugenio Suárez (DH) | CIN | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 3 / 2 | -0.47 | 0.3 below average | — |
| Dane Myers (CF) | CIN | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | -0.47 | 0.311 average | — |
| Sean Murphy (DH) | ATL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.259 weak | — |
| Michael Harris II (CF) | ATL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.341 elite | — |
| Brewer Hicklen (RF) | ATL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | -0.47 | 0.312 average | — |
| Ha-Seong Kim (SS) | ATL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.212 weak | — |
| Matt Olson (1B) | ATL | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | 0.45 | 0.351 elite | — |
| Oswaldo Cabrera (LF) | CIN | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.31 | 0.12 weak | — |
| Ozzie Albies (2B) | ATL | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | -0.31 | 0.278 weak | — |
| Will Banfield (C) | CIN | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.198 weak | — |
| Ke'Bryan Hayes (3B) | CIN | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.293 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 1.446 | positive favors home; negative favors away |
| Recent form | 0.54 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.072 | positive favors home; negative favors away |
| Composite | 1.269 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.45-6.19 | n/a | Base ML historical model prediction |
| variance_applied | 3-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-6 | 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 | 5-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 3.45-6.19 | 3-6 | 0.258 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 3-6 | 5-6 | -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-6 | 5-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | 5-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | 5-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-6 | 5-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 |
|---|---|---|---|---|
| ATL | Drake Baldwin | batter / C | worse | predicted_RBI 3.46 |
| ATL | Chris Sale | pitcher / Starter | better | predicted_H -3 |
| CIN | Dane Myers | batter / CF | boosted | predicted_RBI 2.66 |
| ATL | Sean Murphy | batter / DH | deboosted | predicted_H 2.414 |
| ATL | Raisel Iglesias | pitcher / Closer | worse | predicted_H 2 |
| ATL | Ha-Seong Kim | batter / SS | worse | predicted_H 1.72 |
| CIN | Will Banfield | batter / C | worse | predicted_AB 1.5 |
| CIN | Sal Stewart | batter / 1B | worse | predicted_AB -1.42 |
| 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 (AB: current=33, sim=34; H: current=9, sim=11; 2B: current=1, sim=2; HR: current=1, sim=2; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=2; SO: current=7, sim=8). | 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=4, BB current=1 box=0; Ozzie Albies: AB current=4 box=3, 2B current=1 box=0, BB current=0 box=1; Mauricio Dubón: RBI current=1 box=0, R current=0 box=1; Sean Murphy: H current=1 box=3, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Matt Olson: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Michael Harris II: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Brewer Hicklen: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Ha-Seong Kim: AB current=3 box=4, H current=1 box=2, R current=0 box=1 | ATL |
| info | CURRENT_FINALIZED_MATCH_BOX | CIN model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=7, sim=6; 2B: current=1, sim=2; HR: current=1, sim=0; RBI: current=4, sim=5; R: current=3, sim=5; SO: current=10, sim=5). | CIN |
| info | CURRENT_PLAYER_MATCH_BOX | CIN current finalized hitter lines are model predictions and differ from the simulation box score: Juan Brito: 2B current=1 box=0, R current=0 box=1; Elly De La Cruz: 2B current=0 box=1, BB current=1 box=0; Eugenio Suárez: RBI current=1 box=0, SO current=2 box=0; Oswaldo Cabrera: H current=1 box=0, BB current=0 box=1; Sal Stewart: AB current=4 box=3, HR current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Dane Myers: 2B current=0 box=1, RBI current=0 box=3, R current=0 box=1, BB current=1 box=0; Will Banfield: AB current=3 box=4, SO current=1 box=0; Matt McLain: AB current=3 box=4, H current=1 box=0 | CIN |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| CLE | Foster Griffin | 4 ER / 16 outs | 1 ER / 18 outs | -3 |
| BOS | Sonny Gray | 3 ER / 18 outs | 0 ER / 18 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:
Starter miss: Foster Griffin (CLE) posted 1.50 ERA vs projected 6.75 (1 ER in 18 outs); he is materially worse pitching away (3.92 ERA there vs 3.35 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
Foster Griffin (CLE) threw 18 outs, 1 ER = 1.5 ERA against a projected 6.75 ERA (-5.25 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 0 runs on 10 hits and 0 HR, against a projected 3 runs / 8 hits (-3 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Sonny Gray (BOS) threw 18 outs, 0 ER = 0 ERA against a projected 4.5 ERA (-4.5 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 0 runs on 5 hits and 0 HR, against a projected 5 runs / 8 hits (-5 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 | Foster Griffin (Starter) | 18 / 16 | 1.5 / 6.75 (-5.25) | 1 / 4 | 10 / 4 | 0 / 1 | 0 / 3 | 2 | 7 / 6 | 4.02 | venue away: 3.92 vs 3.35 ERA (worse here) · opp run factor 1 (average) · 30 prior appearances this season |
| CLE | Tim Herrin (Middle Reliever (High Leverage)) | 3 / 0 | 0 / n/a | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0.38 | 3 / 0 | 0.52 | |
| BOS | Sonny Gray (Starter) | 18 / 18 | 0 / 4.5 (-4.50) | 0 / 3 | 4 / 6 | 0 / 0 | 1 / 3 | 1.88 | 3 / 6 | 5.61 | venue home: 2.91 vs 2.74 ERA (ok) · opp run factor 0.94 (average) · 28 prior appearances this season |
| BOS | Aroldis Chapman (Closer) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0.46 | 3 / 0 | 1.4 | |
| BOS | Garrett Whitlock (Middle Reliever (High Leverage)) | 3 / 2 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.16 | 0 / 0 | 1.24 |
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 DeLauter (DH) | CLE | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.11 | 0.348 elite | bad day |
| Jo Adell (RF) | CLE | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -1.07 | 0.324 above average | bad day |
| Jahmai Jones (DH) | BOS | 4 / 3 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0.94 | 0.326 above average | projection too low |
| José Ramírez (3B) | CLE | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -0.78 | 0.327 above average | bad day |
| Adley Rutschman (C) | BOS | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.328 above average | bad day |
| Nathaniel Lowe (1B) | CLE | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.336 above average | — |
| Petey Halpin (CF) | CLE | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.289 below average | — |
| Trevor Story (SS) | BOS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.254 weak | — |
| Caleb Durbin (3B) | BOS | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | -0.47 | 0.295 below average | — |
| Wilyer Abreu (RF) | BOS | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.46 | 0.349 elite | — |
| Roman Anthony (LF) | BOS | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.341 elite | — |
| Ceddanne Rafaela (CF) | BOS | 1 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.31 | 0.282 weak | — |
| Steven Kwan (LF) | CLE | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0.14 | 0.327 above average | — |
| Travis Bazzana (2B) | CLE | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.302 below average | — |
| Nick Sogard (1B) | BOS | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0.14 | 0.309 average | — |
| Patrick Bailey (C) | CLE | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.302 below average | — |
| Brayan Rocchio (SS) | CLE | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 | 0.295 below average | — |
| Andruw Monasterio (2B) | BOS | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.291 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.058 | positive favors home; negative favors away |
| Recent form | -0.768 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.06 | positive favors home; negative favors away |
| Composite | -0.207 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.91-5 | 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 | 3.91-5 | 4-5 | 0.089 | 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 |
|---|---|---|---|---|
| BOS | Jahmai Jones | batter / DH | worse | predicted_AB 2.5 |
| BOS | Trevor Story | batter / SS | better | predicted_RBI 2.42 |
| BOS | Sonny Gray | pitcher / Starter | better | predicted_SO 2 |
| CLE | Patrick Bailey | batter / C | worse | predicted_RBI 1.69 |
| CLE | Nathaniel Lowe | batter / 1B | worse | predicted_H 1.62 |
| CLE | José Ramírez | batter / 3B | better | predicted_RBI 1.43 |
| BOS | Adley Rutschman | batter / C | worse | predicted_SO 1.319 |
| CLE | Petey Halpin | batter / CF | deboosted | predicted_AB 1.306 |
| 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=33, sim=36; H: current=8, sim=6; 2B: current=2, sim=0; R: current=3, sim=4; BB: current=3, sim=4). | BOS |
| info | CURRENT_PLAYER_MATCH_BOX | BOS current finalized hitter lines are model predictions and differ from the simulation box score: Nick Sogard: H current=1 box=0; Adley Rutschman: 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Roman Anthony: H current=1 box=0, SO current=1 box=0; Jahmai Jones: AB current=3 box=5, H current=0 box=1, R current=0 box=1, SO current=1 box=2; Wilyer Abreu: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Andruw Monasterio: AB current=3 box=4, H current=1 box=0, SO current=1 box=0; Trevor Story: AB current=4 box=3, H current=1 box=3, HR current=0 box=1, RBI current=1 box=3; Ceddanne Rafaela: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0 | BOS |
| info | CURRENT_FINALIZED_MATCH_BOX | CLE model pitcher projections differ from final simulation pitching box score (H: current=5, sim=6). | CLE |
| info | CURRENT_FINALIZED_MATCH_BOX | CLE model-prediction batting totals differ from final simulation box score (AB: current=32, sim=38; 2B: current=2, sim=3; HR: current=1, sim=0; RBI: current=4, sim=5). | CLE |
| info | CURRENT_PLAYER_MATCH_BOX | CLE current finalized hitter lines are model predictions and differ from the simulation box score: Chase DeLauter: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; José Ramírez: AB current=4 box=5, H current=1 box=2, RBI current=1 box=2, BB current=1 box=0; Steven Kwan: RBI current=0 box=1, SO current=0 box=1; Jo Adell: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Travis Bazzana: AB current=3 box=4, H current=1 box=0, BB current=0 box=1, SO current=1 box=2; Nathaniel Lowe: H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Petey Halpin: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, R current=0 box=1; Patrick Bailey: AB current=3 box=4, RBI current=0 box=2, R current=0 box=1, SO current=1 box=2 | CLE |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| HOU | Ethan Pecko | 0 ER / 15 outs | 3 ER / 8 outs | 3 |
| SEA | George Kirby | 2 ER / 18 outs | 4 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: Ethan Pecko (HOU) posted 10.12 ERA vs projected 0.00 (3 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
Ethan Pecko (HOU) threw 8 outs, 3 ER = 10.12 ERA against a projected 0 ERA (10.12 ERA error) only 6 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 1 ER over 14 outs.
The HOME lineup he faced produced 6 runs on 8 hits and 0 HR, against a projected 4 runs / 7 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
George Kirby (SEA) threw 15 outs, 4 ER = 7.2 ERA against a projected 3 ERA (4.2 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 5 runs on 10 hits and 1 HR, against a projected 4 runs / 8 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| HOU | Ethan Pecko (Starter) | 8 / 15 | 10.12 / 0 (+10.12) | 3 / 0 | 4 / 4 | 0 / 0 | 2 / 2 | 2.63 | 2 / 8 | 2.92 | venue away: 6.75 vs 3.38 ERA (ok) · opp run factor 1 (weak) · 6 prior appearances this season |
| HOU | Logan VanWey (Setup Man) | 1 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0 / 0 | 1.05 | |
| HOU | Josh Hader (Closer) | 4 / 4 | 6.75 / 0 (+6.75) | 1 / 0 | 2 / 0 | 0 / 0 | 4 / 0 | 0.19 | 0 / 1 | 1.11 | |
| HOU | AJ Blubaugh (Middle Reliever (High Leverage)) | 6 / 1 | 0 / 27 (-27.00) | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 0.57 | 1 / 0 | 0.85 | |
| HOU | Bryan Abreu (Middle Reliever (High Leverage)) | 3 / 0 | 0 / n/a | 0 / 2 | 1 / 4 | 0 / 0 | 0 / 0 | 0.36 | 1 / 2 | 0.94 | |
| SEA | George Kirby (Starter) | 15 / 18 | 7.2 / 3 (+4.20) | 4 / 2 | 6 / 6 | 1 / 1 | 3 / 1 | 2.06 | 5 / 8 | 5.34 | venue home: 3.27 vs 5.45 ERA (ok) · opp run factor 1 (average) · 29 prior appearances this season |
| SEA | José A. Ferrer (Setup Man) | 3 / 0 | 0 / n/a | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.16 | 2 / 0 | 0.6 | |
| SEA | Gabe Speier (Middle Reliever (High Leverage)) | 3 / 0 | 0 / n/a | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.23 | 2 / 0 | 0.74 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Yainer Diaz (C) | HOU | 5 / 4 | 2 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 2.02 | 0.309 average | no signal |
| Julio Rodríguez (CF) | SEA | 4 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 1.58 | 0.334 above average | projection too low |
| Nick Allen (SS) | HOU | 4 / 3 | 2 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.25 | 0.246 weak | good day |
| Taylor Trammell (LF) | HOU | 5 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | -0.8 | 0.292 below average | projection too high |
| Cole Young (2B) | SEA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.314 average | — |
| Dominic Canzone (DH) | SEA | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.46 | 0.355 elite | — |
| J.P. Crawford (SS) | SEA | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.322 above average | — |
| Josh Naylor (1B) | SEA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.311 average | — |
| Jose Altuve (2B) | HOU | 5 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 2 / 1 | 0.16 | 0.272 weak | — |
| Yordan Alvarez (DH) | HOU | 4 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | -0.15 | 0.445 elite | — |
| Lucas Spence (CF) | HOU | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.236 weak | — |
| Cam Smith (RF) | HOU | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.318 average | — |
| Lazaro Montes (RF) | SEA | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.32 average | — |
| Isaac Paredes (3B) | HOU | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | -0.02 | 0.323 above average | — |
| Randy Arozarena (LF) | SEA | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 3 / 1 | 2 / 1 | 0 / 1 | 0.02 | 0.349 elite | — |
| Christian Walker (1B) | HOU | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | 0 | 0.3 below average | — |
| Cal Raleigh (C) | SEA | 4 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | 0 | 0.311 average | — |
| Weston Wilson (3B) | SEA | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.26 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.083 | positive favors home; negative favors away |
| Recent form | 0.526 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0 | positive favors home; negative favors away |
| Composite | 0.357 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.72-4.44 | n/a | Base ML historical model prediction |
| variance_applied | 4-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.515 | 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 | 3.72-4.44 | 4-4 | -0.724 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-4 | 4-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 | 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 |
|---|---|---|---|---|
| SEA | George Kirby | pitcher / Starter | better | predicted_SO 3 |
| HOU | Lucas Spence | batter / CF | better | predicted_RBI 2.75 |
| HOU | Nick Allen | batter / SS | worse | predicted_AB 2.5 |
| SEA | Weston Wilson | batter / 3B | better | predicted_AB 2.417 |
| SEA | Randy Arozarena | batter / LF | worse | predicted_AB 2.295 |
| SEA | Dominic Canzone | batter / DH | worse | predicted_SO 2.223 |
| SEA | Lazaro Montes | batter / RF | deboosted | predicted_AB 2.2 |
| HOU | Taylor Trammell | batter / LF | worse | predicted_AB 2.184 |
| 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 pitcher projections differ from final simulation pitching box score (H: current=12, sim=11). | HOU |
| info | CURRENT_FINALIZED_MATCH_BOX | HOU model-prediction batting totals differ from final simulation box score (AB: current=32, sim=45; H: current=8, sim=10; 3B: current=0, sim=1; HR: current=1, sim=2; BB: current=3, sim=4; SO: current=8, sim=9; SF: 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: Yordan Alvarez: AB current=4 box=6, H current=1 box=2, BB current=1 box=0, SO current=1 box=2; Jose Altuve: AB current=4 box=6, 2B current=1 box=0, R current=1 box=0; Yainer Diaz: AB current=4 box=5, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Isaac Paredes: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, SO current=0 box=2; Lucas Spence: AB current=3 box=5, H current=1 box=3, HR current=0 box=1, RBI current=0 box=3; Taylor Trammell: AB current=3 box=5, 3B current=0 box=1, BB current=1 box=0, SO current=1 box=0; Christian Walker: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Cam Smith: BB current=0 box=1, SO current=1 box=0, SF 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=47; H: current=7, sim=11; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=2; SO: current=9, sim=12). | 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=6, H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0; J.P. Crawford: AB current=4 box=5, H current=1 box=2, SO current=1 box=2; Dominic Canzone: AB current=4 box=6, 2B current=0 box=1, HR current=1 box=0, SO current=1 box=3; Cal Raleigh: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0; Josh Naylor: AB current=4 box=5, H current=1 box=2, RBI current=0 box=2, R current=0 box=1; Lazaro Montes: AB current=3 box=5, R current=0 box=1, SO current=1 box=0; Cole Young: AB current=4 box=5; Julio Rodríguez: AB current=4 box=5, SO current=1 box=2 | SEA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| LAA | Walbert Ureña | 3 ER / 18 outs | 5 ER / 12 outs | 2 |
| OAK | Jeffrey Springs | 4 ER / 14 outs | 3 ER / 13 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: Walbert Ureña (LAA) posted 11.25 ERA vs projected 4.50 (5 ER in 12 outs); he is materially worse pitching away (3.59 ERA there vs 2.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
Walbert Ureña (LAA) threw 12 outs, 5 ER = 11.25 ERA against a projected 4.5 ERA (6.75 ERA error)
Bullpen behind him: 2 ER over 3 outs.
The HOME lineup he faced produced 7 runs on 13 hits and 1 HR, against a projected 4 runs / 8 hits (3 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
Jeffrey Springs (OAK) threw 13 outs, 3 ER = 6.23 ERA against a projected 7.71 ERA (-1.48 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 3 runs on 8 hits and 2 HR, against a projected 4 runs / 9 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| LAA | Walbert Ureña (Starter) | 12 / 18 | 11.25 / 4.5 (+6.75) | 5 / 3 | 7 / 3 | 1 / 0 | 1 / 4 | 1.93 | 2 / 6 | 6.58 | venue away: 3.59 vs 2.22 ERA (worse here) · opp run factor 1.05 (weak) · 28 prior appearances this season |
| LAA | Tayler Saucedo (Middle Reliever (High Leverage)) | 1 / 2 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0.22 | 1 / 0 | 0.85 | |
| LAA | José Fermin (Middle Reliever (High Leverage)) | 2 / 1 | 27 / 27 | 2 / 1 | 3 / 1 | 0 / 1 | 0 / 0 | 0.5 | 0 / 1 | 1.27 | |
| OAK | Jeffrey Springs (Starter) | 13 / 14 | 6.23 / 7.71 | 3 / 4 | 5 / 8 | 2 / 1 | 1 / 1 | 1.75 | 3 / 6 | 3.95 | venue home: 6.94 vs 5.34 ERA (worse here) · opp run factor 0.99 (weak) · 28 prior appearances this season |
| OAK | Hogan Harris (Reliever) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | n/a | 1 / 1 | n/a | |
| OAK | Luis Medina (Reliever) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Henry Bolte (CF) | OAK | 5 / 4 | 4 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 0 / 1 | 0 / 1 | 1.7 | 0.319 average | no signal |
| Vaughn Grissom (1B) | LAA | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 1.09 | 0.309 average | no signal |
| Donovan Walton (2B) | OAK | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 0.93 | 0.327 above average | projection too low |
| Mike Trout (DH) | LAA | 4 / 4 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | 0.76 | 0.38 elite | projection too low |
| Zach Neto (SS) | LAA | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | 0 / 1 | -0.6 | 0.312 average | no signal |
| Denzer Guzman (3B) | LAA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.271 weak | — |
| Christian Moore (2B) | LAA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 3 / 1 | -0.47 | 0.228 weak | — |
| Tyler Heineman (C) | LAA | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | -0.47 | 0.237 weak | — |
| Carlos Cortes (LF) | OAK | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.305 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.244 weak | — |
| Zack Gelof (3B) | OAK | 3 / 4 | 2 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | -0.15 | 0.322 above average | — |
| Wade Meckler (RF) | LAA | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.311 average | — |
| Jose Siri (LF) | LAA | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.298 below average | — |
| Lawrence Butler (RF) | OAK | 5 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 0.14 | 0.327 above average | — |
| Shea Langeliers (DH) | OAK | 5 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.02 | 0.359 elite | — |
| Jeff McNeil (1B) | OAK | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 0 / 0 | 0.02 | 0.299 below average | — |
| Bryce Teodosio (CF) | LAA | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.194 weak | — |
| Brian Serven (C) | OAK | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.281 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.649 | positive favors home; negative favors away |
| Recent form | -0.398 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.059 | positive favors home; negative favors away |
| Composite | -0.507 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 5.35-4.19 | 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.54 | 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 | 5.35-4.19 | 5-4 | -0.161 | 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 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 | Jeffrey Springs | pitcher / Starter | worse | predicted_IP -4.8 |
| OAK | Seth Johnson | pitcher / Reliever | better | predicted_H 3 |
| LAA | Bryce Teodosio | batter / CF | better | predicted_H 2.524 |
| LAA | Jose Siri | batter / LF | better | predicted_AB 2.424 |
| LAA | Walbert Ureña | pitcher / Starter | better | predicted_SO 2 |
| LAA | Ben Joyce | pitcher / Closer | worse | predicted_SO -2 |
| OAK | Chris Roycroft | pitcher / Reliever | worse | predicted_H 2 |
| LAA | Wade Meckler | batter / RF | worse | predicted_AB 1.77 |
| 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 (AB: current=33, sim=40; H: current=9, sim=13; HR: current=1, sim=2; R: current=4, sim=5; BB: current=3, sim=1; SO: current=8, sim=11; 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=5, H current=1 box=2, R current=1 box=0, BB current=1 box=0; Vaughn Grissom: AB current=4 box=5, 2B current=1 box=0, R current=0 box=1, SO current=1 box=2; Wade Meckler: AB current=4 box=5, R current=1 box=0, BB current=1 box=0; Denzer Guzman: HBP current=0 box=1; Zach Neto: AB current=4 box=5, H current=1 box=2, HR current=1 box=0, RBI current=1 box=0; Bryce Teodosio: AB current=3 box=4, H current=1 box=3, RBI current=0 box=1, R current=0 box=1; Christian Moore: H current=1 box=0, RBI current=1 box=0; Jose Siri: AB current=3 box=5, H current=1 box=3, 2B current=0 box=1, HR current=0 box=2 | LAA |
| info | CURRENT_FINALIZED_MATCH_BOX | OAK model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=8, sim=6; RBI: current=5, sim=4; 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: Shea Langeliers: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Henry Bolte: AB current=4 box=5, 2B current=0 box=1, RBI current=0 box=2, BB current=1 box=0; Jeff McNeil: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=0, HBP current=0 box=1; Carlos Cortes: R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Alika Williams: AB current=3 box=4, H current=1 box=0, 2B current=1 box=0, SO current=1 box=2; Brian Serven: AB current=3 box=4, H current=0 box=1, HR current=0 box=1, R current=0 box=1; Donovan Walton: AB current=3 box=4, H current=1 box=0, BB current=1 box=0; Zack Gelof: AB current=4 box=3, 2B current=0 box=1, HR current=1 box=0, BB 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 | Ryan Gusto | 4 ER / 14 outs | 2 ER / 16 outs | -2 |
| CHC | Kevin Gausman | 2 ER / 17 outs | 2 ER / 17 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: Ryan Gusto (MIA) posted 3.38 ERA vs projected 7.71 (2 ER in 16 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
Ryan Gusto (MIA) threw 16 outs, 2 ER = 3.38 ERA against a projected 7.71 ERA (-4.33 ERA error)
Bullpen behind him: 0 ER over 5 outs.
The HOME lineup he faced produced 2 runs on 8 hits and 0 HR, against a projected 5 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
Kevin Gausman (CHC) threw 17 outs, 2 ER = 3.18 ERA against a projected 3.18 ERA (0 ERA error)
Bullpen behind him: 0 ER over 4 outs.
The AWAY lineup he faced produced 3 runs on 8 hits and 1 HR, against a projected 4 runs / 9 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIA | Ryan Gusto (Starter) | 16 / 14 | 3.38 / 7.71 (-4.33) | 2 / 4 | 6 / 3 | 0 / 1 | 2 / 3 | 1.91 | 5 / 3 | 3.53 | venue away: 4.15 vs 4.19 ERA (ok) · opp run factor 0.97 (strong) · 22 prior appearances this season |
| MIA | Calvin Faucher (Closer) | 3 / 3 | 0 / 9 (-9.00) | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0.52 | 0 / 1 | 1 | |
| MIA | Michael Petersen (Middle Reliever (High Leverage)) | 2 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.43 | 2 / 1 | 1.42 | |
| CHC | Kevin Gausman (Starter) | 17 / 17 | 3.18 / 3.18 | 2 / 2 | 6 / 4 | 1 / 1 | 1 / 0 | 1.5 | 7 / 5 | 6.55 | venue home: 3.87 vs 5.4 ERA (ok) · opp run factor 0.98 (average) · 31 prior appearances this season |
| CHC | Jacob Webb (Closer) | 4 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.49 | 2 / 3 | 1.11 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Pete Crow-Armstrong (CF) | CHC | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -1.4 | 0.376 elite | bad day |
| Jakob Marsee (CF) | MIA | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.313 average | no signal |
| Griffin Conine (RF) | MIA | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.79 | 0.363 elite | bad day |
| Seiya Suzuki (RF) | CHC | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -0.64 | 0.338 above average | bad day |
| Kyle Stowers (1B) | MIA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 0.6 | 0.326 above average | projection too low |
| Javier Sanoja (2B) | MIA | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0.47 | 0.294 below average | — |
| Joe Mack (C) | MIA | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.284 below average | — |
| Dansby Swanson (SS) | CHC | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 0.33 | 0.305 average | — |
| Michael Conforto (DH) | CHC | 4 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0.31 | 0.336 above average | — |
| Heriberto Hernández (LF) | MIA | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 0 | 0 / 1 | 0.19 | 0.347 elite | — |
| Michael Busch (1B) | CHC | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 2 / 1 | 0.14 | 0.332 above average | — |
| Ian Happ (LF) | CHC | 4 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.02 | 0.315 average | — |
| Otto Lopez (SS) | MIA | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0 | 0.327 above average | — |
| Graham Pauley (3B) | MIA | 2 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.246 weak | — |
| Agustín Ramírez (DH) | MIA | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0 | 0.287 below average | — |
| Pedro Ramirez (3B) | CHC | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.284 below average | — |
| Nico Hoerner (2B) | CHC | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 | 0.322 above average | — |
| Miguel Amaya (C) | CHC | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.291 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.797 | positive favors home; negative favors away |
| Recent form | 0.408 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.013 | positive favors home; negative favors away |
| Composite | 0.692 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.56-5.23 | n/a | Base ML historical model prediction |
| variance_applied | 5-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-6 | 0.53 | 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-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.56-5.23 | 5-5 | -0.673 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-5 | 5-6 | 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 | 5-6 | 5-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | 5-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | 5-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-6 | 5-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 | Pedro Ramirez | batter / 3B | better | predicted_RBI 2.556 |
| CHC | Seiya Suzuki | batter / RF | better | predicted_AB -2.45 |
| CHC | Nico Hoerner | batter / 2B | worse | predicted_AB -2.43 |
| CHC | Dansby Swanson | batter / SS | worse | predicted_SO 2.085 |
| MIA | Ryan Gusto | pitcher / Starter | neutral | predicted_SO 2 |
| MIA | Kyle Stowers | batter / 1B | worse | predicted_H 1.96 |
| CHC | Pete Crow-Armstrong | batter / CF | worse | predicted_AB -1.77 |
| MIA | Heriberto Hernández | batter / LF | worse | predicted_AB -1.73 |
| 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=30; H: current=8, sim=7; 2B: current=1, sim=0; 3B: current=0, sim=1; RBI: current=5, sim=6; R: current=5, sim=6; BB: current=4, sim=6; SF: current=0, sim=1). | CHC |
| info | CURRENT_PLAYER_MATCH_BOX | CHC current finalized hitter lines are model predictions and differ from the simulation box score: Seiya Suzuki: AB current=4 box=3, 2B current=1 box=0, HR current=0 box=1, SO current=1 box=0; Michael Busch: R current=1 box=0, BB current=1 box=0; Pete Crow-Armstrong: HR current=1 box=0, RBI current=1 box=0; Pedro Ramirez: H current=1 box=3, 3B current=0 box=1, RBI current=1 box=3, R current=0 box=1; Michael Conforto: RBI current=1 box=0, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; Nico Hoerner: AB current=4 box=2, H current=1 box=0, RBI current=0 box=1, R current=0 box=1; Ian Happ: AB current=4 box=3, H current=1 box=0, SO current=1 box=0; Miguel Amaya: BB current=0 box=1 | CHC |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model pitcher projections differ from final simulation pitching box score (H: current=5, sim=7; BB: current=3, sim=6). | MIA |
| info | CURRENT_FINALIZED_MATCH_BOX | MIA model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; H: current=9, sim=8; HR: current=1, sim=2; R: current=4, sim=5; BB: current=3, sim=2; SO: current=8, sim=9). | MIA |
| info | CURRENT_PLAYER_MATCH_BOX | MIA current finalized hitter lines are model predictions and differ from the simulation box score: Griffin Conine: AB current=4 box=3, HR 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, SO current=0 box=2; Heriberto Hernández: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Otto Lopez: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0; Kyle Stowers: H current=1 box=3, HR current=0 box=1, RBI current=1 box=2, BB current=1 box=0; Graham Pauley: AB current=3 box=4, R current=0 box=1, SO current=1 box=2; Joe Mack: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Jakob Marsee: H current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=2 | MIA |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIL | Logan Henderson | 3 ER / 18 outs | 1 ER / 15 outs | -2 |
| PHI | Aaron Nola | 3 ER / 18 outs | 4 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:
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
Logan Henderson (MIL) threw 15 outs, 1 ER = 1.8 ERA against a projected 4.5 ERA (-2.7 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The HOME lineup he faced produced 1 runs on 5 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
Aaron Nola (PHI) threw 18 outs, 4 ER = 6 ERA against a projected 4.5 ERA (1.5 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 4 runs on 6 hits and 2 HR, against a projected 5 runs / 9 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MIL | Logan Henderson (Starter) | 15 / 18 | 1.8 / 4.5 | 1 / 3 | 4 / 2 | 0 / 2 | 3 / 2 | 0.93 | 3 / 7 | 6.34 | venue away: 3.1 vs 1.84 ERA (worse here) · opp run factor 1.01 (average) · 17 prior appearances this season |
| MIL | Abner Uribe (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.34 | 1 / 1 | 1.15 | |
| MIL | Trevor Megill (Closer) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.28 | 1 / 0 | 1.15 | |
| PHI | Aaron Nola (Starter) | 18 / 18 | 6 / 4.5 | 4 / 3 | 4 / 6 | 2 / 1 | 1 / 2 | 2.38 | 8 / 7 | 4.31 | venue home: 5.3 vs 3.84 ERA (worse here) · opp run factor 1.07 (strong) · 31 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Bryson Stott (3B) | PHI | 3 / 3 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | 1.42 | 0.328 above average | projection too low |
| Kyle Schwarber (DH) | PHI | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 2 | -1.4 | 0.364 elite | bad day |
| Brice Turang (2B) | MIL | 4 / 4 | 2 / 1 | 1 / 1 | 0 / 0 | 1 / 0 | 1 / 1 | 2 / 1 | 0 / 1 | 1 / 1 | 1.07 | 0.342 elite | projection too low |
| Jackson Chourio (LF) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.93 | 0.339 above average | bad day |
| Christian Yelich (DH) | MIL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 0.93 | 0.307 average | no signal |
| Garrett Mitchell (CF) | MIL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 1 / 1 | -0.8 | 0.353 elite | bad day |
| Jake Bauers (1B) | MIL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 3 / 1 | -0.8 | 0.378 elite | bad day |
| Luis Arraez (2B) | PHI | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | -0.78 | 0.308 average | no signal |
| Sal Frelick (RF) | MIL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.279 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 | — |
| Justin Crawford (CF) | PHI | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.283 below average | — |
| David Hamilton (3B) | MIL | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.27 weak | — |
| Brandon Marsh (LF) | PHI | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.302 below average | — |
| William Contreras (C) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.335 above average | — |
| Joey Ortiz (SS) | MIL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.296 below average | — |
| Alec Bohm (1B) | PHI | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 2 / 1 | 0 | 0.331 above average | — |
| Trea Turner (SS) | PHI | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0 | 0.295 below average | — |
| J.T. Realmuto (C) | PHI | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.319 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -1.009 | positive favors home; negative favors away |
| Recent form | -0.688 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.051 | positive favors home; negative favors away |
| Composite | -1.199 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.95-3.61 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 0.56 | 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.95-3.61 | 5-4 | -0.337 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 5-3 | 1 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-3 | 5-3 | -0 | 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 |
|---|---|---|---|---|
| MIL | William Contreras | batter / C | better | predicted_H 1.85 |
| MIL | Brice Turang | batter / 2B | worse | predicted_H 1.82 |
| MIL | Jake Bauers | batter / 1B | worse | predicted_AB 1.632 |
| PHI | Bryson Stott | batter / 3B | deboosted | predicted_RBI 1.564 |
| MIL | Garrett Mitchell | batter / CF | boosted | predicted_RBI 1.52 |
| PHI | Alec Bohm | batter / 1B | worse | predicted_SO 1.422 |
| MIL | Joey Ortiz | batter / SS | worse | predicted_SO 1.31 |
| PHI | Luis Arraez | batter / 2B | worse | predicted_H -1.29 |
| 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=38; H: current=9, sim=11; 2B: current=1, sim=5; SO: current=9, sim=11). | MIL |
| info | CURRENT_PLAYER_MATCH_BOX | MIL current finalized hitter lines are model predictions and differ from the simulation box score: Garrett Mitchell: HR current=0 box=1, RBI current=1 box=2, R current=0 box=1, SO current=1 box=2; Jake Bauers: AB current=3 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Jackson Chourio: AB current=4 box=5, 2B current=0 box=1, HR current=1 box=0, SO current=1 box=0; William Contreras: H current=1 box=3, 2B current=0 box=1, BB current=0 box=1; Brice Turang: AB current=4 box=5, H current=1 box=3, 2B current=1 box=2, RBI current=1 box=0; Joey Ortiz: H current=1 box=0, SO current=1 box=2; Sal Frelick: AB current=3 box=4, H current=1 box=0; Christian Yelich: H current=1 box=2, RBI current=0 box=1, SO current=1 box=0 | MIL |
| info | CURRENT_FINALIZED_MATCH_BOX | PHI model-prediction batting totals differ from final simulation box score (AB: current=32, sim=29; H: current=7, sim=2; 2B: current=1, sim=0; HR: current=1, sim=2; RBI: current=4, sim=3; R: current=4, sim=3; SO: current=9, sim=8; 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: AB current=4 box=3, HR current=0 box=1; Alec Bohm: AB current=4 box=3, H current=1 box=0, RBI current=1 box=0, R current=0 box=1; Bryson Stott: HR current=0 box=1, RBI current=1 box=2, SO current=1 box=0; Trea Turner: H current=1 box=0, R current=1 box=0; Luis Arraez: H current=1 box=0, 2B current=1 box=0; Kyle Schwarber: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Brandon Marsh: H current=1 box=0, SO current=1 box=0; J.T. Realmuto: SO current=1 box=2 | PHI |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| MIN | Connor Prielipp | 3 ER / 17 outs | 2 ER / 16 outs | -1 |
| SF | Cesar Perdomo | 2 ER / 14 outs | 2 ER / 16 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:
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
Connor Prielipp (MIN) threw 16 outs, 2 ER = 3.38 ERA against a projected 4.76 ERA (-1.38 ERA error)
Bullpen behind him: 0 ER over 8 outs.
The HOME lineup he faced produced 2 runs on 4 hits and 0 HR, against a projected 4 runs / 8 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: offense: the lineup scored well below its projection
HOME pitching
Cesar Perdomo (SF) threw 16 outs, 2 ER = 3.38 ERA against a projected 3.86 ERA (-0.48 ERA error) only 4 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 2 ER over 3 outs.
The AWAY lineup he faced produced 2 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: 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 | Connor Prielipp (Starter) | 16 / 17 | 3.38 / 4.76 | 2 / 3 | 4 / 2 | 0 / 0 | 2 / 1 | 1.87 | 3 / 4 | 5.31 | venue away: 5.54 vs 4.85 ERA (worse here) · opp run factor 0.93 (weak) · 23 prior appearances this season |
| MIN | A.J. Minter (Middle Reliever (High Leverage)) | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.19 | 0 / 1 | 1.03 | |
| MIN | Yoendrys Gómez (Closer) | 5 / 3 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0.54 | 2 / 0 | 0.71 | |
| SF | Cesar Perdomo (Starter) | 16 / 14 | 3.38 / 3.86 | 2 / 2 | 5 / 4 | 1 / 0 | 0 / 2 | 1.69 | 2 / 5 | 2.86 | venue home: 9.64 vs 1.69 ERA (ok) · opp run factor 1 (average) · thin sample: 4 prior appearances this season (high uncertainty) |
| SF | Dylan Smith (Closer) | 2 / 3 | 27 / 0 (+27.00) | 2 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.54 | 1 / 1 | 1.01 | |
| SF | Trent Harris (Setup Man) | 1 / 4 | 0 / 13.5 (-13.50) | 0 / 2 | 0 / 2 | 0 / 0 | 0 / 1 | 0.23 | 0 / 2 | 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Victor Bericoto (LF) | SF | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -1.4 | 0.299 below average | projection too high |
| Turner Hill (CF) | SF | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -0.8 | 0.325 above average | bad day |
| Jonah Cox (2B) | SF | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | -0.78 | 0.265 weak | projection too high |
| Ryan Jeffers (C) | MIN | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.64 | 0.345 elite | bad day |
| Ben Ross (SS) | MIN | 2 / 3 | 1 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 0.62 | 0.147 weak | good day |
| Luke Keaschall (RF) | MIN | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 1 | 0 / 1 | 1 / 0 | 0.6 | 0.315 average | no signal |
| Brooks Lee (3B) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 1 / 1 | -0.6 | 0.278 weak | projection too high |
| Christian Koss (SS) | SF | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.248 weak | — |
| Shay Whitcomb (3B) | SF | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.263 weak | — |
| Alan Roden (LF) | MIN | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 / 0 | 0.33 | 0.349 elite | — |
| Emmanuel Rodriguez (CF) | MIN | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.349 elite | — |
| Josh Bell (DH) | MIN | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 1 | 0 / 1 | -0.33 | 0.333 above average | — |
| Bo Davidson (RF) | SF | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.389 elite | — |
| Andrew Knizner (C) | SF | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.295 below average | — |
| Marcelo Mayer (DH) | SF | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 1 / 1 | 0.19 | 0.254 weak | — |
| Royce Lewis (2B) | MIN | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.305 average | — |
| Aaron Sabato (1B) | MIN | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.156 weak | — |
| Brett Harris (1B) | SF | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | 0 | 0.263 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.137 | positive favors home; negative favors away |
| Recent form | -0.044 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.073 | positive favors home; negative favors away |
| Composite | -0.426 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.91-4.06 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-3 | 0.511 | 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 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 4-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.91-4.06 | 5-4 | 0.151 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 4-3 | -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-3 | 4-3 | -0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 4-3 | 4-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 4-3 | 4-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 4-3 | 4-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 | Cesar Perdomo | pitcher / Starter | worse | predicted_H 3 |
| MIN | Ryan Jeffers | batter / C | worse | predicted_AB -2.45 |
| SF | Jason Foley | pitcher / Middle Reliever (High Leverage) | better | predicted_H -2 |
| SF | Brett Harris | batter / 1B | better | predicted_2B 1.844 |
| MIN | Brooks Lee | batter / 3B | worse | predicted_AB -1.78 |
| MIN | Ben Ross | batter / SS | better | predicted_RBI 1.73 |
| MIN | Alan Roden | batter / LF | better | predicted_SO 1.586 |
| MIN | Luke Keaschall | batter / RF | worse | predicted_AB 1.497 |
| 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=32, sim=33; H: current=8, sim=6; 2B: current=1, sim=2; 3B: current=0, sim=1; HR: current=1, sim=0; BB: current=3, sim=4; SO: current=7, sim=10). | 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, BB current=1 box=0; Alan Roden: AB current=3 box=4, 2B current=0 box=1, RBI current=1 box=0, SO current=0 box=2; Royce Lewis: 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Ryan Jeffers: AB current=4 box=2, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Brooks Lee: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Emmanuel Rodriguez: AB current=3 box=4, H current=1 box=2, RBI current=0 box=1, R current=0 box=1; Josh Bell: RBI current=1 box=0, R current=0 box=1, BB current=1 box=0; Aaron Sabato: AB current=3 box=4, SO current=1 box=2 | MIN |
| info | CURRENT_FINALIZED_MATCH_BOX | SF model-prediction batting totals differ from final simulation box score (H: current=8, sim=4; 2B: current=1, sim=3; HR: current=1, sim=0; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=1; SO: current=9, sim=5; HBP: 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=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Victor Bericoto: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Bo Davidson: RBI current=1 box=0, BB current=1 box=0, SO current=1 box=2; Brett Harris: AB current=3 box=4, H current=0 box=2, 2B current=0 box=2, RBI current=0 box=1; Marcelo Mayer: H current=1 box=0, SO current=1 box=0; Christian Koss: H current=1 box=0, R current=1 box=0, SO current=1 box=2; Shay Whitcomb: H current=1 box=0, SO current=1 box=0; Turner Hill: 2B current=0 box=1, RBI current=1 box=2, R current=0 box=1, BB current=1 box=0 | SF |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
No large single-factor errors.
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| NYM | Nolan McLean | 0 ER / 18 outs | 2 ER / 21 outs | 2 |
| TEX | Cody Bradford | 2 ER / 14 outs | 2 ER / 13 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:
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
Nolan McLean (NYM) threw 21 outs, 2 ER = 2.57 ERA against a projected 0 ERA (2.57 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 2 runs on 4 hits and 0 HR, against a projected 4 runs / 7 hits (-2 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Cody Bradford (TEX) threw 13 outs, 2 ER = 4.15 ERA against a projected 3.86 ERA (0.29 ERA error) only 8 prior appearances in the covered season - the projection had little of his own record to stand on
Bullpen behind him: 1 ER over 6 outs.
The AWAY lineup he faced produced 6 runs on 7 hits and 2 HR, against a projected 4 runs / 9 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| NYM | Nolan McLean (Starter) | 21 / 18 | 2.57 / 0 | 2 / 0 | 3 / 0 | 0 / 0 | 1 / 0 | 2.81 | 5 / 6 | 5.75 | venue away: 2.89 vs 3.44 ERA (ok) · opp run factor 0.93 (average) · 30 prior appearances this season |
| TEX | Cody Bradford (Starter) | 13 / 14 | 4.15 / 3.86 | 2 / 2 | 4 / 4 | 1 / 2 | 0 / 0 | 1.21 | 1 / 11 | 2.35 | venue home: 4.61 vs 4.79 ERA (ok) · opp run factor 1 (average) · 8 prior appearances this season |
| TEX | Jacob Latz (Closer) | 5 / 5 | 5.4 / 0 (+5.40) | 1 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0.41 | 2 / 1 | 1.65 | |
| TEX | Chase Silseth (Middle Reliever (High Leverage)) | 1 / 3 | 0 / 27 (-27.00) | 0 / 3 | 1 / 3 | 0 / 1 | 1 / 2 | 0.32 | 1 / 0 | 0.9 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Corey Seager (SS) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.73 | 0.349 elite | bad day |
| Marcus Semien (2B) | NYM | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0.93 | 0.302 below average | good day |
| Wyatt Langford (LF) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.324 above average | bad day |
| Juan Soto (DH) | NYM | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 2 / 1 | 3 / 1 | 0 / 0 | 0.66 | 0.411 elite | projection too low |
| Carson Benge (RF) | NYM | 5 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.34 elite | — |
| Mark Vientos (1B) | NYM | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.311 average | — |
| Ezequiel Duran (3B) | TEX | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.303 below average | — |
| Bo Bichette (3B) | NYM | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 0 / 1 | -0.45 | 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 | 1 / 1 | 0.33 | 0.319 average | — |
| Francisco Lindor (SS) | NYM | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 0 / 1 | -0.33 | 0.332 above average | — |
| Danny Jansen (C) | TEX | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0.33 | 0.266 weak | — |
| Evan Carter (CF) | TEX | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | -0.33 | 0.278 weak | — |
| Brandon Nimmo (RF) | TEX | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | -0.31 | 0.343 elite | — |
| Francisco Alvarez (C) | NYM | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0.14 | 0.324 above average | — |
| Nick Morabito (LF) | NYM | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 1 | 0 | 0.315 average | — |
| Josh Jung (DH) | TEX | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 0 | 0.345 elite | — |
| Jake Burger (1B) | TEX | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | 0 | 0.318 average | — |
| Nicky Lopez (2B) | TEX | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.266 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.116 | positive favors home; negative favors away |
| Recent form | -0.138 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.072 | positive favors home; negative favors away |
| Composite | -0.669 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.84-3.25 | n/a | Base ML historical model prediction |
| variance_applied | 5-3 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 0.595 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 6-3 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-3 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-3 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-3 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.84-3.25 | 5-3 | 0.411 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-3 | 5-3 | -0 | Enhanced ML with recent form, H2H, low-score analysis |
| embedded_savant_run_environment | 5-3 | 6-3 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-3 | 6-3 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-3 | 6-3 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-3 | 6-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 |
|---|---|---|---|---|
| NYM | Marcus Semien | batter / 2B | better | predicted_RBI 3.65 |
| TEX | Nicky Lopez | batter / 2B | worse | predicted_SO 2.517 |
| NYM | Carson Benge | batter / RF | worse | predicted_SO 2.082 |
| TEX | Brandon Nimmo | batter / RF | worse | predicted_AB -1.54 |
| TEX | Wyatt Langford | batter / LF | better | predicted_RBI 1.48 |
| TEX | Corey Seager | batter / SS | worse | predicted_AB -1.45 |
| NYM | Juan Soto | batter / DH | worse | predicted_SO 1.394 |
| NYM | Nick Morabito | batter / LF | better | predicted_AB 1.385 |
| 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-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; H: current=9, sim=8; HR: current=1, sim=3; RBI: current=4, sim=6; R: current=4, sim=6; BB: current=3, sim=2; SO: current=7, sim=14). | NYM |
| info | CURRENT_PLAYER_MATCH_BOX | NYM current finalized hitter lines are model predictions and differ from the simulation box score: Juan Soto: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Carson Benge: SO current=1 box=3; Bo Bichette: H current=1 box=2, 2B current=1 box=0, HR current=0 box=1, R current=0 box=1; Mark Vientos: H current=1 box=0, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; A.J. Ewing: H current=1 box=0, BB current=0 box=1; Nick Morabito: AB current=3 box=4, 2B current=0 box=1, RBI current=0 box=1, R current=0 box=1; Marcus Semien: H current=1 box=3, HR current=0 box=2, RBI current=0 box=4; Francisco Lindor: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0, R current=1 box=0 | NYM |
| info | CURRENT_FINALIZED_MATCH_BOX | TEX model-prediction batting totals differ from final simulation box score (AB: current=32, sim=29; H: current=7, sim=2; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=5). | TEX |
| info | CURRENT_PLAYER_MATCH_BOX | TEX current finalized hitter lines are model predictions and differ from the simulation box score: Josh Jung: H current=1 box=0, R current=1 box=0, SO current=1 box=2; Ezequiel Duran: 2B current=0 box=1, SO current=1 box=0; Wyatt Langford: AB current=4 box=3, HR current=0 box=1, RBI current=0 box=2, SO current=1 box=0; Corey Seager: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Jake Burger: H current=1 box=0, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=0; Brandon Nimmo: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Nicky Lopez: AB current=3 box=4, H current=1 box=0, SO current=1 box=3; Danny Jansen: AB current=3 box=2, BB current=0 box=1, SO current=1 box=2 | TEX |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| SD | Robbie Ray | 3 ER / 15 outs | 1 ER / 10 outs | -2 |
| LAD | Yoshinobu Yamamoto | 3 ER / 20 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:
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
Robbie Ray (SD) threw 10 outs, 1 ER = 2.7 ERA against a projected 5.4 ERA (-2.7 ERA error)
Bullpen behind him: 0 ER over 12 outs.
The HOME lineup he faced produced 1 runs on 10 hits and 0 HR, against a projected 5 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
Yoshinobu Yamamoto (LAD) threw 18 outs, 2 ER = 3 ERA against a projected 4.05 ERA (-1.05 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 5 runs on 6 hits and 1 HR, against a projected 6 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SD | Robbie Ray (Starter) | 10 / 15 | 2.7 / 5.4 | 1 / 3 | 7 / 5 | 0 / 2 | 1 / 2 | 2.92 | 2 / 5 | 3.99 | venue away: 4.36 vs 3.2 ERA (worse here) · opp run factor 1.03 (strong) · 30 prior appearances this season |
| SD | Bradgley Rodriguez (Middle Reliever (High Leverage)) | 6 / 3 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 1 / 0 | 0.2 | 3 / 0 | 1.02 | |
| SD | Mason Miller (Closer) | 3 / 3 | 0 / 27 (-27.00) | 0 / 3 | 0 / 0 | 0 / 0 | 1 / 1 | 0.35 | 2 / 0 | 1.72 | |
| SD | Yuki Matsui (Middle Reliever (High Leverage)) | 3 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 1 / 0 | 0.62 | 0 / 1 | 0.99 | |
| LAD | Yoshinobu Yamamoto (Starter) | 18 / 20 | 3 / 4.05 | 2 / 3 | 5 / 6 | 1 / 1 | 1 / 2 | 1.56 | 4 / 8 | 6.91 | venue home: 3.13 vs 1.77 ERA (worse here) · opp run factor 0.99 (average) · 27 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Mookie Betts (SS) | LAD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | -1.4 | 0.339 above average | bad day |
| Manny Machado (3B) | SD | 4 / 4 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 1 / 0 | 0 / 1 | 0 / 1 | 1.07 | 0.329 above average | projection too low |
| Teoscar Hernández (LF) | LAD | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 1 / 1 | 0.94 | 0.331 above average | projection too low |
| Andy Pages (CF) | LAD | 4 / 4 | 3 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | 0.94 | 0.342 elite | projection too low |
| Ty France (1B) | SD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.93 | 0.333 above average | bad day |
| Freddie Freeman (1B) | LAD | 5 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.78 | 0.365 elite | bad day |
| Will Smith (C) | LAD | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 3 / 1 | 0 / 1 | 0.66 | 0.385 elite | projection too low |
| Fernando Tatis Jr. (RF) | SD | 5 / 4 | 3 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 1 / 1 | 0.61 | 0.38 elite | projection too low |
| Dustin Harris (LF) | SD | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.309 average | — |
| Jackson Merrill (CF) | SD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.347 elite | — |
| Jake Cronenworth (2B) | SD | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | -0.47 | 0.273 weak | — |
| Ethan Salas (C) | SD | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.199 weak | — |
| Xander Bogaerts (SS) | SD | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.323 above average | — |
| Max Muncy (3B) | LAD | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.349 elite | — |
| Samad Taylor (DH) | SD | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 1 / 1 | -0.14 | 0.318 average | — |
| Kyle Tucker (RF) | LAD | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0.14 | 0.334 above average | — |
| Shohei Ohtani (DH) | LAD | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 2 / 1 | 0 | 0.399 elite | — |
| Tommy Edman (2B) | LAD | 3 / 4 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.305 average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.749 | positive favors home; negative favors away |
| Recent form | 0.21 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.042 | positive favors home; negative favors away |
| Composite | 0.917 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.18-5.33 | n/a | Base ML historical model prediction |
| variance_applied | 4-5 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-6 | 0.535 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-7 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-7 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-7 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-7 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.18-5.33 | 4-5 | -0.146 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 5-6 | 0 | Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-6 | 5-7 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-7 | 5-7 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-7 | 5-7 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-7 | 5-7 | 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 | Robbie Ray | pitcher / Starter | better | predicted_SO 3 |
| LAD | Yoshinobu Yamamoto | pitcher / Starter | better | predicted_SO 3 |
| LAD | Kyle Tucker | batter / RF | better | predicted_RBI 2.51 |
| SD | Jackson Merrill | batter / CF | worse | predicted_AB -2.38 |
| SD | Manny Machado | batter / 3B | worse | predicted_SO 2.092 |
| LAD | Alex Vesia | pitcher / Middle Reliever (High Leverage) | worse | predicted_SO -2 |
| LAD | Freddie Freeman | batter / 1B | better | predicted_H 1.76 |
| SD | Dustin Harris | batter / LF | better | predicted_AB 1.67 |
| 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 pitcher projections differ from final simulation pitching box score (BB: current=2, sim=3). | LAD |
| info | CURRENT_FINALIZED_MATCH_BOX | LAD model-prediction batting totals differ from final simulation box score (AB: current=34, sim=31; H: current=8, sim=7; HR: current=1, sim=2; RBI: current=5, sim=7; R: current=5, sim=7; BB: current=4, sim=3; SO: current=8, sim=6). | LAD |
| info | CURRENT_PLAYER_MATCH_BOX | LAD current finalized hitter lines are model predictions and differ from the simulation box score: Shohei Ohtani: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Will Smith: AB current=4 box=3, H current=1 box=0, R current=0 box=1, SO current=1 box=0; Mookie Betts: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Teoscar Hernández: AB current=4 box=3, HR current=0 box=1, RBI current=1 box=2, BB current=0 box=1; Freddie Freeman: H current=1 box=3, RBI current=0 box=2, R current=0 box=1, SO current=1 box=0; Kyle Tucker: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Andy Pages: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Max Muncy: AB current=3 box=2, H current=1 box=0, RBI current=1 box=0, R current=0 box=1 | LAD |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model pitcher projections differ from final simulation pitching box score (H: current=6, sim=7; ER: current=6, sim=7). | SD |
| info | CURRENT_FINALIZED_MATCH_BOX | SD model-prediction batting totals differ from final simulation box score (AB: current=34, sim=35; H: current=7, sim=8; 2B: current=1, sim=2; 3B: current=0, sim=1; RBI: current=4, sim=5; R: current=6, sim=5; SO: current=9, sim=11). | SD |
| info | CURRENT_PLAYER_MATCH_BOX | SD current finalized hitter lines are model predictions and differ from the simulation box score: Manny Machado: H current=0 box=1, 2B current=0 box=1, R current=0 box=1, BB current=1 box=0; Dustin Harris: AB current=4 box=5, 3B current=0 box=1, R current=0 box=1, SO current=1 box=2; Jackson Merrill: AB current=4 box=3, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Samad Taylor: AB current=3 box=4, RBI current=0 box=1, SO current=1 box=0; Fernando Tatis Jr.: H current=1 box=0, 2B current=1 box=0, R current=1 box=0; Jake Cronenworth: H current=1 box=2, R current=1 box=0; Ethan Salas: AB current=3 box=4; Xander Bogaerts: AB current=4 box=3, 2B current=0 box=1, RBI current=0 box=1, SO current=1 box=2 | SD |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| STL | Matthew Liberatore | 3 ER / 15 outs | 1 ER / 17 outs | -2 |
| PIT | Lake Bachar | 2 ER / 15 outs | 0 ER / 5 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: Matthew Liberatore (STL) posted 1.59 ERA vs projected 5.40 (1 ER in 17 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
Matthew Liberatore (STL) threw 17 outs, 1 ER = 1.59 ERA against a projected 5.4 ERA (-3.81 ERA error)
Bullpen behind him: 0 ER over 3 outs.
The HOME lineup he faced produced 1 runs on 6 hits and 1 HR, against a projected 5 runs / 10 hits (-4 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Lake Bachar (PIT) threw 5 outs, 0 ER = 0 ERA against a projected 3.6 ERA (-3.6 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The AWAY lineup he faced produced 5 runs on 10 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| STL | Matthew Liberatore (Starter) | 17 / 15 | 1.59 / 5.4 (-3.81) | 1 / 3 | 6 / 6 | 1 / 1 | 0 / 1 | 2.09 | 6 / 4 | 4.41 | venue away: 5.27 vs 5.45 ERA (ok) · opp run factor 1.02 (average) · 30 prior appearances this season |
| STL | George Soriano (Setup Man) | 3 / 4 | 0 / 6.75 (-6.75) | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 0 | 0.41 | 2 / 0 | 0.56 | |
| PIT | Lake Bachar (Starter) | 5 / 15 | 0 / 3.6 (-3.60) | 0 / 2 | 1 / 2 | 0 / 1 | 1 / 3 | 2.13 | 2 / 5 | 4.32 | venue home: 2.13 vs 2.53 ERA (ok) · opp run factor 0.98 (average) · 51 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Rafael Flores Jr. (C) | PIT | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.358 elite | bad day |
| Ryan O'Hearn (1B) | PIT | 3 / 4 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1.09 | 0.316 average | no signal |
| Brandon Lowe (2B) | PIT | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | 1.07 | 0.33 above average | projection too low |
| JJ Wetherholt (2B) | STL | 4 / 4 | 3 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0.94 | 0.347 elite | projection too low |
| Konnor Griffin (SS) | PIT | 4 / 4 | 0 / 2 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 1 | -0.94 | 0.307 average | no signal |
| Jordan Walker (RF) | STL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.93 | 0.342 elite | bad day |
| Bryan Reynolds (LF) | PIT | 3 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 1 | -0.78 | 0.354 elite | bad day |
| Masyn Winn (SS) | STL | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 2 / 1 | 0.64 | 0.298 below average | good day |
| Iván Herrera (DH) | STL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | 0 / 1 | -0.47 | 0.333 above average | — |
| Nolan Gorman (3B) | STL | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 0.47 | 0.28 weak | — |
| José Fermín (LF) | STL | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 0 | 0.47 | 0.295 below average | — |
| Nathan Church (CF) | STL | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.287 below average | — |
| Ronny Simon (RF) | PIT | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.333 above average | — |
| Jake Mangum (CF) | PIT | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 1 | -0.47 | 0.289 below average | — |
| Leonardo Bernal (C) | STL | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 0 | 1 / 1 | -0.31 | 0.366 elite | — |
| Alec Burleson (1B) | STL | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 0 | 0 / 0 | 3 / 1 | -0.31 | 0.371 elite | — |
| Nick Gonzales (DH) | PIT | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.31 | 0.324 above average | — |
| Jared Triolo (3B) | PIT | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.286 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.367 | positive favors home; negative favors away |
| Recent form | 0.526 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.044 | positive favors home; negative favors away |
| Composite | 0.609 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.14-5.51 | n/a | Base ML historical model prediction |
| variance_applied | 4-6 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-6 | 0.556 | 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-6 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | n/a | Capped at max 12 realistic runs |
| simulation_result | 5-6 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.14-5.51 | 4-6 | 0.63 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-6 | 5-6 | -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 | 5-6 | 5-6 | 0 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 5-6 | 5-6 | 0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 5-6 | 5-6 | 0 | Capped at max 12 realistic runs |
| simulation_result | 5-6 | 5-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 |
|---|---|---|---|---|
| PIT | Jared Triolo | batter / 3B | better | predicted_RBI 2.736 |
| STL | José Fermín | batter / LF | worse | predicted_SO 2.593 |
| PIT | Lake Bachar | pitcher / Starter | better | predicted_ER -2 |
| STL | Masyn Winn | batter / SS | better | predicted_2B 1.841 |
| STL | Nathan Church | batter / CF | better | predicted_BB 1.798 |
| STL | Leonardo Bernal | batter / C | worse | predicted_AB -1.66 |
| PIT | Bryan Reynolds | batter / LF | neutral | predicted_RBI 1.59 |
| STL | JJ Wetherholt | batter / 2B | worse | predicted_BB 1.527 |
| 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=34, sim=32; H: current=10, sim=9; 2B: current=2, sim=3; RBI: current=5, sim=6; R: current=5, sim=6; BB: current=3, sim=2; SO: current=8, sim=4; SF: current=0, sim=1). | PIT |
| info | CURRENT_PLAYER_MATCH_BOX | PIT current finalized hitter lines are model predictions and differ from the simulation box score: Konnor Griffin: H current=2 box=1, 2B current=0 box=1; Bryan Reynolds: H current=1 box=2, RBI current=1 box=2, BB current=1 box=0; Nick Gonzales: H current=1 box=0, 2B current=1 box=0; Ryan O'Hearn: AB current=4 box=3, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Jared Triolo: AB current=3 box=2, H current=1 box=2, HR current=0 box=1, RBI current=0 box=3; Rafael Flores Jr.: H current=1 box=2, 2B current=0 box=1, HR current=1 box=0, RBI current=1 box=0; Brandon Lowe: RBI current=1 box=0, BB current=1 box=0, SO current=1 box=0; Ronny Simon: AB current=4 box=3, H current=1 box=0, R current=1 box=0, SO current=1 box=0 | PIT |
| info | CURRENT_FINALIZED_MATCH_BOX | STL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=32; H: current=8, sim=5; 3B: current=0, sim=1; HR: current=1, sim=2; R: current=4, sim=5; BB: current=3, sim=7; HBP: 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: AB current=4 box=3, H current=1 box=0, BB current=1 box=2; Jordan Walker: BB current=0 box=1, SO current=1 box=0; Iván Herrera: HR current=0 box=1, BB current=1 box=0, HBP current=0 box=1; Leonardo Bernal: AB current=4 box=3, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; Alec Burleson: AB current=4 box=5, H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0; José Fermín: H current=1 box=0, RBI current=1 box=0, SO current=0 box=3; Masyn Winn: AB current=3 box=4, H current=1 box=2, 2B current=0 box=2, RBI current=0 box=2; Nathan Church: AB current=3 box=2, 3B current=0 box=1, RBI current=0 box=1, R current=0 box=1 | STL |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TB | Mason Englert | 3 ER / 15 outs | 8 ER / 11 outs | 5 |
| NYY | Gerrit Cole | 1 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:
Starter miss: Mason Englert (TB) posted 19.64 ERA vs projected 5.40 (8 ER in 11 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
Mason Englert (TB) threw 11 outs, 8 ER = 19.64 ERA against a projected 5.4 ERA (14.24 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 9 runs on 12 hits and 4 HR, against a projected 4 runs / 8 hits (5 runs vs projection).
Who did the damage to him:
Verdict: both: the starter was hit hard AND the lineup underproduced
HOME pitching
Gerrit Cole (NYY) threw 17 outs, 2 ER = 3.18 ERA against a projected 1.59 ERA (1.59 ERA error)
Bullpen behind him: 0 ER over 9 outs.
The AWAY lineup he faced produced 2 runs on 6 hits and 1 HR, against a projected 4 runs / 8 hits (-2 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TB | Mason Englert (Starter) | 11 / 15 | 19.64 / 5.4 (+14.24) | 8 / 3 | 9 / 9 | 4 / 0 | 1 / 2 | 1.05 | 6 / 8 | 4.9 | venue away: 5.91 vs 7.36 ERA (ok) · opp run factor 1.02 (strong) · 14 prior appearances this season |
| NYY | Gerrit Cole (Starter) | 17 / 17 | 3.18 / 1.59 | 2 / 1 | 3 / 2 | 1 / 1 | 3 / 5 | 0.58 | 8 / 5 | 5.84 | venue home: 3.93 vs 3.41 ERA (worse here) · opp run factor 1.02 (average) · 21 prior appearances this season |
| NYY | Brent Headrick (Setup Man) | 1 / 3 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0.36 | 0 / 1 | 1.43 | |
| NYY | David Bednar (Closer) | 3 / 5 | 0 / 0 | 0 / 0 | 0 / 2 | 0 / 0 | 0 / 0 | 0.18 | 1 / 2 | 1.2 | |
| NYY | Paul Blackburn (Middle Reliever (High Leverage)) | 3 / 2 | 0 / 27 (-27.00) | 0 / 2 | 1 / 5 | 0 / 0 | 0 / 0 | 0.43 | 0 / 0 | 0.91 | |
| NYY | Tim Hill (Middle Reliever (High Leverage)) | 2 / 0 | 0 / n/a | 0 / 2 | 0 / 2 | 0 / 0 | 0 / 0 | 0.23 | 0 / 1 | 0.51 |
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 | 3 / 1 | 0 / 0 | 0 / 0 | 2 / 1 | 2 / 1 | 2 / 1 | 1 / 1 | 0 / 1 | 1.87 | 0.375 elite | projection too low |
| Junior Caminero (3B) | TB | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 1 | -1.73 | 0.361 elite | bad day |
| Cedric Mullins (CF) | TB | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 1.4 | 0.264 weak | good day |
| Ryan McMahon (3B) | NYY | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 5 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 1.4 | 0.293 below average | good day |
| Jonny DeLuca (RF) | TB | 4 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1.25 | 0.257 weak | good day |
| Jonathan Aranda (DH) | TB | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -1.11 | 0.345 elite | bad day |
| George Lombard Jr. (SS) | NYY | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | 1 / 1 | 0 / 0 | 4 / 1 | 0.93 | 0.291 below average | good day |
| Ryan Vilade (1B) | TB | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | -0.47 | 0.333 above average | — |
| Heliot Ramos (RF) | NYY | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 1 | 0 / 0 | 1 / 1 | 0.47 | 0.327 above average | — |
| Ali Sánchez (C) | NYY | 4 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.244 weak | — |
| Richie Palacios (2B) | TB | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.309 average | — |
| Liam Hicks (C) | TB | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 2 / 0 | 0 / 0 | 0.19 | 0.319 average | — |
| Victor Mesa Jr. (LF) | TB | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | -0.14 | 0.334 above average | — |
| José Caballero (LF) | NYY | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | -0.14 | 0.28 weak | — |
| Spencer Jones (CF) | NYY | 5 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 2 / 2 | -0.02 | 0.325 above average | — |
| Luis García Jr. (1B) | NYY | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 0 | 2 / 1 | 0.02 | 0.341 elite | — |
| Jorge Mateo (SS) | TB | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 3 / 1 | 0 | 0.278 weak | — |
| Jazz Chisholm Jr. (2B) | NYY | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 1 / 1 | 1 / 1 | 0 | 0.295 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | -0.064 | positive favors home; negative favors away |
| Recent form | -0.714 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.004 | positive favors home; negative favors away |
| Composite | -0.385 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 3.88-5.27 | 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 | 3.88-5.27 | 4-5 | 0.389 | 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 |
|---|---|---|---|---|
| TB | Jorge Mateo | batter / SS | better | predicted_RBI 2.85 |
| TB | Victor Mesa Jr. | batter / LF | worse | predicted_AB 2.746 |
| NYY | Ali Sánchez | batter / C | better | predicted_AB 2.5 |
| TB | Ryan Vilade | batter / 1B | better | predicted_H 2.321 |
| TB | Jonathan Aranda | batter / DH | worse | predicted_AB 2.24 |
| NYY | Luis García Jr. | batter / 1B | worse | predicted_AB 2.07 |
| NYY | Ryan McMahon | batter / 3B | worse | predicted_SO 2.064 |
| TB | Alex Cook | pitcher / Reliever | worse | predicted_H 2 |
| 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=31, sim=45; H: current=8, sim=12; 3B: current=0, sim=1; HR: current=1, sim=0; BB: current=3, sim=5; SO: current=10, sim=14). | 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=5, R current=1 box=0, BB current=0 box=1, SO current=1 box=2; George Lombard Jr.: AB current=4 box=6, H current=1 box=2, RBI current=1 box=0, SO current=1 box=2; Spencer Jones: AB current=4 box=5, 3B current=0 box=1, R current=0 box=1; José Caballero: AB current=3 box=5, H current=1 box=2; Luis García Jr.: AB current=4 box=6, H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0; Ben Rice: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, HR current=1 box=0; Jazz Chisholm Jr.: AB current=3 box=4, H current=1 box=0, R current=1 box=0; Ryan McMahon: AB current=3 box=4, H current=1 box=0, BB current=0 box=1, SO current=1 box=3 | NYY |
| info | CURRENT_FINALIZED_MATCH_BOX | TB model-prediction batting totals differ from final simulation box score (AB: current=31, sim=44; H: current=8, sim=11; 2B: current=1, sim=3; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=5; SO: current=8, sim=9; 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: AB current=4 box=6, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Victor Mesa Jr.: AB current=4 box=6, H current=1 box=0, R current=1 box=0, SO current=1 box=2; Richie Palacios: AB current=3 box=4, H current=1 box=0, SO current=1 box=2; Ryan Vilade: AB current=3 box=4, H current=1 box=3, HR current=0 box=1, RBI current=0 box=2; Jonny DeLuca: AB current=4 box=5, 2B current=0 box=1, RBI current=1 box=0, R current=0 box=1; Liam Hicks: AB current=3 box=5, RBI current=1 box=0, R current=0 box=1, BB current=0 box=1; Junior Caminero: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Cedric Mullins: AB current=3 box=5, H current=0 box=2, 2B current=0 box=1, R current=0 box=1 | TB |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| TOR | Max Scherzer | 3 ER / 15 outs | 4 ER / 15 outs | 1 |
| BAL | Chris Bassitt | 3 ER / 15 outs | 0 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
Max Scherzer (TOR) threw 15 outs, 4 ER = 7.2 ERA against a projected 5.4 ERA (1.8 ERA error)
Bullpen behind him: 0 ER over 0 outs.
The HOME lineup he faced produced 4 runs on 5 hits and 1 HR, against a projected 4 runs / 7 hits (0 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Chris Bassitt (BAL) threw 15 outs, 2 ER = 3.6 ERA against a projected 5.4 ERA (-1.8 ERA error)
Bullpen behind him: 0 ER over 6 outs.
The AWAY lineup he faced produced 2 runs on 9 hits and 0 HR, against a projected 3 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| TOR | Max Scherzer (Starter) | 15 / 15 | 7.2 / 5.4 | 4 / 3 | 4 / 7 | 1 / 1 | 3 / 1 | 1.77 | 7 / 3 | 3.57 | venue away: 5.7 vs 6.25 ERA (ok) · opp run factor 1.09 (average) · 16 prior appearances this season |
| BAL | Chris Bassitt (Starter) | 15 / 15 | 3.6 / 5.4 | 2 / 3 | 7 / 6 | 0 / 0 | 1 / 0 | 2.04 | 2 / 8 | 5.59 | venue home: 3.54 vs 5.53 ERA (ok) · opp run factor 1.01 (weak) · 19 prior appearances this season |
| BAL | Andrew Kittredge (Closer) | 3 / 5 | 0 / 5.4 (-5.40) | 0 / 1 | 1 / 2 | 0 / 0 | 0 / 1 | 0.18 | 1 / 0 | 0.98 | |
| BAL | Rico Garcia (Setup Man) | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.22 | 0 / 1 | 0.8 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Andrés Giménez (SS) | TOR | 4 / 3 | 2 / 1 | 2 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 1.09 | 0.273 weak | good day |
| Kazuma Okamoto (3B) | TOR | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 1 / 0 | 0 / 1 | -1.07 | 0.328 above average | bad day |
| Sean Keys (1B) | TOR | 1 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.26 weak | — |
| Ernie Clement (2B) | TOR | 4 / 3 | 2 / 1 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0.47 | 0.26 weak | — |
| Coby Mayo (DH) | BAL | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -0.47 | 0.336 above average | — |
| Gunnar Henderson (SS) | BAL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 2 / 1 | -0.47 | 0.323 above average | — |
| Leody Taveras (RF) | BAL | 3 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.27 weak | — |
| Josh Smith (LF) | TOR | 2 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | -0.33 | 0.281 weak | — |
| George Springer (DH) | TOR | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -0.33 | 0.304 average | — |
| Dylan Beavers (LF) | BAL | 3 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 1 / 1 | 1 / 1 | -0.31 | 0.293 below average | — |
| Brandon Valenzuela (C) | TOR | 4 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0.14 | 0.312 average | — |
| Colton Cowser (CF) | BAL | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 2 / 1 | -0.14 | 0.314 average | — |
| Nathan Lukes (RF) | TOR | 5 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0 | 0.289 below average | — |
| Myles Straw (CF) | TOR | 3 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 | 0.296 below average | — |
| Christian Encarnacion-Strand (3B) | BAL | 4 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 0 | 0.334 above average | — |
| Pete Alonso (1B) | BAL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | 2 / 1 | 1 / 1 | 1 / 1 | 2 / 1 | 0 | 0.397 elite | — |
| Jeremiah Jackson (2B) | BAL | 3 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.283 below average | — |
| Carlos Narváez (C) | BAL | 3 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 | 0.26 weak | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.077 | positive favors home; negative favors away |
| Recent form | 0.014 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.079 | positive favors home; negative favors away |
| Composite | 0.4 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.54-4.5 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 4-5 | 0.505 | 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 | 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.54-4.5 | 5-4 | -0.958 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 4-5 | 2 | 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 | 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 |
|---|---|---|---|---|
| BAL | Jeremiah Jackson | batter / 2B | better | predicted_RBI 1.89 |
| TOR | Brandon Valenzuela | batter / C | boosted | predicted_2B 1.882 |
| BAL | Carlos Narváez | batter / C | worse | predicted_H 1.82 |
| BAL | Gunnar Henderson | batter / SS | worse | predicted_H 1.7 |
| TOR | Myles Straw | batter / CF | worse | predicted_AB 1.5 |
| BAL | Colton Cowser | batter / CF | worse | predicted_H 1.44 |
| TOR | Josh Smith | batter / LF | worse | predicted_H 1.417 |
| TOR | Sean Keys | batter / 1B | worse | predicted_AB 1.316 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| info | CURRENT_PITCHER_DUPLICATION | BAL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | BAL |
| info | CURRENT_PITCHER_DUPLICATION | TOR pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TOR |
| info | CURRENT_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=35; H: current=7, sim=11; 2B: current=1, sim=2; HR: current=1, sim=2; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=1; SO: current=9, sim=4). | BAL |
| info | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Coby Mayo: AB current=4 box=3, BB current=0 box=1, SO current=1 box=0; Christian Encarnacion-Strand: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, SO current=1 box=0; Pete Alonso: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Gunnar Henderson: H current=1 box=3, 2B current=0 box=1, BB current=1 box=0, SO current=1 box=0; Dylan Beavers: 2B current=1 box=0, R current=0 box=1, BB current=1 box=0, SO current=1 box=0; Leody Taveras: AB current=3 box=4; Jeremiah Jackson: H current=1 box=2, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Carlos Narváez: AB current=3 box=4, H current=0 box=2, 2B current=0 box=1, SO current=1 box=0 | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=30, sim=34; 2B: current=1, sim=2; HR: current=1, sim=0; R: current=3, sim=4; BB: current=3, sim=1; SO: current=6, sim=10; SF: current=0, sim=1). | TOR |
| info | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: Josh Smith: H current=0 box=2, RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Sean Keys: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0; Nathan Lukes: RBI current=0 box=1, SO current=0 box=1; Andrés Giménez: H current=1 box=0, RBI current=1 box=0, BB current=0 box=1; Brandon Valenzuela: AB current=3 box=4, H current=1 box=2, 2B current=0 box=2, RBI current=0 box=1; Ernie Clement: AB current=3 box=4, H current=1 box=2, 2B current=1 box=0, RBI current=0 box=1; George Springer: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Kazuma Okamoto: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0 | TOR |
| 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:
Starter miss: Trey Gibson (BAL) posted 0.00 ERA vs projected 13.50 (0 ER in 20 outs); he is materially worse pitching home (9.35 ERA there vs 5.27 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 Max Scherzer (TOR) at a projected 7.2 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 4 runs on 4 hits and 1 HR, against a projected 4 runs / 7 hits (0 runs vs projection).
Who did the damage to him:
Verdict: neither side broke materially - the result is closer to variance
HOME pitching
Trey Gibson (BAL) threw 20 outs, 0 ER = 0 ERA against a projected 13.5 ERA (-13.5 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 4 outs.
The AWAY lineup he faced produced 0 runs on 3 hits and 0 HR, against a projected 1 runs / 4 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| BAL | Trey Gibson (Starter) | 20 / 12 | 0 / 13.5 (-13.50) | 0 / 6 | 3 / 6 | 0 / 0 | 2 / 2 | 3.33 | 7 / 2 | 5.59 | venue home: 9.35 vs 5.27 ERA (worse here) · opp run factor 0.97 (weak) · 8 prior appearances this season |
| BAL | Josh Walker (Middle Reliever (High Leverage)) | 3 / 5 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 0 | 0 / 0 | 0.33 | 0 / 1 | 1.1 | |
| BAL | Yennier Cano (Middle Reliever (High Leverage)) | 1 / 4 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 1 / 0 | 0.14 | 1 / 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Pete Alonso (1B) | BAL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 1 / 1 | 0 / 1 | 1 / 1 | -1.73 | 0.397 elite | bad day |
| Kazuma Okamoto (3B) | TOR | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | -1.4 | 0.328 above average | bad day |
| Christian Encarnacion-Strand (3B) | BAL | 3 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 3 / 1 | 2 / 1 | 0 / 0 | 0 / 1 | 1.4 | 0.334 above average | projection too low |
| Dylan Beavers (LF) | BAL | 4 / 4 | 0 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | 2 / 1 | -1.11 | 0.293 below average | projection too high |
| Nathan Lukes (RF) | TOR | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0.47 | 0.289 below average | — |
| Ernie Clement (2B) | TOR | 3 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.26 weak | — |
| Gunnar Henderson (SS) | BAL | 2 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.323 above average | — |
| Jeremiah Jackson (2B) | BAL | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | -0.47 | 0.283 below average | — |
| Coby Mayo (DH) | BAL | 3 / 4 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 0 | 0 / 1 | 0.31 | 0.336 above average | — |
| Colton Cowser (CF) | BAL | 3 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0.31 | 0.314 average | — |
| Josh Smith (LF) | TOR | 4 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 | 0.281 weak | — |
| Myles Straw (CF) | TOR | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 2 / 0 | 0 | 0.296 below average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.077 | positive favors home; negative favors away |
| Recent form | 0.014 | positive favors home; negative favors away |
| Starting-pitcher matchup | 0.118 | positive favors home; negative favors away |
| Composite | 0.126 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.79-3.85 | n/a | Base ML historical model prediction |
| variance_applied | 5-4 | n/a | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 6-5 | 0.512 | 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 | 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 | 4.79-3.85 | 5-4 | 0.059 | Deterministic baseline target (variance factor 1.0) |
| enhanced_prediction | 5-4 | 6-5 | -0 | 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 | 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 |
|---|---|---|---|---|
| TOR | Myles Straw | batter / CF | better | predicted_RBI 3.86 |
| TOR | Brandon Valenzuela | batter / C | worse | predicted_H 2.73 |
| BAL | Dylan Beavers | batter / LF | better | predicted_RBI 2.67 |
| BAL | Christian Encarnacion-Strand | batter / 3B | better | predicted_H 2.19 |
| BAL | Coby Mayo | batter / DH | worse | predicted_SO 1.917 |
| TOR | Vladimir Guerrero Jr. | batter / 1B | boosted | predicted_RBI 1.66 |
| TOR | Kazuma Okamoto | batter / 3B | worse | predicted_AB -1.65 |
| BAL | Gunnar Henderson | batter / SS | worse | predicted_BB 1.576 |
| Severity | Rule | Finding | Subject |
|---|---|---|---|
| warning | INNING_OUTS | Inning 9 home has outs=0; expected 3 for a played half inning. | |
| warning | PITCH_COUNT_PITCHER_MATCH | TOR pitch_count row for Max Scherzer differs from pitching box score: batters_faced/BF: summary=24, box=21. | TOR Max Scherzer |
| info | CURRENT_PITCHER_DUPLICATION | BAL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | BAL |
| info | CURRENT_PITCHER_DUPLICATION | TOR pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit. | TOR |
| info | CURRENT_FINALIZED_MATCH_BOX | BAL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; H: current=7, sim=10; RBI: current=4, sim=5; R: current=4, sim=5; BB: current=3, sim=7; SO: current=9, sim=7). | BAL |
| info | CURRENT_PLAYER_MATCH_BOX | BAL current finalized hitter lines are model predictions and differ from the simulation box score: Coby Mayo: H current=1 box=0, RBI current=1 box=0, R current=1 box=0, BB current=0 box=1; Christian Encarnacion-Strand: H current=1 box=3, BB current=0 box=1, SO current=1 box=0; Gunnar Henderson: AB current=4 box=3, H current=1 box=2, BB current=1 box=2, SO current=1 box=0; Dylan Beavers: AB current=4 box=5, 2B current=1 box=0, HR current=0 box=1, RBI current=1 box=3; Leody Taveras: H current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1; Pete Alonso: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Colton Cowser: R current=0 box=1, BB current=0 box=1, SO current=1 box=2; Carlos Narváez: AB current=3 box=4, H current=0 box=1, 2B current=0 box=1, SO current=1 box=0 | BAL |
| info | CURRENT_FINALIZED_MATCH_BOX | TOR model-prediction batting totals differ from final simulation box score (AB: current=31, sim=36; H: current=8, sim=9; 2B: current=1, sim=4; HR: current=1, sim=0; RBI: current=4, sim=6; R: current=3, sim=6; BB: current=3, sim=2; HBP: current=0, sim=1). | TOR |
| info | CURRENT_PLAYER_MATCH_BOX | TOR current finalized hitter lines are model predictions and differ from the simulation box score: Kazuma Okamoto: AB current=4 box=3, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Josh Smith: H current=0 box=1, R current=0 box=1, BB current=0 box=1, SO current=1 box=0; George Springer: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Vladimir Guerrero Jr.: AB current=4 box=5, 2B current=0 box=1, RBI current=0 box=2, BB current=1 box=0; Nathan Lukes: AB current=4 box=5, H current=1 box=0, RBI current=1 box=0; Andrés Giménez: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, RBI current=1 box=0; Brandon Valenzuela: AB current=3 box=4, H current=1 box=3, R current=0 box=1, BB current=1 box=0; Myles Straw: AB current=3 box=4, H current=1 box=2, 2B current=0 box=2, RBI current=0 box=4 | TOR |
| info | RECONCILIATION_PROPAGATION | No score_target_reconciliation step was used for this game. |
| Team | Starter | Projected | Actual | ER err |
|---|---|---|---|---|
| WAS | Richard Lovelady | 2 ER / 11 outs | 0 ER / 4 outs | -2 |
| DET | Framber Valdez | 2 ER / 18 outs | 2 ER / 16 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: Richard Lovelady (WAS) posted 0.00 ERA vs projected 4.91 (0 ER in 4 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
Richard Lovelady (WAS) threw 4 outs, 0 ER = 0 ERA against a projected 4.91 ERA (-4.91 ERA error)
Bullpen behind him: 1 ER over 17 outs.
The HOME lineup he faced produced 1 runs on 7 hits and 1 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
Framber Valdez (DET) threw 16 outs, 2 ER = 3.38 ERA against a projected 3 ERA (0.38 ERA error)
Bullpen behind him: 2 ER over 11 outs.
The AWAY lineup he faced produced 4 runs on 6 hits and 1 HR, against a projected 5 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) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| WAS | Richard Lovelady (Starter) | 4 / 11 | 0 / 4.91 (-4.91) | 0 / 2 | 1 / 3 | 0 / 1 | 1 / 0 | 2.31 | 0 / 8 | 4.05 | venue away: 0 vs 5.4 ERA (ok) · opp run factor 0.99 (average) · 36 prior appearances this season |
| WAS | Brad Lord (Setup Man) | 10 / 6 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 2 / 0 | 0.57 | 3 / 1 | 1.42 | |
| WAS | Erik Tolman (Closer) | 2 / 5 | 0 / 5.4 (-5.40) | 0 / 1 | 0 / 1 | 0 / 0 | 2 / 1 | 0.49 | 0 / 3 | 1.26 | |
| WAS | Yovanny Cruz (Middle Reliever (High Leverage)) | 4 / 2 | 6.75 / 0 (+6.75) | 1 / 0 | 3 / 0 | 0 / 0 | 0 / 1 | 0.7 | 2 / 2 | 0.85 | |
| WAS | Jack Sinclair (Reliever) | 1 / 0 | 0 / n/a | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | n/a | 0 / 2 | n/a | |
| DET | Framber Valdez (Starter) | 16 / 18 | 3.38 / 3 | 2 / 2 | 4 / 2 | 0 / 0 | 3 / 4 | 2.33 | 6 / 7 | 3.99 | venue home: 4 vs 4.1 ERA (ok) · opp run factor 1.09 (strong) · 30 prior appearances this season |
| DET | Kenley Jansen (Closer) | 3 / 4 | 0 / 27 (-27.00) | 0 / 4 | 0 / 5 | 0 / 0 | 0 / 0 | 0.56 | 0 / 2 | 1.15 | |
| DET | Jacob Waguespack (Middle Reliever (High Leverage)) | 6 / 0 | 4.5 / n/a | 1 / 0 | 1 / 0 | 0 / 0 | 1 / 1 | 0.5 | 2 / 5 | 1.12 | |
| DET | Tyler Kinley (Middle Reliever) | 2 / 0 | 13.5 / n/a | 1 / 0 | 1 / 0 | 1 / 0 | 0 / 0 | 0.47 | 0 / 0 | 0.68 |
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 Malgeri (RF) | DET | 5 / 3 | 2 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 0 | 0 / 1 | 0 / 1 | 1.07 | 0.315 average | no signal |
| Dillon Dingler (C) | DET | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 0 | 0 / 1 | -1.07 | 0.34 elite | bad day |
| Yohandy Morales (1B) | WAS | 4 / 3 | 1 / 1 | 0 / 0 | 0 / 0 | 1 / 0 | 2 / 0 | 1 / 1 | 0 / 0 | 1 / 1 | 0.93 | 0.331 above average | projection too low |
| Kevin McGonigle (3B) | DET | 5 / 4 | 3 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 0 / 1 | 1 / 1 | 0.92 | 0.357 elite | projection too low |
| James Wood (RF) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 1 | 0 / 1 | 0 / 1 | 2 / 1 | -0.8 | 0.406 elite | bad day |
| Nasim Nuñez (SS) | WAS | 2 / 3 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 0 | 0 / 1 | 0.8 | 0.266 weak | good day |
| Spencer Torkelson (1B) | DET | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 4 / 1 | -0.8 | 0.315 average | no signal |
| Andrés Chaparro (DH) | WAS | 4 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 2 / 1 | -0.64 | 0.343 elite | bad day |
| Max Clark (CF) | DET | 2 / 3 | 1 / 1 | 1 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 1 | 0.64 | 0.326 above average | projection too low |
| Dylan Crews (LF) | WAS | 4 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 1 | -0.47 | 0.318 average | — |
| Harry Ford (C) | WAS | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 1 / 1 | -0.47 | 0.288 below average | — |
| Brady House (3B) | WAS | 4 / 4 | 2 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 0 | 0 / 0 | 1 / 1 | 0.47 | 0.334 above average | — |
| Jacob Young (CF) | WAS | 4 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | -0.47 | 0.315 average | — |
| Zach McKinstry (2B) | DET | 1 / 3 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 0 / 0 | 0.33 | 0.283 below average | — |
| Hao-Yu Lee (DH) | DET | 5 / 4 | 1 / 1 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 0 | 0 / 0 | 1 / 1 | -0.31 | 0.304 average | — |
| CJ Abrams (2B) | WAS | 2 / 4 | 1 / 1 | 0 / 0 | 0 / 0 | 0 / 1 | 1 / 1 | 0 / 1 | 2 / 0 | 0 / 1 | -0.27 | 0.331 above average | — |
| Riley Greene (LF) | DET | 3 / 4 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 1 | 0 / 1 | 2 / 1 | 0 / 1 | -0.14 | 0.373 elite | — |
| John Peck (SS) | DET | 2 / 3 | 0 / 1 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 0 / 0 | 1 / 0 | 1 / 1 | -0.14 | 0.326 above average | — |
| Signal | Home-away edge | Meaning |
|---|---|---|
| Season quality | 0.217 | positive favors home; negative favors away |
| Recent form | -0.156 | positive favors home; negative favors away |
| Starting-pitcher matchup | -0.098 | positive favors home; negative favors away |
| Composite | -0.494 | positive favors home; negative favors away |
| Stage | Away-home runs | Confidence | What changed |
|---|---|---|---|
| historical_ml | 4.04-4.64 | 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 winner_starter_is_below_average, starter_quality_favours_the_other_side, matchup_recency_guardrail) |
| embedded_savant_run_environment | 6-4 | n/a | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-4 | n/a | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-4 | n/a | Capped at max 12 realistic runs |
| simulation_result | 6-4 | n/a | Final inning-by-inning simulation result |
| Stage | Before | After | Toward final pick | What changed |
|---|---|---|---|---|
| variance_applied | 4.04-4.64 | 4-5 | -0.404 | 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 winner_starter_is_below_average, starter_quality_favours_the_other_side, matchup_recency_guardrail) |
| embedded_savant_run_environment | 5-4 | 6-4 | 1 | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| fundamental_edge_target_review | 6-4 | 6-4 | -0 | Refreshed score target and win probability after Savant/pitcher/team-strength adjustments |
| capped_target | 6-4 | 6-4 | -0 | Capped at max 12 realistic runs |
| simulation_result | 6-4 | 6-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 |
|---|---|---|---|---|
| WAS | Yohandy Morales | batter / 1B | worse | predicted_AB 3.214 |
| DET | Hao-Yu Lee | batter / DH | better | predicted_SO 3.194 |
| WAS | Dylan Crews | batter / LF | worse | predicted_SO 3 |
| DET | Riley Greene | batter / LF | better | predicted_H 2.95 |
| DET | Spencer Torkelson | batter / 1B | worse | predicted_AB 2.651 |
| DET | Ben Malgeri | batter / RF | better | predicted_AB 2.5 |
| WAS | Andrés Chaparro | batter / DH | better | predicted_AB 2.438 |
| DET | Kevin McGonigle | batter / 3B | worse | predicted_SO 2.38 |
| 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=48; H: current=8, sim=9; 2B: current=1, sim=4; HR: current=1, sim=2; SO: current=8, sim=17). | DET |
| info | CURRENT_PLAYER_MATCH_BOX | DET current finalized hitter lines are model predictions and differ from the simulation box score: Kevin McGonigle: AB current=4 box=6, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Hao-Yu Lee: AB current=4 box=6, 2B current=1 box=0, HR current=0 box=1, R current=0 box=1; Ben Malgeri: AB current=3 box=5, H current=1 box=2, 2B current=0 box=1, R current=0 box=1; Max Clark: AB current=3 box=6, H current=1 box=0, R current=1 box=0; Dillon Dingler: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Zach McKinstry: AB current=3 box=4, BB current=0 box=1, SO current=0 box=2; Spencer Torkelson: AB current=3 box=6, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Riley Greene: AB current=4 box=5, H current=1 box=4, 2B current=0 box=3, SO current=1 box=0 | DET |
| info | CURRENT_FINALIZED_MATCH_BOX | WAS model-prediction batting totals differ from final simulation box score (AB: current=32, sim=46; H: current=8, sim=7; 3B: current=0, sim=1; HR: current=1, sim=0; RBI: current=4, sim=6; R: current=5, sim=6; BB: current=3, sim=5; SO: current=8, sim=16). | WAS |
| info | CURRENT_PLAYER_MATCH_BOX | WAS current finalized hitter lines are model predictions and differ from the simulation box score: Andrés Chaparro: AB current=4 box=5, 2B current=1 box=0, RBI current=1 box=0, R current=0 box=1; CJ Abrams: AB current=4 box=6, 3B current=0 box=1, HR current=1 box=0, RBI current=1 box=3; Dylan Crews: AB current=4 box=5, H current=1 box=0, R current=1 box=0, BB current=0 box=1; Yohandy Morales: AB current=3 box=6, 2B current=0 box=1, R current=1 box=0, SO current=1 box=2; James Wood: AB current=4 box=5, SO current=1 box=0; Nasim Nuñez: AB current=3 box=5, SO current=1 box=3; Harry Ford: AB current=3 box=4, SO current=1 box=2; Brady House: AB current=4 box=5, R current=0 box=1, BB current=0 box=1, SO current=1 box=2 | 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 20260922. 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.2448 | 0.2442 | -0.0006 | improved |
| accuracy | 0.563 | 0.5546 | -0.0084 | regressed |
| team_run_mae | 2.4958 | 2.5168 | +0.021 | regressed |
| total_run_mae | 3.3109 | 3.3697 | +0.0588 | regressed |
| calibration_error | 0.1034 | 0.101 | -0.0024 | improved |
| starter_er_mae | 1.712 | 1.756 | +0.044 | regressed |
| starter_outs_mae | 3.516 | 3.572 | +0.056 | regressed |
| Parameter | Change | Expected effect | Risk | Evidence |
|---|---|---|---|---|
| confidence.base_cap | 0.58 → 0.56 | calibration_error decrease | low risk | calibration.bucket.0.50-0.55, calibration.bucket.0.60-0.65, metric.calibration_error, metric.brier_score, errors.miss_reasons |