Production forensic audit · immutable source review

MLB prediction system deep audit

Slate 20260923. This report separates the canonical final decision from the stochastic inning simulation, audits signed probability confidence, reconciles starters against the official schedule, and records the exact readiness of the adaptive learning and training loop.

16games audited
0winner conflicts
0score conflicts
1starter mismatches
0unresolved starters
COMPLETEslate artifacts
BLOCKEDoverall readiness

Executive conclusion

Canonical display rule: the public winner and score come from final_prediction. A disagreeing scoring_simulation remains visible for diagnosis but cannot overwrite the accepted winner.

Confidence rule: Signed confidence edge = home win probability − away win probability. Positive is home; negative is away. Winner probability remains separately available as pick_probability for calibration and learning.

Artifact safety: the source game JSON files were read only. Files mutated: 0.

Official slate completeness

Status: COMPLETE. Expected 16 official games and found 16 valid canonical artifacts.

Missing games: None.

Unexpected games: None.

Artifact parse failures: 0. The command returns a nonzero status for incomplete slates unless --allow-incomplete is explicit.

All games at a glance

GameCanonical finalDiagnostic simulationSigned edgeStarter status A/H
20260923_ARI@COLARI 8 - 6 COLARI 8 - 6 COL-12.00%MATCH / MATCH
20260923_CHW@KCCHW 7 - 5 KCCHW 7 - 5 KC-12.00%MATCH / MATCH
20260923_CIN@ATLCIN 5 - 6 ATLCIN 5 - 6 ATL+12.00%MATCH / MATCH
20260923_CLE@BOSCLE 5 - 4 BOSCLE 5 - 4 BOS-1.05%MATCH / MATCH
20260923_HOU@SEAHOU 4 - 5 SEAHOU 4 - 5 SEA+3.06%MATCH / MATCH
20260923_LAA@OAKLAA 5 - 4 OAKLAA 5 - 4 OAK-8.00%MATCH / MATCH
20260923_MIA@CHCMIA 5 - 6 CHCMIA 5 - 6 CHC+6.00%MATCH / MATCH
20260923_MIL@PHIMIL 5 - 3 PHIMIL 5 - 3 PHI-12.00%MATCH / MATCH
20260923_MIN@SFMIN 4 - 3 SFMIN 4 - 3 SF-2.22%MATCH / MATCH
20260923_NYM@TEXNYM 6 - 3 TEXNYM 6 - 3 TEX-19.09%MATCH / MATCH
20260923_SD@LADSD 5 - 7 LADSD 5 - 7 LAD+7.03%MATCH / MATCH
20260923_STL@PITSTL 5 - 6 PITSTL 5 - 6 PIT+11.20%MATCH / MATCH
20260923_TB@NYYTB 5 - 4 NYYTB 5 - 4 NYY-1.05%MATCH / MATCH
20260923_TOR@BALTOR 4 - 5 BALTOR 4 - 5 BAL+1.00%MATCH / MATCH
20260923_TOR@BAL_2TOR 6 - 5 BALTOR 6 - 5 BAL-2.33%MISMATCH / MATCH
20260923_WAS@DETWAS 6 - 4 DETWAS 6 - 4 DET-1.00%MATCH / MATCH

Final vs simulation contradictions

A score difference is diagnostic. A winner difference is a hard public-surface contradiction unless the display is synchronized to the final decision.

20260923_ARI@COL.json

20260923_ARI@COL

CONSISTENT

Canonical final prediction

ARI 8 - 6 COL

Winner: ARI

Diagnostic simulation

ARI 8 - 6 COL

Winner: ARI

Signed confidence edge

-12.00%

Home 44.00% · Away 56.00%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Merrill Kelly (518876)
Official
Merrill Kelly (518876)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.998, WHIP 1.474, IP 156.7
Home MATCH
Local
Mason Adams (690279)
Official
Mason Adams (690279)
Local source
official_mlb_probable_pitcher
Local profile
ERA 5.087, WHIP 1.652, IP 23.0

Starter impact evidence

Applied: True Away run factor: 1.021 Home run factor: 0.951 Before: 7.969–4.634 After: 8.134–4.406
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_CHW@KC.json

20260923_CHW@KC

CONSISTENT

Canonical final prediction

CHW 7 - 5 KC

Winner: CHW

Diagnostic simulation

CHW 7 - 5 KC

Winner: CHW

Signed confidence edge

-12.00%

Home 44.00% · Away 56.00%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Bryan Hudson (663542)
Official
Bryan Hudson (663542)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.793, WHIP 0.724, IP 9.7
Home MATCH
Local
Seth Lugo (607625)
Official
Seth Lugo (607625)
Local source
official_mlb_probable_pitcher
Local profile
ERA 5.104, WHIP 1.470, IP 164.0

Starter impact evidence

Applied: True Away run factor: 1.027 Home run factor: 0.988 Before: 8.192–1.958 After: 8.414–1.935
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_CIN@ATL.json

20260923_CIN@ATL

CONSISTENT

Canonical final prediction

CIN 5 - 6 ATL

Winner: ATL

Diagnostic simulation

CIN 5 - 6 ATL

Winner: ATL

Signed confidence edge

+12.00%

Home 56.00% · Away 44.00%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Andrew Abbott (671096)
Official
Andrew Abbott (671096)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.698, WHIP 1.472, IP 159.0
Home MATCH
Local
Chris Sale (519242)
Official
Chris Sale (519242)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.178, WHIP 0.994, IP 157.0

Starter impact evidence

Applied: True Away run factor: 1.009 Home run factor: 1.081 Before: 1.934–8.145 After: 1.951–8.807
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_CLE@BOS.json

20260923_CLE@BOS

CONSISTENT

Canonical final prediction

CLE 5 - 4 BOS

Winner: CLE

Diagnostic simulation

CLE 5 - 4 BOS

Winner: CLE

Signed confidence edge

-1.05%

Home 49.47% · Away 50.53%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Foster Griffin (656492)
Official
Foster Griffin (656492)
Local source
official_mlb_probable_pitcher
Local profile
ERA 3.641, WHIP 1.176, IP 160.7
Home MATCH
Local
Sonny Gray (543243)
Official
Sonny Gray (543243)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.816, WHIP 1.159, IP 163.0

Starter impact evidence

Applied: True Away run factor: 0.945 Home run factor: 1.005 Before: 5.009–4.029 After: 4.731–4.049
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_HOU@SEA.json

20260923_HOU@SEA

CONSISTENT

Canonical final prediction

HOU 4 - 5 SEA

Winner: SEA

Diagnostic simulation

HOU 4 - 5 SEA

Winner: SEA

Signed confidence edge

+3.06%

Home 51.53% · Away 48.47%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Ethan Pecko (814490)
Official
Ethan Pecko (814490)
Local source
official_mlb_probable_pitcher
Local profile
ERA 5.192, WHIP 1.500, IP 17.3
Home MATCH
Local
George Kirby (669923)
Official
George Kirby (669923)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.244, WHIP 1.385, IP 169.7

Starter impact evidence

Applied: False Away run factor: 0.996 Home run factor: 0.996 Before: 3.025–5.022 After: 3.014–5.003
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_LAA@OAK.json

20260923_LAA@OAK

CONSISTENT

Canonical final prediction

LAA 5 - 4 OAK

Winner: LAA

Diagnostic simulation

LAA 5 - 4 OAK

Winner: LAA

Signed confidence edge

-8.00%

Home 46.00% · Away 54.00%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Walbert Urena (700712)
Official
Walbert Ureña (700712)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.776, WHIP 1.164, IP 142.7
Home MATCH
Local
Jeffrey Springs (605488)
Official
Jeffrey Springs (605488)
Local source
official_mlb_probable_pitcher
Local profile
ERA 6.181, WHIP 1.468, IP 138.3

Starter impact evidence

Applied: True Away run factor: 0.990 Home run factor: 1.048 Before: 6.094–2.937 After: 6.030–3.079
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_MIA@CHC.json

20260923_MIA@CHC

CONSISTENT

Canonical final prediction

MIA 5 - 6 CHC

Winner: CHC

Diagnostic simulation

MIA 5 - 6 CHC

Winner: CHC

Signed confidence edge

+6.00%

Home 53.00% · Away 47.00%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Ryan Gusto (687473)
Official
Ryan Gusto (687473)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.173, WHIP 1.514, IP 73.3
Home MATCH
Local
Kevin Gausman (592332)
Official
Kevin Gausman (592332)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.552, WHIP 1.273, IP 172.0

Starter impact evidence

Applied: True Away run factor: 0.979 Home run factor: 0.967 Before: 3.986–6.112 After: 3.904–5.908
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_MIL@PHI.json

20260923_MIL@PHI

CONSISTENT

Canonical final prediction

MIL 5 - 3 PHI

Winner: MIL

Diagnostic simulation

MIL 5 - 3 PHI

Winner: MIL

Signed confidence edge

-12.00%

Home 44.00% · Away 56.00%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Logan Henderson (701656)
Official
Logan Henderson (701656)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.507, WHIP 0.814, IP 93.3
Home MATCH
Local
Aaron Nola (605400)
Official
Aaron Nola (605400)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.491, WHIP 1.349, IP 168.3

Starter impact evidence

Applied: True Away run factor: 1.065 Home run factor: 1.014 Before: 5.020–1.932 After: 5.348–1.960
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_MIN@SF.json

20260923_MIN@SF

CONSISTENT

Canonical final prediction

MIN 4 - 3 SF

Winner: MIN

Diagnostic simulation

MIN 4 - 3 SF

Winner: MIN

Signed confidence edge

-2.22%

Home 48.89% · Away 51.11%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Connor Prielipp (687570)
Official
Connor Prielipp (687570)
Local source
official_mlb_probable_pitcher
Local profile
ERA 5.174, WHIP 1.320, IP 111.3
Home MATCH
Local
Cesar Perdomo (702885)
Official
Cesar Perdomo (702885)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.109, WHIP 1.630, IP 15.3

Starter impact evidence

Applied: True Away run factor: 1.001 Home run factor: 0.928 Before: 4.022–3.010 After: 4.025–2.793
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_NYM@TEX.json

20260923_NYM@TEX

CONSISTENT

Canonical final prediction

NYM 6 - 3 TEX

Winner: NYM

Diagnostic simulation

NYM 6 - 3 TEX

Winner: NYM

Signed confidence edge

-19.09%

Home 40.46% · Away 59.54%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Nolan McLean (690997)
Official
Nolan McLean (690997)
Local source
official_mlb_probable_pitcher
Local profile
ERA 3.179, WHIP 1.193, IP 172.7
Home MATCH
Local
Cody Bradford (674003)
Official
Cody Bradford (674003)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.718, WHIP 1.573, IP 34.3

Starter impact evidence

Applied: True Away run factor: 0.999 Home run factor: 0.927 Before: 5.038–2.976 After: 5.032–2.758
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_SD@LAD.json

20260923_SD@LAD

CONSISTENT

Canonical final prediction

SD 5 - 7 LAD

Winner: LAD

Diagnostic simulation

SD 5 - 7 LAD

Winner: LAD

Signed confidence edge

+7.03%

Home 53.52% · Away 46.48%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Robbie Ray (592662)
Official
Robbie Ray (592662)
Local source
official_mlb_probable_pitcher
Local profile
ERA 3.750, WHIP 1.359, IP 156.0
Home MATCH
Local
Yoshinobu Yamamoto (808967)
Official
Yoshinobu Yamamoto (808967)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.514, WHIP 0.866, IP 179.0

Starter impact evidence

Applied: True Away run factor: 0.987 Home run factor: 1.029 Before: 3.870–6.090 After: 3.818–6.264
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_STL@PIT.json

20260923_STL@PIT

CONSISTENT

Canonical final prediction

STL 5 - 6 PIT

Winner: PIT

Diagnostic simulation

STL 5 - 6 PIT

Winner: PIT

Signed confidence edge

+11.20%

Home 55.60% · Away 44.40%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Matthew Liberatore (669461)
Official
Matthew Liberatore (669461)
Local source
official_mlb_probable_pitcher
Local profile
ERA 5.364, WHIP 1.487, IP 149.3
Home MATCH
Local
Lake Bachar (669199)
Official
Lake Bachar (669199)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.314, WHIP 1.243, IP 23.3

Starter impact evidence

Applied: True Away run factor: 0.980 Home run factor: 1.023 Before: 2.960–7.130 After: 2.899–7.296
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_TB@NYY.json

20260923_TB@NYY

CONSISTENT

Canonical final prediction

TB 5 - 4 NYY

Winner: TB

Diagnostic simulation

TB 5 - 4 NYY

Winner: TB

Signed confidence edge

-1.05%

Home 49.47% · Away 50.53%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Mason Englert (669438)
Official
Mason Englert (669438)
Local source
official_mlb_probable_pitcher
Local profile
ERA 6.279, WHIP 1.605, IP 14.3
Home MATCH
Local
Gerrit Cole (543037)
Official
Gerrit Cole (543037)
Local source
official_mlb_probable_pitcher
Local profile
ERA 3.635, WHIP 1.104, IP 121.3

Starter impact evidence

Applied: True Away run factor: 1.017 Home run factor: 1.021 Before: 4.014–3.025 After: 4.081–3.087
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_TOR@BAL.json

20260923_TOR@BAL

CONSISTENT

Canonical final prediction

TOR 4 - 5 BAL

Winner: BAL

Diagnostic simulation

TOR 4 - 5 BAL

Winner: BAL

Signed confidence edge

+1.00%

Home 50.50% · Away 49.50%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Max Scherzer (453286)
Official
Max Scherzer (453286)
Local source
official_mlb_probable_pitcher
Local profile
ERA 6.069, WHIP 1.362, IP 72.7
Home MATCH
Local
Chris Bassitt (605135)
Official
Chris Bassitt (605135)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.777, WHIP 1.604, IP 86.7

Starter impact evidence

Applied: True Away run factor: 1.010 Home run factor: 1.089 Before: 4.082–4.044 After: 4.123–4.406
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_TOR@BAL_2.json

20260923_TOR@BAL_2

CONSISTENT

Canonical final prediction

TOR 6 - 5 BAL

Winner: TOR

Diagnostic simulation

TOR 6 - 5 BAL

Winner: TOR

Signed confidence edge

-2.33%

Home 48.83% · Away 51.17%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MISMATCH
Local
Max Scherzer (453286)
Official
CJ Van Eyk (669310)
Local source
daily_games
Local profile
ERA 6.069, WHIP 1.362, IP 72.7
Home MATCH
Local
Trey Gibson (694346)
Official
Trey Gibson (694346)
Local source
official_mlb_probable_pitcher
Local profile
ERA 7.548, WHIP 1.903, IP 31.0

Starter impact evidence

Applied: True Away run factor: 0.971 Home run factor: 1.089 Before: 5.753–3.621 After: 5.588–3.946
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

20260923_WAS@DET.json

20260923_WAS@DET

CONSISTENT

Canonical final prediction

WAS 6 - 4 DET

Winner: WAS

Diagnostic simulation

WAS 6 - 4 DET

Winner: WAS

Signed confidence edge

-1.00%

Home 49.50% · Away 50.50%

Public display authority: final_prediction. The inning simulation is diagnostic only. Winner disagreement: False; score disagreement: False.

Official and local starter audit

Away MATCH
Local
Richard Lovelady (663992)
Official
Richard Lovelady (663992)
Local source
official_mlb_probable_pitcher
Local profile
ERA 2.454, WHIP 1.364, IP 7.3
Home MATCH
Local
Framber Valdez (664285)
Official
Framber Valdez (664285)
Local source
official_mlb_probable_pitcher
Local profile
ERA 4.055, WHIP 1.364, IP 168.7

Starter impact evidence

Applied: True Away run factor: 1.092 Home run factor: 0.994 Before: 4.068–3.993 After: 4.442–3.970
Model provenance
Schema
historical_game_temporal_v11
Trained at UTC
2026-09-23T08:45:45.267582Z
Training rows
2357
Feature count
16
Publication quality gate
True

Fixes and verification

IDStatusSummaryVerification
canonical_public_resultFIXEDPublic winner and score now come from final_prediction.The simulation remains preserved as diagnostic evidence and can no longer overwrite the accepted public decision.
signed_confidence_contractFIXEDConfidence now means home_win_probability minus away_win_probability.pick_probability and calibration_probability remain separate winner probabilities for learning and calibration.
signed_confidence_learning_separationFIXEDBrier, calibration buckets, thresholds, and expected-hit math never consume the signed UI edge.Away favorites use pick_probability/calibration_probability in the 0-1 probability domain while retaining a negative public confidence edge.
official_starter_precedenceFIXED_FOR_NEXT_SAFE_GENERATIONA current official MLB probable pitcher replaces a conflicting local starter.The source and replacement reason are recorded; post-first-pitch artifacts are not silently rewritten.
starter_only_historyFIXEDStarter matchup quality excludes relief appearances.Starter flags/pitching order are preferred, with a conservative innings fallback when role flags are absent.
starter_workload_weightingFIXEDStarter quality is weighted by expected innings and the remaining bullpen share is neutral.A starter-only factor is preserved for audit while the game receives the workload-adjusted factor.
hourly_source_refreshFIXEDLong-running workers refresh schedule and pitcher caches when source revisions change.Revision-aware cache keys cover daily starters, player stats, pitcher performance, recent rows, and matchup splits.
learning_artifact_mergeFIXEDPostgame learning reads root final/simulation fields together with nested game analysis.Final-versus-simulation contradictions and signed probability edges enter the learning evidence packet.
dynamic_starter_learning_rowsFIXEDDaily and rolling learning rebuild starter rows for the actual selected dates.The obsolete hard-coded August 1–3 starter report is no longer the normal pipeline input; each historical date resolves its own archived slate for the separate 120-game adaptive window.
official_settlement_safetyFIXEDOfficial actuals refresh until the slate is final and doubleheaders settle by game number.In-progress starter lines are excluded, final cache payloads are reusable, and game 1/game 2 cannot overwrite or cross-pair their starters.
temporal_leakage_guardFIXEDAdaptive results require timestamp proof that the artifact was generated before first pitch.Missing, post-start, or overwritten artifacts are excluded from packets, ledgers, evaluations, and proposal sample counts.
adaptive_evidence_bindingFIXEDPromotion evidence is bound to evaluator mode and exact champion/candidate hashes.Promotions reload a content-addressed system evaluation artifact and verify its hash; unsupported modes, unrelated metrics, partial normalized weight groups, and unimplemented auto-promotion fail closed.
starter_projection_evaluatorFIXEDStarter-only form variables now use frozen prospective replay and official starter outcomes.Promotion is based only on starter ER/outs MAE paired by game, side, and MLB ID; generic game Brier evidence is rejected.
phase_aware_trace_storageFIXEDPrediction traces are request-local, atomically saved, and versioned after first pitch.Concurrent requests cannot share a tracer, same-second reruns receive unique revision names, and the canonical pregame trace is preserved.

Readiness checks

IDStatusSummaryEvidence
report_contractPASSAudited 16 games and generated equivalent JSON/HTML outputs.
source_artifact_immutabilityPASSMutated canonical source files: [].
official_schedulePASSOfficial rows: 16
slate_artifact_completenessPASSExpected 16 official games; found 16 valid artifacts; missing []; unexpected []; parse failures 0.
current_artifact_starter_identityBLOCKED1 mismatches and 0 unresolved starter sides in immutable source artifacts.
immutable_source_public_contractPASS0 immutable source artifacts violate the signed confidence, winner/score, probability-direction, or probability-sum contract. They were audited, not rewritten.
current_generation_public_contractPASSCurrent generation code synchronizes public winner/score and computes confidence as home_win_probability - away_win_probability; immutable legacy artifacts remain visibly separate.
postgame_settlement_and_learningPASSAll official games are final; settlement may run.
adaptive_core_modesPASSArtifact replay, enhanced shadow, and isolated XGBoost training backtest are mode/hash bound and manually promoted.
starter_projection_metricsPASSAllowlisted starter prior/weight candidates use prospective frozen replay, official MLB-ID settlement, ER/outs MAE, bootstrap gates, exact hashes, manual promotion, and starter-aware rollback. Global/hitter variables remain excluded.

Artifact parsing and integrity

ArtifactResultDetail
No artifact parsing errors.

Model provenance

The provenance for every game is retained inside its detail card. This exposes schema, training timestamp, row count, feature count, and publication gate rather than treating the current model as an unexplained black box.

Adaptive learning, review, and training context

Deep findings

20260819_STL@CIN

The better starter was recognized; the projected loss was not caused by rating him as worse.

Chase Burns is the stronger starter in the artifact, but the accepted team-level decision still favors St. Louis because season/recent team signals outweigh Cincinnati's starter edge. The diagnostic simulation does not project Burns being charged with every St. Louis run.

Action/readiness: Starter-only rows, official identity precedence, expected-innings weighting, and hourly cache refresh are corrected for future safe pregame generations. The immutable already-started artifact is audited, not rewritten.

20260819_WAS@TEX

The Washington 4–2 screen was a cross-stage display bug, not the accepted forecast.

The accepted decision is None with None as winner; the disagreeing diagnostic simulation is None with None as winner.

Action/readiness: The public contract is synchronized to final_prediction, and future pregame generation replaces the conflicting local starter with the official MLB probable. No post-first-pitch source JSON was overwritten.

20260819 full slate

The contradiction was systemic across display surfaces, while winner conflicts were concentrated.

0 of 16 artifacts have a final/simulation score difference and 0 have a winner difference.

Action/readiness: Regenerate future pregame artifacts with the corrected code; keep today's already-started source artifacts immutable and use this report as the correction/audit layer.

Connected execution flow

  1. Hourly upstream files change; revision-aware loaders invalidate same-process schedule, player, pitcher, recent-form, and matchup caches.
  2. Pregame orchestration reconciles each starter against the current official MLB game row and records source/provenance.
  3. Starter-only historical quality and Savant quality are blended by expected starter innings; the bullpen owns the remaining game share.
  4. The stable final-decision policy chooses one winner/score, then the public contract synchronizes every public field while retaining the simulation as diagnostic.
  5. After official settlement, review_prediction_results joins actual scores to the immutable prediction and preserves signed edge plus pick_probability.
  6. The daily and rolling postgame pipeline rebuilds starter comparisons for the selected dates; a separate 120-game adaptive evidence window prevents daily sample limits from disabling proposals.
  7. The adaptive cycle ingests settled evidence, evaluates one bounded candidate, asks OpenAI then Claude for strict JSON only when eligible, and never lets LLM text directly mutate production.
  8. Starter candidates replay frozen pregame form evidence and settle against separate append-only official starter events; XGBoost candidates use isolated chronological retraining.
  9. A deterministic, mode/hash-bound evaluation must pass before manual promotion; approved changes retain exact rollback and starter-aware or game-aware post-promotion monitoring.

Known limits and safety holds

Complete machine-readable operating context
{
  "data_directory": {
    "status": "untouched_by_this_audit",
    "policy": "The report reads output/games and the external official schedule only. It does not rewrite or enumerate data/."
  },
  "adaptive_readiness": {
    "artifact_replay": "operational",
    "enhanced_shadow": "operational",
    "model_training_backtest": "operational_with_manual_promotion",
    "full_pipeline_backtest": "operational_for_allowlisted_starter_projection_parameters_only",
    "provider_order": [
      "openai",
      "anthropic"
    ],
    "provider_output_authority": "proposal_only"
  },
  "confidence_semantics": {
    "display": "home_win_probability - away_win_probability",
    "calibration": "pick_probability / calibration_probability"
  }
}

Evidence sources