Deep slate report — 20260930

Generated · schema deep_slate_diagnosis_v3 · fuses prediction review + forensic deep audit + official starter lines, with a Luna post-mortem.

Slate summary

Games
4
Hits
3
Misses
1
Winner accuracy
75%
Mean Brier (losses)
0.263
Mean total-run bias (losses)
0

What drove the losses

Genuine toss-up that flipped: 1

Source coverage receipt

Which reports actually fed the diagnosis. A source shown as missing was not silently assumed.

SourceStatusEvidence suppliedPathBytes
prediction reviewloadedofficial outcomes and scoring errors/app/output/reports/prediction_review_20260930.jsonn/a
forensic deep auditloadedprobability, provenance, starter and decision contracts/app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20260930.jsonn/a
continuous learningloadedpipeline-stage quality, calibration, probability lineage/app/output/learning/continuous_learning_daily_20260930.jsonn/a
game artifactsloadedper-game model trace and structural audit source/app/output/gamesn/a

High-level causal issue register

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).

SeverityDomainFinding and evidenceAffectedAction & guardrail
HIGHpipeline_stagesAn intermediate stage materially degraded winner direction
historical_ml → variance_applied changed winner accuracy by -0.2500 (-1 hits)
PHI@ATL
Do thisList the exact games whose winner flipped at this stage, and keep both the before-stage and after-stage picks in the trace.
Don't concludeEven if a later stage recovers the pick, this unstable step is still a risk; do not treat it as harmless.
HIGHscore_distributionPublished margins are compressed relative to realized margins
4/4 predictions were ≤2 runs; 2/4 actual margins were ≥4; mean predicted margin 1.00 vs actual 3.75
BOS@NYY, CHW@HOU
Do thisCheck whether predicted margins are too narrow across several recent out-of-sample slates (measuring tail coverage and margin MAE) before widening the score spread.
Don't concludeA single blowout game is not a reason to widen every score prediction.
HIGHcalibrationPublished confidence buckets were poorly aligned on this slate
weighted absolute calibration error 0.2317 across 4 games
BOS@NYY, CHC@SD, CHW@HOU, PHI@ATL
Do thisWatch the same confidence buckets over the full rolling window before changing any calibration weight.
Don't concludeA single slate has far too few games to establish a stable calibration curve.
HIGHmodel_validationValidated run models explain very little holdout variance
home/away/total R² = 0.0021/0.0309/0.0024
BOS@NYY, CHC@SD, CHW@HOU, PHI@ATL
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.
INFOcoverageEvery settled game received structural QA
4/4 games structurally audited
BOS@NYY, CHC@SD, CHW@HOU, PHI@ATL
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.
INFOprobability_lineageMaterial calibrated-to-published movements have recorded lineage
1 material movement(s), all explained by named score-coherence and/or recency transformations
BOS@NYY
Do thisKeep showing every probability layer and the named transformation between them.
Don't concludeA published probability above the calibrated one is not a governor bypass when a recorded transformation explains it.
INFOsimulationSimulation produced no winner-direction intervention on this slate
flip candidates 0; published flips 0
BOS@NYY, CHC@SD, CHW@HOU, PHI@ATL
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.

Cross-slate trends (persistent-pattern memory)

Window: 20260920, 20260921, 20260922, 20260923, 20260924, 20260925, 20260926, 20260927, , 20260929, 20260930 (10 prior slates loaded). Highest-confidence pick loss streak: 0 slate(s). Actionable pattern detected.

Escalated persistent patterns

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.

FindingPersistenceTarget lever(s)DirectionGuardrail
simulation_inert_on_slate11 consecutive · 11 in windowsimulation.allow_scoreconfirm the simulation module is running, not silently no-opingsimulation_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.

Finding streaks across the window

FindingConsecutive slatesIncidencePresent nowFix type
high_raw_probability_cluster01/11noparam
pipeline_winner_instability26/11yescode/diagnostic
score_margin_compression24/11yesparam
simulation_inert_on_slate1111/11yescode/diagnostic
single_slate_calibration_instability27/11yesparam
weak_run_model_signal210/11yescode/diagnostic

Metric direction across the window

MetricDirectionSeries (old → new)
winner_accuracyimproving[0.6, 0.3333, 0.4, 0.5, 0.6667, 0.6471, 0.5385, 0.6429, None, 1.0, 0.75]
weighted_calibration_errorregressing[0.3184, 0.2028, 0.1881, 0.1108, 0.1701, 0.1302, 0.1524, 0.1031, None, 0.4792, 0.2317]
margin_biasregressing[-1.533, -2.667, -1.867, -1.188, -1.083, -1.706, -3.0, -1.571, None, -4.25, -2.75]
team_run_error_on_lossesimproving[6.5, 3.0, 6.222, 5.75, 3.5, 5.333, 6.167, 4.8, None, None, 2.0]

Pipeline stage regression

Every stored stage is scored against the same official finals. A later recovery remains visible; it does not erase an unstable intermediate flip.

StageWinner hitsAccuracyTeam-run MAETotal-run MAEMargin MAE
historical_ml3/475%1.7831.8533.113
variance_applied2/450%1.8751.753.25
enhanced_prediction3/475%1.8752.253.25
embedded_savant_run_environment3/475%1.8752.253.25
fundamental_edge_target_review3/475%1.8752.253.25
capped_target3/475%1.8752.253.25
simulation_result3/475%1.8752.253.25
published_final3/475%1.8752.253.25
TransitionΔ accuracyΔ hitsΔ team-run MAEΔ margin MAEGames whose winner/tie changed
historical_ml → variance_applied-0.25-10.09160.1374PHI@ATL: PHI → TIE
variance_applied → enhanced_prediction0.25100CHW@HOU: HOU → CHW; PHI@ATL: TIE → ATL
enhanced_prediction → embedded_savant_run_environment0000
embedded_savant_run_environment → fundamental_edge_target_review0000
fundamental_edge_target_review → capped_target0000
capped_target → simulation_result0000
simulation_result → published_final0000

Probability lineage and calibration

All columns are pick-side probabilities, so away favorites are not accidentally compared using home-side semantics.

GameOutcomeRaw modelCalibratedGovernorScore coherencePublishedExplanation
BOS@NYYhit0.61030.56220.56220.56220.54score coherence followed by matchup-recency guardrail
CHC@SDhit0.54370.52690.52690.52690.5152score coherence followed by matchup-recency guardrail
CHW@HOUhit0.50.5050.5050.5050.505published probability matches the calibrated/governed value
PHI@ATLmiss0.52680.51770.51770.51780.5128published probability matches the calibrated/governed value
Pitcher versus batter: patterns across the whole slate

One blown start is noise. The same failure repeating across the slate is a model problem. These are the repeats.

Sides analyzedBroke on pitchingBroke on offenseBothVarianceMean starter ERA errorMean lineup runs vs proj
801070.780.12
Trained winner blend: does it reach the published number?

The blend mixes the trained win classifier with the margin-derived probability. It is only worth its weight if its decision survives the downstream reconciliation to the projected score.

1 of 4 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.

GameTrained p(home)Blended p(home)Blend favouredPublished p(home)Published sideArtifact says winner changedOutcome
CHW@HOU0.5440.519home0.495awayyeshit

Blend side survived on 3 of 4 games; the blend flagged a winner change on 1.

Repeated bias across slates, and the lever that moves it

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.14 over 11 slates (sign shared by 0.55 of them, z = -0.42).

starters beat their projection: the run model credits opposing offenses with more than they produced.

Hold: no change: this bias is not separable from slate-to-slate noise yet

6 of 11 slates share the sign, mean -0.14 +/- 0.33 standard error: not separable from noise

lineup runs actual minus projected

Mean -0.27 over 11 slates (sign shared by 0.64 of them, z = -1.41).

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

7 of 11 slates share the sign, mean -0.27 +/- 0.19 standard error: not separable from noise

SlateGamesWinner accMean starter ERA errorMean lineup runs vs projSides broke on pitchingSides broke on offense
2026100111.0000.000.50
2026093040.7500.780.001
2026092941.000-0.76-0.503
20260928———
20260927140.643-2.16-0.0625
20260926130.5380.550.6934
20260925170.6471.130.50810
20260924120.6671.68-0.67411
20260923160.500-0.49-0.91411
20260922150.400-0.32-0.97311
2026092130.333-1.08-0.50
20260920150.600-0.89-1.00210

Score distribution and margin compression

Narrow predicted margins next to wide actual margins is the signature the score-variance tail is too tight.

Predicted margins ≤2: 4 · Actual margins ≥4: 2
GamePred marginActual marginPred − actual
BOS@NYY17-6
CHC@SD13-2
CHW@HOU14-3
PHI@ATL110

Per-game evidence coverage

Expected games
4
Artifacts loaded
4
Structural audits
4
Deep-audit games
4
Learning rows
4
Starter comparisons
4

Every game, in depth (4)

BOS@NYYHIT

Predicted: NYY 3-4 (conf +0.08, lean)Actual: NYY 2-9Brier 0.212total bias -4
Root cause: Right winner, wrong score
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
BOSSonny Gray3 ER / 18 outs2 ER / 14 outs-1
NYYMax Fried0 ER / 18 outs1 ER / 18 outs1
Decision internals: run factors home×0.925 / away×0.979; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

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

No settled pitching line for this club. The forecast named Sonny Gray (BOS) at a projected 4.5 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 9 runs on 14 hits and 2 HR, against a projected 6 runs / 8 hits (3 runs vs projection).

Who did the damage to him:

  • Cody Bellinger: 2-for-5, 1 HR, 4 RBI [+1.07 runs vs projection] season xwOBA 0.335, above average - real projection error
  • Luis García Jr.: 3-for-5, 1 HR, 1 RBI [+0.94 runs vs projection] season xwOBA 0.341, elite - real projection error
  • Jazz Chisholm Jr.: 2-for-3, 0 HR, 0 RBI [+0.8 runs vs projection] season xwOBA 0.294, below average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Max Fried (NYY) threw 18 outs, 1 ER = 1.5 ERA against a projected 0 ERA (1.5 ERA error)

Bullpen behind him: 0 ER over 4 outs.

The AWAY lineup he faced produced 0 runs on 0 hits and 0 HR, against a projected 0 runs / 0 hits (0 runs vs projection).

No individual hitter beat his projection by a meaningful margin.

Verdict: neither side broke materially - the result is closer to variance

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
NYYMax Fried (Starter)18 / 181.5 / 01 / 03 / 21 / 01 / 11.436 / 55.41venue home: 3.66 vs 2.34 ERA (worse here) · opp run factor 0.98 (average) · 20 prior appearances this season
NYYBrent Headrick (Setup Man)1 / 30 / 18 (-18.00)0 / 20 / 20 / 10 / 00.440 / 01.4
NYYDavid Bednar (Closer)3 / 30 / 00 / 00 / 10 / 01 / 00.321 / 01.11

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Cody Bellinger (LF)NYY5 / 42 / 10 / 00 / 01 / 04 / 11 / 10 / 11 / 11.070.335 above averageprojection too low
Luis García Jr. (1B)NYY5 / 43 / 10 / 00 / 01 / 11 / 11 / 10 / 01 / 10.940.341 eliteprojection too low
Ben Rice (DH)NYY4 / 41 / 10 / 00 / 00 / 10 / 11 / 11 / 11 / 1-0.930.378 elitebad day
Jazz Chisholm Jr. (2B)NYY3 / 32 / 10 / 00 / 00 / 00 / 02 / 01 / 00 / 10.80.294 below averagegood day
Trent Grisham (CF)NYY3 / 32 / 10 / 00 / 00 / 00 / 01 / 11 / 10 / 10.470.337 above average—
Austin Wells (C)NYY3 / 31 / 00 / 00 / 00 / 02 / 01 / 00 / 00 / 10.470.3 below average—
Spencer Jones (RF)NYY5 / 41 / 10 / 10 / 00 / 00 / 11 / 10 / 04 / 1-0.310.328 above average—
George Lombard Jr. (SS)NYY4 / 41 / 10 / 00 / 00 / 01 / 01 / 10 / 02 / 100.298 below average—
Ryan McMahon (3B)NYY3 / 31 / 10 / 00 / 00 / 01 / 00 / 00 / 01 / 100.297 below average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality0.34positive favors home; negative favors away
Recent form0.23positive favors home; negative favors away
Starting-pitcher matchup-0.054positive favors home; negative favors away
Composite0.306positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml3.83-5.68n/aBase ML historical model prediction
variance_applied4-6n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction3-40.54Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment3-4n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-4n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-4n/aCapped at max 12 realistic runs
simulation_result3-4n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied3.83-5.684-60.145Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-63-4-1Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment3-43-40Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-43-40Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-43-40Capped at max 12 realistic runs
simulation_result3-43-40Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
NYYLuis García Jr.batter / 1Bbetterpredicted_RBI 2.72
BOSWilyer Abreubatter / RFworsepredicted_H 2.1
BOSJahmai Jonesbatter / DHworsepredicted_RBI 1.93
NYYBen Ricebatter / DHworsepredicted_H -1.77
NYYRyan McMahonbatter / 3Bworsepredicted_H 1.74
BOSTrevor Storybatter / SSworsepredicted_SO -1.338
NYYSpencer Jonesbatter / RFworsepredicted_SO -1.253
NYYTrent Grishambatter / CFworsepredicted_SO 1.235

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONBOS pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.BOS
infoCURRENT_PITCHER_DUPLICATIONNYY pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.NYY
infoCURRENT_FINALIZED_MATCH_BOXBOS model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; 2B: current=2, sim=3; RBI: current=4, sim=3; BB: current=3, sim=1; SO: current=9, sim=5; SF: current=0, sim=1).BOS
infoCURRENT_PLAYER_MATCH_BOXBOS current finalized hitter lines are model predictions and differ from the simulation box score: Willson Contreras: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Adley Rutschman: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, BB current=1 box=0; Jahmai Jones: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=2, R current=0 box=1; Wilyer Abreu: H current=1 box=3, 2B current=0 box=2, RBI current=1 box=0, SO current=1 box=0; Ceddanne Rafaela: 2B current=1 box=0, SO current=1 box=0; Nick Sogard: AB current=4 box=3, RBI current=0 box=1, R current=0 box=1, BB current=1 box=0; Caleb Durbin: AB current=3 box=4, R current=1 box=0; Trevor Story: AB current=3 box=4, H current=1 box=0, RBI current=1 box=0, SO current=1 box=0BOS
infoCURRENT_FINALIZED_MATCH_BOXNYY model-prediction batting totals differ from final simulation box score (AB: current=32, sim=35; H: current=8, sim=11; 2B: current=1, sim=0; R: current=6, sim=4; BB: current=3, sim=0; SO: current=9, sim=4).NYY
infoCURRENT_PLAYER_MATCH_BOXNYY current finalized hitter lines are model predictions and differ from the simulation box score: Spencer Jones: H current=1 box=2, 2B current=1 box=0, RBI current=1 box=0, SO current=1 box=0; George Lombard Jr.: R current=1 box=0, SO current=1 box=0; Ben Rice: H current=1 box=0, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Luis García Jr.: H current=1 box=2, RBI current=1 box=3, SO current=1 box=0; Cody Bellinger: RBI current=1 box=0, R current=1 box=0, BB current=1 box=0, SO current=1 box=0; Jazz Chisholm Jr.: AB current=3 box=4; Trent Grisham: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, BB current=1 box=0; Austin Wells: AB current=3 box=4, H current=0 box=1, SO current=1 box=0NYY
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

CHC@SDHIT

Predicted: SD 4-5 (conf +0.03, toss_up)Actual: SD 1-4Brier 0.235total bias +4
Root cause: Toss-up that went our way
Evidence-backed diagnosis
Quantified contributing factors
TeamStarterProjectedActualER err
CHCKevin Gausman4 ER / 17 outs3 ER / 10 outs-1
SDNick Pivetta2 ER / 15 outs1 ER / 10 outs-1
Decision internals: run factors home×0.979 / away×0.954; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

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

No settled pitching line for this club. The forecast named Kevin Gausman (CHC) at a projected 6.35 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 0 HR, against a projected 5 runs / 8 hits (-2 runs vs projection).

Who did the damage to him:

  • Jackson Merrill: 2-for-3, 0 HR, 0 RBI [+0.8 runs vs projection] season xwOBA 0.347, elite - real projection error
  • Ty France: 2-for-4, 0 HR, 0 RBI [+0.78 runs vs projection] season xwOBA 0.327, above average - real projection error
  • Xander Bogaerts: 2-for-4, 0 HR, 1 RBI [+0.45 runs vs projection] season xwOBA 0.325, above average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Nick Pivetta (SD) threw 10 outs, 1 ER = 2.7 ERA against a projected 3.6 ERA (-0.9 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 17 outs.

The AWAY lineup he faced produced 0 runs on 0 hits and 0 HR, against a projected 0 runs / 0 hits (0 runs vs projection).

No individual hitter beat his projection by a meaningful margin.

Verdict: offense: the lineup scored well below its projection

Starting pitchers & relievers: actual / projected + context (ERA is workload-aware: ER over 9 innings, so a short blow-up is not read like a quality start; ERA error in parentheses when material. exp BB and exp SO are the continuous rate expectations. The integer beside each is a simulation draw reconciled to the opposing simulated batting box, so it is not the line that ranks pitchers: on the 2026-09-07 slate the integers published 39 walks and 121 strikeouts against 51 and 130 real, while these expectations landed on 50.4 and 132.6.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
SDNick Pivetta (Starter)10 / 152.7 / 3.61 / 23 / 50 / 12 / 40.644 / 54.5venue home: 3 vs 2.63 ERA (ok) · opp run factor 0.95 (strong) · 8 prior appearances this season
SDBradgley Rodriguez (Middle Reliever (High Leverage))5 / 40 / 00 / 00 / 00 / 01 / 10.342 / 21.31
SDAdrian Morejon (Setup Man)6 / 30 / 9 (-9.00)0 / 11 / 10 / 10 / 00.420 / 21.24
SDMason Miller (Closer)3 / 30 / 00 / 01 / 00 / 00 / 00.392 / 11.71
SDJason Adam (Middle Reliever (High Leverage))3 / 20 / 13.5 (-13.50)0 / 10 / 10 / 00 / 00.30 / 10.55

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Manny Machado (3B)SD4 / 41 / 10 / 00 / 00 / 10 / 10 / 10 / 11 / 1-1.260.328 above averagebad day
Fernando Tatis Jr. (RF)SD4 / 40 / 10 / 10 / 00 / 00 / 10 / 10 / 11 / 1-1.110.379 elitebad day
Jackson Merrill (CF)SD3 / 42 / 10 / 00 / 00 / 00 / 11 / 11 / 01 / 10.80.347 eliteprojection too low
Ty France (1B)SD4 / 42 / 11 / 00 / 00 / 00 / 11 / 00 / 01 / 10.780.327 above averageprojection too low
Dustin Harris (LF)SD4 / 40 / 10 / 00 / 00 / 00 / 00 / 10 / 00 / 0-0.470.314 average—
Ethan Salas (C)SD1 / 30 / 10 / 00 / 00 / 01 / 00 / 00 / 01 / 1-0.470.227 weak—
Austin Hays (DH)SD1 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 00 / 1-0.470.295 below average—
Xander Bogaerts (SS)SD4 / 32 / 11 / 00 / 00 / 01 / 01 / 10 / 10 / 10.450.325 above average—
Jake Cronenworth (2B)SD2 / 30 / 00 / 00 / 00 / 00 / 00 / 00 / 00 / 100.275 weak—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-0.235positive favors home; negative favors away
Recent form0.158positive favors home; negative favors away
Starting-pitcher matchup0.024positive favors home; negative favors away
Composite0.143positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml3.88-4.54n/aBase ML historical model prediction
variance_applied4-5n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction4-50.515Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment4-5n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-5n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-5n/aCapped at max 12 realistic runs
simulation_result4-5n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied3.88-4.544-50.337Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-54-50Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment4-54-50Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review4-54-50Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target4-54-50Capped at max 12 realistic runs
simulation_result4-54-50Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
CHCDansby Swansonbatter / SSworsepredicted_SO 3.081
SDManny Machadobatter / 3Bworsepredicted_RBI 3.08
CHCKevin Gausmanpitcher / Starterneutralpredicted_SO 3
SDFernando Tatis Jr.batter / RFworsepredicted_SO 2.171
SDNick Pivettapitcher / Starterbetterpredicted_ER -2
CHCPete Crow-Armstrongbatter / CFworsepredicted_SO 1.851
CHCCarson Kellybatter / Cbetterpredicted_RBI 1.6
SDDustin Harrisbatter / LFworsepredicted_SO 1.512

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONCHC pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.CHC
infoCURRENT_PITCHER_DUPLICATIONSD pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.SD
infoCURRENT_FINALIZED_MATCH_BOXCHC model pitcher projections differ from final simulation pitching box score (BB: current=1, sim=2; HR: current=2, sim=3).CHC
infoCURRENT_FINALIZED_MATCH_BOXCHC model-prediction batting totals differ from final simulation box score (AB: current=33, sim=34; HR: current=1, sim=2; R: current=5, sim=4; BB: current=4, sim=5; SO: current=8, sim=11).CHC
infoCURRENT_PLAYER_MATCH_BOXCHC current finalized hitter lines are model predictions and differ from the simulation box score: Alex Bregman: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1; Pete Crow-Armstrong: AB current=4 box=5, HR current=1 box=0, BB current=1 box=0, SO current=1 box=3; Ian Happ: AB current=4 box=3, H current=0 box=1, R current=1 box=0; Matt Shaw: H current=1 box=0, BB current=0 box=1; Nico Hoerner: AB current=4 box=3, H current=1 box=0, BB current=0 box=1; Seiya Suzuki: AB current=4 box=3, 2B current=1 box=0, RBI current=1 box=0; Michael Busch: H current=1 box=0, SO current=1 box=0; Carson Kelly: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, RBI current=1 box=2CHC
infoCURRENT_FINALIZED_MATCH_BOXSD model-prediction batting totals differ from final simulation box score (AB: current=32, sim=33; H: current=8, sim=9; 3B: current=0, sim=1; HR: current=1, sim=3; RBI: current=4, sim=5; BB: current=3, sim=2; SO: current=8, sim=10).SD
infoCURRENT_PLAYER_MATCH_BOXSD current finalized hitter lines are model predictions and differ from the simulation box score: Dustin Harris: AB current=4 box=3, 3B current=0 box=1, BB current=0 box=1, SO current=0 box=2; Ty France: RBI current=1 box=0; Fernando Tatis Jr.: RBI current=1 box=0, BB current=1 box=0, SO current=1 box=3; Manny Machado: H current=1 box=2, HR current=1 box=2, RBI current=1 box=4, BB current=1 box=0; Ethan Salas: AB current=3 box=4, H current=1 box=0, SO current=1 box=0; Xander Bogaerts: AB current=3 box=4, H current=1 box=2, BB current=1 box=0; Jackson Merrill: H current=1 box=0, RBI current=1 box=0, R current=1 box=0; Austin Hays: HR current=0 box=1, RBI current=0 box=1, R current=0 box=1, BB current=0 box=1SD
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

CHW@HOUHIT

Predicted: CHW 6-5 (conf -0.01, toss_up)Actual: CHW 7-3Brier 0.245total bias +1
Root cause: Toss-up that went our way
Evidence-backed diagnosis
Quantified contributing factors

No large single-factor errors.

TeamStarterProjectedActualER err
CHWSean Burke2 ER / 15 outs3 ER / 12 outs1
HOUHunter Brown3 ER / 17 outs3 ER / 2 outs0
Decision internals: run factors home×0.992 / away×1.022; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

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

No settled pitching line for this club. The forecast named Sean Burke (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 0 runs on 0 hits and 0 HR, against a projected 0 runs / 0 hits (0 runs vs projection).

No individual hitter beat his projection by a meaningful margin.

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

No settled pitching line for this club. The forecast named Hunter Brown (HOU) at a projected 4.76 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 AWAY lineup he faced produced 6 runs on 7 hits and 1 HR, against a projected 5 runs / 7 hits (1 runs vs projection).

Who did the damage to him:

  • Chase Meidroth: 2-for-3, 1 HR, 3 RBI [+1.73 runs vs projection] season xwOBA 0.301, below average - a good day, not a model error
  • Andrew Benintendi: 1-for-2, 0 HR, 1 RBI [+0.8 runs vs projection] season xwOBA 0.307, average - a good day, not a model error
  • Colson Montgomery: 0-for-3, 0 HR, 0 RBI [+0.33 runs vs projection] season xwOBA 0.294, below average - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Munetaka Murakami (1B)CHW5 / 40 / 10 / 00 / 00 / 10 / 10 / 10 / 13 / 2-1.730.351 elitebad day
Chase Meidroth (2B)CHW3 / 32 / 10 / 00 / 01 / 03 / 01 / 11 / 00 / 11.730.301 below averagegood day
Miguel Vargas (3B)CHW5 / 40 / 10 / 00 / 00 / 00 / 11 / 10 / 12 / 1-0.80.378 elitebad day
Braden Montgomery (RF)CHW4 / 30 / 10 / 00 / 00 / 00 / 00 / 00 / 11 / 1-0.80.325 above averagebad day
Andrew Benintendi (DH)CHW2 / 31 / 00 / 00 / 00 / 01 / 11 / 01 / 00 / 10.80.307 averageno signal
Colson Montgomery (SS)CHW3 / 30 / 00 / 00 / 00 / 00 / 00 / 01 / 02 / 10.330.294 below average—
Kyle Teel (C)CHW5 / 42 / 10 / 00 / 00 / 01 / 11 / 10 / 13 / 10.140.321 above average—
Sam Antonacci (LF)CHW4 / 41 / 11 / 00 / 00 / 00 / 01 / 10 / 11 / 1-0.020.348 elite—
Tristan Peters (CF)CHW3 / 31 / 10 / 10 / 00 / 01 / 01 / 01 / 01 / 10.020.314 average—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality-0.45positive favors home; negative favors away
Recent form-0.154positive favors home; negative favors away
Starting-pitcher matchup-0.03positive favors home; negative favors away
Composite-0.533positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.39-4.6n/aBase ML historical model prediction
variance_applied4-5n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction6-50.505Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment6-5n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review6-5n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target6-5n/aCapped at max 12 realistic runs
simulation_result6-5n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.39-4.64-5-0.787Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-56-52Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment6-56-5-0Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review6-56-5-0Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target6-56-5-0Capped at max 12 realistic runs
simulation_result6-56-5-0Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
HOUHunter Brownpitcher / Starterneutralpredicted_SO 5
CHWChase Meidrothbatter / 2Bbetterpredicted_RBI 2.32
HOUJeremy Peñabatter / SSworsepredicted_RBI 2.32
CHWBraden Montgomerybatter / RFbetterpredicted_H 2.194
HOUCam Smithbatter / RFworsepredicted_SO 2
HOULogan VanWeypitcher / Setup Manworsepredicted_SO -2
CHWMunetaka Murakamibatter / 1Bbetterpredicted_AB -1.57
CHWSam Antonaccibatter / LFworsepredicted_AB 1.55

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONCHW pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.CHW
infoCURRENT_PITCHER_DUPLICATIONHOU pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.HOU
infoCURRENT_FINALIZED_MATCH_BOXCHW model-prediction batting totals differ from final simulation box score (AB: current=31, sim=35; H: current=7, sim=9; 2B: current=1, sim=3; RBI: current=4, sim=6; R: current=5, sim=6; BB: current=5, sim=3; SO: current=10, sim=7; SF: current=0, sim=1).CHW
infoCURRENT_PLAYER_MATCH_BOXCHW 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=0, R current=1 box=0, BB current=1 box=0; Munetaka Murakami: AB current=4 box=2, H current=1 box=0, HR current=1 box=0, SO current=2 box=1; Miguel Vargas: RBI current=1 box=0, SO current=1 box=0; Kyle Teel: AB current=4 box=5, BB current=1 box=0; Braden Montgomery: AB current=3 box=4, H current=1 box=3, 2B current=0 box=2, RBI current=0 box=1; Andrew Benintendi: AB current=3 box=4, H current=0 box=1, RBI current=1 box=0, R current=0 box=1; Tristan Peters: H current=1 box=0, 2B current=1 box=0, SO current=1 box=0, HBP current=0 box=1; Chase Meidroth: AB current=3 box=4, H current=1 box=2, 2B current=0 box=1, HR current=0 box=1CHW
infoCURRENT_FINALIZED_MATCH_BOXHOU model-prediction batting totals differ from final simulation box score (AB: current=32, sim=39; H: current=7, sim=12; HR: current=2, sim=3; RBI: current=4, sim=5; SO: current=9, sim=11).HOU
infoCURRENT_PLAYER_MATCH_BOXHOU current finalized hitter lines are model predictions and differ from the simulation box score: Jose Altuve: H current=1 box=2, 2B current=1 box=0, R current=0 box=1, BB current=0 box=1; Jeremy Peña: AB current=4 box=5, H current=1 box=3, RBI current=1 box=3; Yordan Alvarez: AB current=4 box=5, H current=1 box=2, 2B current=0 box=1, HR current=1 box=0; Isaac Paredes: AB current=4 box=5, H current=1 box=2, HR current=0 box=1, R current=0 box=1; Lucas Spence: H current=1 box=0, R current=1 box=0; Yainer Diaz: AB current=4 box=5, SO current=1 box=2; Taylor Trammell: AB current=3 box=4, H current=0 box=1; Cam Smith: R current=1 box=0, BB current=0 box=1, SO current=1 box=3HOU
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

PHI@ATLMISS

Predicted: ATL 3-4 (conf +0.03, toss_up)Actual: PHI 4-3Brier 0.263total bias +0
Root cause: Genuine toss-up that flipped
Evidence-backed diagnosis
Quantified contributing factors

No large single-factor errors.

TeamStarterProjectedActualER err
PHICristopher Sánchez2 ER / 19 outs3 ER / 20 outs1
ATLTyler Mahle0 ER / 18 outs1 ER / 21 outs1
Decision internals: run factors home×1.112 / away×1.013; savant lineup adjustment applied

Player-level breakdown (projected vs actual)

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

Cristopher Sánchez (PHI) threw 20 outs, 3 ER = 4.05 ERA against a projected 2.84 ERA (1.21 ERA error)

Bullpen behind him: 0 ER over 0 outs.

The HOME lineup he faced produced 3 runs on 9 hits and 0 HR, against a projected 4 runs / 9 hits (-1 runs vs projection).

Who did the damage to him:

  • Sean Murphy: 1-for-3, 0 HR, 0 RBI [+0.64 runs vs projection] season xwOBA 0.273, weak - a good day, not a model error
  • Mauricio Dubón: 2-for-5, 0 HR, 0 RBI [+0.47 runs vs projection] season xwOBA 0.304, average - a good day, not a model error
  • Drake Baldwin: 2-for-5, 0 HR, 1 RBI [+0.45 runs vs projection] season xwOBA 0.37, elite - a good day, not a model error

Verdict: neither side broke materially - the result is closer to variance

HOME pitching

Tyler Mahle (ATL) threw 21 outs, 1 ER = 1.29 ERA against a projected 0 ERA (1.29 ERA error)

Bullpen behind him: 3 ER over 9 outs.

The AWAY lineup he faced produced 4 runs on 11 hits and 3 HR, against a projected 4 runs / 8 hits (0 runs vs projection).

Who did the damage to him:

  • Alec Bohm: 2-for-4, 1 HR, 1 RBI [+1.73 runs vs projection] season xwOBA 0.327, above average - real projection error
  • Bryce Harper: 2-for-5, 1 HR, 2 RBI [+0.76 runs vs projection] season xwOBA 0.379, elite - real projection error
  • Justin Crawford: 1-for-4, 0 HR, 0 RBI [+0.47 runs vs projection] season xwOBA 0.284, below average - a good day, not a model error

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.)

PitcherTeamOutsERAERHHRBBexp BBSOexp SOContext (as-of)
PHICristopher Sánchez (Starter)20 / 194.05 / 2.843 / 26 / 50 / 05 / 11.36 / 55.98venue away: 3.87 vs 2.23 ERA (worse here) · opp run factor 1.11 (strong) · 33 prior appearances this season
ATLTyler Mahle (Starter)21 / 181.29 / 01 / 06 / 20 / 01 / 21.096 / 85.11venue home: 2.74 vs 5.28 ERA (ok) · opp run factor 1.01 (average) · 27 prior appearances this season
ATLDidier Fuentes (Middle Reliever (High Leverage))4 / 66.75 / 4.51 / 13 / 11 / 10 / 20.292 / 01.48
ATLDylan Lee (Setup Man)2 / 327 / 18 (+9.00)2 / 22 / 22 / 10 / 00.211 / 11.04
ATLRaisel Iglesias (Closer)3 / 00 / n/a0 / 01 / 10 / 00 / 00.20 / 21.12

Hitters: actual / projected (sorted by run impact vs projection)

BatterTeamABH2B3BHRRBIRBBSORun impactSeason xwOBASignal
Alec Bohm (1B)PHI4 / 42 / 10 / 00 / 01 / 01 / 11 / 01 / 00 / 01.730.327 above averageprojection too low
Matt Olson (1B)ATL4 / 41 / 10 / 00 / 00 / 12 / 10 / 10 / 02 / 1-0.930.351 elitebad day
Bryce Harper (RF)PHI5 / 42 / 10 / 10 / 01 / 02 / 11 / 10 / 11 / 10.760.379 eliteprojection too low
Sean Murphy (C)ATL3 / 31 / 11 / 00 / 00 / 00 / 01 / 01 / 00 / 10.640.273 weakgood day
Justin Crawford (CF)PHI4 / 31 / 00 / 00 / 00 / 00 / 00 / 00 / 00 / 00.470.284 below average—
Mauricio Dubón (LF)ATL5 / 42 / 10 / 00 / 00 / 00 / 00 / 00 / 00 / 10.470.304 average—
Drake Baldwin (DH)ATL5 / 42 / 11 / 00 / 00 / 01 / 10 / 10 / 12 / 10.450.37 elite—
Bryson Stott (2B)PHI5 / 41 / 10 / 00 / 00 / 00 / 00 / 10 / 11 / 1-0.330.33 above average—
Kyle Schwarber (DH)PHI5 / 41 / 10 / 00 / 01 / 11 / 11 / 10 / 13 / 1-0.330.364 elite—
Austin Riley (3B)ATL4 / 31 / 10 / 00 / 00 / 00 / 10 / 01 / 01 / 10.330.299 below average—
Trea Turner (SS)PHI5 / 41 / 11 / 00 / 00 / 00 / 01 / 10 / 01 / 10.310.293 below average—
Ronald Acuña Jr. (RF)ATL3 / 40 / 10 / 00 / 00 / 00 / 01 / 12 / 12 / 1-0.140.366 elite—
Ha-Seong Kim (SS)ATL1 / 30 / 10 / 00 / 00 / 00 / 01 / 01 / 00 / 1-0.140.222 weak—
Ozzie Albies (2B)ATL4 / 41 / 10 / 10 / 00 / 00 / 00 / 01 / 00 / 10.020.273 weak—
Edmundo Sosa (3B)PHI4 / 31 / 10 / 00 / 00 / 00 / 10 / 00 / 00 / 100.328 above average—
Brandon Marsh (LF)PHI3 / 31 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 100.301 below average—
J.T. Realmuto (C)PHI4 / 31 / 10 / 00 / 00 / 00 / 00 / 00 / 01 / 100.317 average—
Michael Harris II (CF)ATL5 / 41 / 10 / 00 / 00 / 00 / 10 / 10 / 01 / 100.342 elite—
Full model trace, player evidence, and audit findings

Fundamental evidence entering the pick

SignalHome-away edgeMeaning
Season quality0.559positive favors home; negative favors away
Recent form0.406positive favors home; negative favors away
Starting-pitcher matchup0.099positive favors home; negative favors away
Composite0.806positive favors home; negative favors away

Score and confidence evolution

StageAway-home runsConfidenceWhat changed
historical_ml4.36-4.12n/aBase ML historical model prediction
variance_applied4-4n/aDeterministic baseline target (variance factor 1.0)
enhanced_prediction3-40.513Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment3-4n/aTarget score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-4n/aRefreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-4n/aCapped at max 12 realistic runs
simulation_result3-4n/aFinal inning-by-inning simulation result

Official postgame stage attribution

StageBeforeAfterToward final pickWhat changed
variance_applied4.36-4.124-40.243Deterministic baseline target (variance factor 1.0)
enhanced_prediction4-43-41Enhanced ML with recent form, H2H, low-score analysis (confidence shrunk by projected_margin_is_one_run, matchup_recency_guardrail)
embedded_savant_run_environment3-43-40Target score adjusted by temporal Savant lineup quality versus opposing starter quality
fundamental_edge_target_review3-43-40Refreshed score target and win probability after Savant/pitcher/team-strength adjustments
capped_target3-43-40Capped at max 12 realistic runs
simulation_result3-43-40Final inning-by-inning simulation result

Largest player-level adjustments from the ultra-detailed trace

These are pregame model adjustments, not claims about actual postgame player error.

TeamPlayerRoleNet effectLargest change
PHICristopher Sánchezpitcher / Starterneutralpredicted_SO 3
ATLOzzie Albiesbatter / 2Bbetterpredicted_H 2.21
PHITrea Turnerbatter / SSworsepredicted_SO 2.065
ATLHa-Seong Kimbatter / SSbetterpredicted_RBI 1.85
PHIEdmundo Sosabatter / 3Bworsepredicted_SO 1.337
ATLAustin Rileybatter / 3Bbetterpredicted_H 1.3
PHIAlec Bohmbatter / 1Bworsepredicted_AB 1.268
ATLMichael Harris IIbatter / CFworsepredicted_SO 1.232

Structural audit findings

SeverityRuleFindingSubject
infoCURRENT_PITCHER_DUPLICATIONATL pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.ATL
infoCURRENT_PITCHER_DUPLICATIONPHI pitcher list appears in both predicted_performance.pitchers and player_predictions_by_position.pitchers; IDs match and were de-duplicated in this audit.PHI
infoCURRENT_FINALIZED_MATCH_BOXATL model-prediction batting totals differ from final simulation box score (AB: current=33, sim=40; H: current=9, sim=12; 2B: current=1, sim=3; BB: current=2, sim=1; SO: current=9, sim=5; SF: current=0, sim=2; HBP: current=0, sim=1).ATL
infoCURRENT_PLAYER_MATCH_BOXATL current finalized hitter lines are model predictions and differ from the simulation box score: Drake Baldwin: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0, BB current=1 box=0; Ozzie Albies: H current=1 box=3, 2B current=1 box=2, R current=0 box=1, BB current=0 box=1; Ronald Acuña Jr.: AB current=4 box=5, H current=1 box=0, R current=1 box=0, BB current=1 box=0; Matt Olson: AB current=4 box=5, HR current=1 box=0, RBI current=1 box=0, R current=1 box=0; Mauricio Dubón: AB current=4 box=5; Austin Riley: AB current=3 box=4, H current=1 box=2, HR current=0 box=1, R current=0 box=1; Michael Harris II: AB current=4 box=5, RBI current=1 box=0, R current=1 box=0, SO current=1 box=2; Sean Murphy: AB current=3 box=4, RBI current=0 box=1, R current=0 box=1, SO current=1 box=0ATL
infoCURRENT_FINALIZED_MATCH_BOXPHI model pitcher projections differ from final simulation pitching box score (H: current=11, sim=12; HR: current=0, sim=1).PHI
infoCURRENT_FINALIZED_MATCH_BOXPHI model-prediction batting totals differ from final simulation box score (AB: current=32, sim=36; H: current=8, sim=6; HR: current=1, sim=2; RBI: current=4, sim=3; R: current=4, sim=3; BB: current=3, sim=4; SO: current=7, sim=11).PHI
infoCURRENT_PLAYER_MATCH_BOXPHI current finalized hitter lines are model predictions and differ from the simulation box score: Bryce Harper: H current=1 box=0, 2B current=1 box=0, RBI current=1 box=0, R current=1 box=0; Alec Bohm: AB current=4 box=5, H current=1 box=2, RBI current=1 box=0, R current=0 box=1; Bryson Stott: AB current=4 box=3, 2B current=0 box=1, R current=1 box=0; Edmundo Sosa: H current=1 box=0, RBI current=1 box=0, BB current=0 box=1, SO current=1 box=2; Brandon Marsh: AB current=3 box=4, HR current=0 box=1, RBI current=0 box=1, R current=0 box=1; Kyle Schwarber: AB current=4 box=5, H current=1 box=0, HR current=1 box=0, RBI current=1 box=0; Trea Turner: HR current=0 box=1, RBI current=0 box=2, BB current=0 box=1, SO current=1 box=3; Justin Crawford: AB current=3 box=4PHI
infoRECONCILIATION_PROPAGATIONNo score_target_reconciliation step was used for this game.

Cross-game lever tension

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.

score.variance_multiplier / score.variance_floor (widen run distributions)

Targets: brier_score, calibration_error · 0 helped vs 0 hurt
Would help
  • none
Would hurt / risk
  • none

player.pitcher.v4 form weights / player.pitcher_prior_games

Targets: starter_er_mae, starter_outs_mae · 0 helped vs 4 hurt
Would help
  • none
Would hurt / risk
  • BOS@NYY (hit): starter projection was accurate (ER off 1); reweight risks disturbing it
  • CHC@SD (hit): starter projection was accurate (ER off 1); reweight risks disturbing it
  • CHW@HOU (hit): starter projection was accurate (ER off 1); reweight risks disturbing it
  • PHI@ATL (miss): starter projection was accurate (ER off 1); reweight risks disturbing it

recent.* / season.* run-mean weighting

Targets: team_run_mae, total_run_mae, accuracy · 2 helped vs 1 hurt
Would help
  • BOS@NYY (hit): team runs off by 6
  • CHC@SD (hit): team runs off by 4
Would hurt / risk
  • PHI@ATL (miss): team runs already close (off 2); reweight risks disturbing it

Luna deep post-mortem (full)

> Coverage receipt: COMPLETE · 9/8 sections; 4/4 games; 7/7 causes; 5/6 sources

1. Evidence receipt and gaps

Source manifest

All seven manifest entries were reviewed:

SourceStatusPurposeAssessment
prediction_review_20260930.jsonLoadedOfficial outcomes and scoring errorsReceived
PREDICTION_SYSTEM_DEEP_AUDIT_20260930.jsonLoadedProbability, provenance, starter, and decision contractsReceived
continuous_learning_daily_20260930.jsonLoadedStage quality, calibration, probability lineage, score distribution, starter comparisonsReceived
detailed_20260930.htmlLoadedFull game and simulation renderingReceived
20260930_ultra_detailed_player_audit.htmlLoadedPlayer-level prediction traceReceived
audit_report_20260930.htmlLoadedInvariant findingsReceived
audit_report_20260930_integrity_revision.htmlMissingPost-Luna remediation proof for immutable revision artifactsGap

The missing integrity-revision audit is an artifact-verification gap, not evidence that the prediction artifacts themselves were corrupted. The game-level forecast files were reported clean, and all four structural audits passed.

Games reviewed

All four expected and settled games were reviewed:

  1. BOS @ NYY
  2. CHC @ SD
  3. CHW @ HOU
  4. PHI @ ATL

Coverage reconciles as follows:

Overall result: 3 winner hits, 1 winner miss, 75% winner accuracy.

Internal contradictions and data gaps

  1. Missing integrity revision audit. The manifest explicitly marks the post-remediation integrity artifact as missing.
  2. CHW @ HOU player-level feed gap. The feed contained 63 rows, but none matched this game ID. Consequently, no player-level actuals were available for that game.
  3. Starter-feed gaps in game-level player forensics.
  1. Probability-reversion provenance is incomplete across representations. The lineage table records raw, calibrated, governed, score-coherence, recency, and published values. A separate probability-reversion record reports a CHW @ HOU blend-stage probability of 0.544092, but the complete named transformation from that value to the published 0.495 is not shown in the lineage table. This is a provenance coverage issue, but not automatically a bypass: the raw-to-published path itself is recorded.
  2. Some derived labels are semantically awkward. For example, starter_lines reports extremely high actual ERA values where the pitcher recorded very few outs. Those values are mathematically consistent with the recorded earned runs and outs, but they should not be interpreted as ordinary full-start ERA performance.
  3. No critical, error, or warning structural findings were reported. The structural summary was 0 critical, 0 error, 0 warning, and 30 info.

---

2. Executive diagnosis

Winner accuracy

Winner performance was good on this four-game slate but not decisive:

The slate beat the historical walk-forward baseline, but the sample was only four games. The three hits included two toss-up selections, and the single miss was also a toss-up. Correct winner selection therefore does not establish strong directional confidence.

The top-confidence-pick streak was 0 losses over the listed valid slates, with the unknown-date entry excluded from interpretation. The top pick hit on 2026-09-30.

Calibration quality

Calibration was poor on this slate:

The system was underconfident by the supplied definition on this specific bucket: average published confidence was 51.83%, while observed hit rate was 75%. This does not mean the system is reliably underconfident; four games are insufficient to establish a calibration curve. Across the cross-slate trend, weighted calibration error is marked regressing, with a mean of 0.2087.

The self-assessment headline calls the system “confidence_overconfident,” but that label conflicts with this slate’s bucket definition, which shows underconfidence. The safer conclusion is: calibration is unstable and materially misaligned, but the direction of correction should not be inferred from this slate alone.

Score accuracy

Score accuracy was materially weak:

The high-severity score_margin_compression finding is supported: every published prediction had a margin of two runs or less, while two actual margins were at least four runs. This is not a reason to widen every forecast indiscriminately. It supports a bounded, rolling-window test of the registered variance controls.

The weak_run_model_signal finding is also supported by holdout validation:

These values explain almost none of the holdout run variance. Exact score estimates should therefore be treated as low-confidence outputs.

Starter accuracy

Starter accuracy was not the main slate failure:

The appropriate diagnosis is that the starter earned-run projections were not the principal cause of the winner miss, but the extreme Hunter Brown workload/outcome mismatch remains a run-model risk. The data do not justify broadly reweighting pitcher form from this slate.

Artifact integrity

Artifact integrity was strong within the available audit set:

The missing integrity-revision audit remains a documentation and artifact-receipt gap. It does not overturn the clean game-level audit results.

Causal issue register reconciliation

High: intermediate pipeline winner instability

This is a real process/model risk. Historical ML was correct on PHI @ ATL in winner direction; variance application moved it to a tie; enhanced prediction later moved it from tie to ATL, which was still wrong. The later recovery restored the published winner count but did not erase the regression.

High: score-margin compression

The cross-slate trend now supplies more than one-slate evidence: margin bias is marked regressing, with mean -2.1615, and the finding has a two-slate consecutive streak.

High: single-slate calibration instability

The cross-slate finding has a two-slate consecutive streak and incidence in 7 of 11 loaded slates, so this is no longer merely a one-slate observation. However, the exact direction of a calibration-cap change still requires controlled shadow testing.

High: weak run-model signal

This is a persistent structural problem: incidence 10 of 11 slates. It is primarily a feature/target and training issue, not a nightly variance-tuning issue.

Informational findings

---

3. Every game

BOS @ NYY — correct winner, wrong score

This is explicitly a correct-winner/wrong-score game.

Evidence and edges

Pregame evidence favored NYY:

Run factors were modestly suppressive:

Starter projected versus actual
StarterProjectedActualError
Sonny Gray, BOS3 ER, 18 outs, ERA 4.502 ER, 14 outs, ERA 3.86ER -1; outs -4; ERA -0.64
Max Fried, NYY0 ER, 18 outs, ERA 0.001 ER, 18 outs, ERA 1.50ER +1; outs 0; ERA +1.50

The player-level forensic feed lacked a settled pitching line for Sonny Gray, despite the separate game-level starter comparison. The audit therefore supports the game-level comparison but not a complete player-level starter reconstruction.

Score path and player adjustments

The supplied score path was not expanded for this game, but the final prediction was 3–4. The main observed run miss was NYY offense:

The pitcher attribution did not identify a material break: the forensic verdict characterized both sides as closer to variance.

Audit findings
Causes

---

CHC @ SD — correct winner, wrong score

This is also a correct-winner/wrong-score game.

Evidence and edges

The evidence conflicted:

The starter-experience control was applied:

Starter projected versus actual
StarterProjectedActualError
Kevin Gausman, CHC4 ER, 17 outs, ERA 6.353 ER, 10 outs, ERA 8.10ER -1; outs -7; ERA +1.75
Nick Pivetta, SD2 ER, 15 outs, ERA 3.601 ER, 10 outs, ERA 2.70ER -1; outs -5; ERA -0.90

The player-level forensic feed had no settled pitching line for Kevin Gausman. Nick Pivetta’s line was available and showed eight prior feed appearances.

Score path and player adjustments

The forensic verdict identified SD offense as the main side that deviated, but characterized the overall result as closer to variance than a decisive model failure.

Audit findings
Causes

---

CHW @ HOU — correct winner, wrong score

This is a correct-winner/wrong-score game.

Evidence and edges

Evidence strongly favored CHW in the underlying edges, although the final probability was nearly even:

Run factors:

Starter projected versus actual
StarterProjectedActualError
Sean Burke, CHW2 ER, 15 outs, ERA 3.603 ER, 12 outs, ERA 6.75ER +1; outs -3; ERA +3.15
Hunter Brown, HOU3 ER, 17 outs, ERA 4.763 ER, 2 outs, ERA 40.50ER 0; outs -15; derived ERA +35.74

Hunter Brown’s actual two-out appearance is the largest starter workload anomaly on the slate. Earned runs were projected correctly, but expected duration was not.

Score path and player adjustments

No player-level actuals were joined to this game:

The model nevertheless got the winner correct and the total close, while missing the final margin.

Audit findings
Causes

---

PHI @ ATL — winner miss

This was the only winner miss. It was not a score-total failure: the total was exact, but the one-run direction was reversed.

Evidence and edges

The pregame evidence favored ATL:

The five supplied head-to-head results were mixed, including both PHI and ATL blowouts. That history supported uncertainty rather than a strong directional conclusion.

Starter projected versus actual
StarterProjectedActualError
Cristopher Sánchez, PHI2 ER, 19 outs, ERA 2.843 ER, 20 outs, ERA 4.05ER +1; outs +1; ERA +1.21
Tyler Mahle, ATL0 ER, 18 outs, ERA 0.001 ER, 21 outs, ERA 1.29ER +1; outs +3; ERA +1.29

Both starters were one earned run away from projection. Starter error did not clearly explain the loss.

Score path

The score path shows the crucial direction regression:

  1. Historical ML: PHI 4.364, ATL 4.121
  2. Variance applied: PHI 4, ATL 4 — PHI direction became a tie
  3. Enhanced prediction: PHI 3, ATL 4 — direction moved to ATL
  4. Savant run environment: PHI 3, ATL 4
  5. Fundamental edge review: PHI 3, ATL 4
  6. Capped target: PHI 3, ATL 4
  7. Simulation result: PHI 3, ATL 4

The Savant step itself changed the target numerically by +0.2203 PHI and -0.1362 ATL, but the listed winner direction remained ATL after the earlier enhanced stage. Final publication did not change the winner.

Player adjustments

There were 23 material player-level changes. Important listed adjustments included:

The player evidence indicates some offense was under-rated, but only half of the 12 material player deviations were supported by the players’ own contact-quality profiles. This limits how much should be learned from the individual outcomes.

Audit findings
Causes

---

4. Miss reconstruction

PHI @ ATL: earliest movement toward the wrong result

The miss reconstruction must distinguish intermediate model regression from final outcome variance.

Stage-by-stage direction
StageDirectionAssessment
Historical MLPHICorrect direction relative to actual
Variance appliedTieFirst deterioration; PHI win signal was removed
Enhanced predictionATLExplicit winner-direction regression
Savant run environmentATLNo reported winner change
Fundamental edge reviewATLNo reported winner change
Capped targetATLNo reported winner change
Simulation resultATLNo reported winner change
Published finalATLMiss preserved

The causal register is therefore correct: historical_ml → variance_applied degraded winner accuracy by one hit. The later transition from variance-applied to enhanced prediction improved slate winner accuracy from 0.50 to 0.75 because CHW @ HOU moved from HOU to CHW, but it also moved PHI @ ATL from a tie to ATL. A later numerical recovery does not erase the intermediate regression.

Classification of the loss

A home-away confidence edge of 0.12, if encountered, should be treated as moderate—not as a near coin flip. The current slate did not contain a 0.12 edge; its largest edge was 0.08 in BOS @ NYY. The near-zero edges in CHW @ HOU and PHI @ ATL were genuine toss-up territory.

Pipeline-stage quality across all stages

StageWinner accuracyTeam-run MAETotal-run MAEMargin MAE
historical_ml0.75, 3/41.78341.85273.1126
variance_applied0.50, 2/41.87501.75003.2500
enhanced_prediction0.75, 3/41.87502.25003.2500
embedded_savant_run_environment0.751.87502.25003.2500
fundamental_edge_target_review0.751.87502.25003.2500
capped_target0.751.87502.25003.2500
simulation_result0.751.87502.25003.2500
published_final0.751.87502.25003.2500

Transitions:

The critical interpretation is that the later recovery of the slate’s aggregate winner accuracy does not erase the intermediate winner-direction regression on PHI @ ATL.

---

5. Cross-game counterfactuals

Lever tension entries

Score variance multiplier / variance floor

The slate supports investigating margin compression, but it does not show that a variance change would have improved any particular game. BOS @ NYY and CHW @ HOU had under-wide margins, but widening distributions would not necessarily have produced their exact scores or changed winner probabilities.

Pitcher form weights / prior games

Do not reweight pitcher form based on this slate.

Recent/season run-mean weighting

This is suggestive but not sufficient for an unconstrained global change. A small shadow experiment is defensible.

Tempting one-game fixes that should not be made

  1. Do not widen every score prediction solely because BOS @ NYY ended 9–2.
  2. Do not change pitcher form weights; all four games are recorded as potential casualties.
  3. Do not force PHI @ ATL through a categorical PHI pick merely because historical ML favored PHI. The edge was small and the outcome remained a one-run toss-up.
  4. Do not tune individual hitters from every deviation. Only 6 of 12 material deviations were supported by the hitter’s own contact quality.
  5. Do not infer that simulation was useful merely because it did not flip a winner. The zero-flip pattern has persisted for 11 slates.
  6. Do not treat the CHW @ HOU blend-stage home preference as a proven defect without connecting its probability transformation to the published lineage.

---

6. Data and contract defects

Critical, error, warning, and informational findings

Across structural audits:

No critical or error-level model-contract failure was reported.

Specific defects and gaps

Prediction-model defects
  1. Run model near-zero holdout signal
  1. Margin compression
  1. Simulation inertness
  1. Intermediate winner instability
  1. Player-projection spread weakness
Data-contract defects
  1. CHW @ HOU had no player-level actuals joined.
  2. Sonny Gray and Kevin Gausman lacked settled per-player pitching lines in the forensic feed.
  3. The missing integrity-revision audit prevents complete post-remediation artifact verification.
  4. Probability-reversion data exposes a blend-stage value for CHW @ HOU that is not directly connected to the primary probability lineage.
Presentation/artifact issues

Probability lineage audit

BOS @ NYY
CHC @ SD
CHW @ HOU
PHI @ ATL

The lineage is substantially complete, but CHW @ HOU needs explicit blend-stage provenance to eliminate ambiguity.

---

7. Cross-slate persistence

A single slate is noisy, but the supplied cross-slate evidence contains several persistent patterns.

Finding streaks

FindingConsecutive-slate countPresent now?Interpretation
high_raw_probability_cluster0NoNot active now; incidence 1/11 does not support action
pipeline_winner_instability2YesPersistent short streak; material winner-direction risk
score_margin_compression2YesPersistent short streak; margin tails too narrow
simulation_inert_on_slate11YesEstablished failure, not single-slate noise
single_slate_calibration_instability2YesPersistent short streak; calibration misalignment requires monitoring
weak_run_model_signal2YesIncidence 10/11; persistent model-capability problem

The source reports an escalation streak of 3 and separately marks simulation inertness as an established 11-slate failure.

Escalated finding

Simulation inertness

The self-assessment identifies the likely root cause: the same target-seeking draws are used to create the score distribution, and the loop can exit after approximately two selected draws. The resulting win rate is not a valid probability distribution.

Metric trends

The required directions are:

The improving winner-accuracy trend must not be used to excuse the regressing calibration, score-margin, and simulation patterns.

---

8. Adjustments for today

Recommendations are ranked by persistence, scope, expected metric effect, and regression risk.

1. Highest priority: repair and instrument simulation inertness

  1. target-realization search for box-score output, and
  2. an independent, unsteered win-probability distribution.

2. Persistent run-model weakness: initiate an isolated feature-contract backtest

3. Bounded shadow experiment for persistent margin compression

4. Calibration control shadow test

5. Single-slate winner-direction issue: improve traceability, not a blind pick override

Abstentions

---

9. Bottom line

Known

Uncertain

Single safest next action

Run the simulation-inertness diagnostic/code fix in shadow mode before changing model weights: independently generate an unsteered win-probability distribution with a registered draw count, preserve the target-realization search separately, and monitor rolling team-run MAE, total-run MAE, winner Brier score, and actual winner-flip contribution.

That action addresses the longest established failure, does not force an unsupported one-game correction, and creates the evidence needed for safer score and confidence adjustments on the next slate.