Luna deep analysis — slate 20261011
Coverage receipt: COMPLETE · 9/8 sections; 1/1 games; 4/4 causes; 7/7 sources
1. Evidence receipt and gaps
All seven source_manifest entries are marked loaded:
| Source | Status and stated purpose |
|---|---|
Prediction review, /app/output/reports/prediction_review_20261011.json (11,400 bytes) | Loaded; official outcomes and scoring errors |
Forensic deep audit, /app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20261011.json (30,976 bytes) | Loaded; probability, provenance, starter, and decision contracts |
Continuous learning, /app/output/learning/continuous_learning_daily_20261011.json (181,366 bytes) | Loaded; stage quality, calibration, probability lineage, score distribution, starter comparisons |
Detailed report, /app/output/reports/detailed_20261011.html (31,609 bytes) | Loaded; game and simulation rendering |
Ultra-detailed player audit, /app/output/reports/20261011_ultra_detailed_player_audit.html (1,635,801 bytes) | Loaded; player-level prediction trace |
Structural audit, /app/output/reports/audit_report_20261011.html (120,679 bytes) | Loaded; invariant findings |
Integrity revision audit, /app/output/reports/audit_report_20261011_integrity_revision.html (344,105 bytes) | Loaded; structural audit of three post-start game revisions |
Slate coverage: The diagnosis reports one expected game and one game reviewed; continuous-learning, forensic-deep-audit, starter-comparison, and structural-audit coverage are each 1/1. The reviewed game is LAD@MIL. No additional game is identified as missing by the supplied coverage matrix.
Gaps and internal contradictions:
- The game-level structural audit reports 0 critical, 0 error, 0 warning, 109 good, and 1 info; its findings array is empty. The supplied data does not state the text of that single informational finding. Forecast-file integrity is separately described as clean, with zero defects and one informational note.
- Probability provenance has an upstream field inconsistency:
probability_lineage.raw_model_pick_probabilityis 0.5713, whilemodel_trace.confidence_path.raw_pick_probabilityis 0.550827; the lineage also gives 0.550827 as the governor input. The record does not explain why the field called “raw model” differs from the value used as governor input. The final published probability and governed value do match closely, and the lineage marks no unexplained material delta; this is a provenance ambiguity, not evidence that publication bypassed a recorded transformation. - The revision-audit artifact is listed and loaded, but no revision-specific findings or details are present in the supplied diagnosis. Its contents cannot be independently summarized from this JSON.
- The data is one settled game. That supports a complete slate review, but not stable single-slate conclusions about calibration or individual player effects.
2. Executive diagnosis
Winner accuracy: 1/1 (100%), MIL correctly predicted. This is a correct winner call, not a correct score forecast. The model’s holdout winner accuracy is 0.600414, and its walk-forward accuracy is 0.570149; one winning call does not validate those broader estimates.
Calibration quality: Published MIL win probability was 0.548241 (about 54.8%), with a home-minus-away probability edge of 0.0965 (about 9.65 percentage points). The pick was a hit, producing Brier score 0.204086. The single-slate calibration bucket had average confidence 0.5482 and observed hit rate 1.0, so confidence-minus-hit-rate was −0.4518; the monitor labels that bucket underconfident, and weighted absolute calibration error was 0.4518. This is a one-game bucket, not evidence for a stable calibration curve. A confidence edge of 0.12, if encountered elsewhere, is moderate—not a near coin flip; this game’s edge was smaller, about 0.10.
Score accuracy: The published score was LAD 2, MIL 4; the actual score was LAD 1, MIL 2. Winner was right, but both team-run forecasts were high: LAD by 1 and MIL by 2. The total was forecast at 6 versus 3 actual, a +3 total-run bias/error. Team-run absolute error is 3 as reported. Exact score quality should be treated cautiously: validated holdout run-model R² is only 0.002143 home, 0.030936 away, and 0.002415 total.
Starter accuracy: Both starter identities matched. Skubal was projected for 4 ER, 5.68 ERA, and 19 outs; actual was 2 ER, 3.60 ERA, and 15 outs. Misiorowski was projected for 1 ER, 1.69 ERA, and 16 outs; actual was 1 ER, 2.08 ERA, and 13 outs. The away starter substantially outperformed the projected ERA/ER line, while the home starter allowed the projected ER but had a higher actual ERA and fewer outs. This is mixed starter performance, not a uniform starter miss.
Artifact integrity: The per-game structural audit passed, with no critical/error/warning findings; forecast-file integrity is explicitly called clean. No artifact defect is identified as the cause of this game’s score error. The conflicting raw-probability fields remain a provenance ambiguity that should be reconciled, but the reported published probability matches the governed value and the lineage says no unexplained material delta.
Causal issue register, reconciled entry by entry:
- High —
single_slate_calibration_instability. Evidence: weighted absolute calibration error 0.4518 across one game, affecting LAD@MIL. Recommended action: watch the same confidence buckets over a rolling window before changing calibration weights. Guardrail: a single slate is far too small to establish a stable calibration curve. This high-severity label marks material calibration risk, not a critical evidence failure. - High —
weak_run_model_signal. Evidence: home/away/total R² 0.0021/0.0309/0.0024, affecting LAD@MIL. Recommended action: treat exact scores as low-confidence; seek stronger features or a better target before tuning score tails. Guardrail: small positive R² only means better than guessing the average; it does not make exact scores reliable. - Info —
complete_slate_audit_coverage. Evidence: 1/1 games structurally audited. Action: keep the per-game audit receipt in every report. Guardrail: full coverage does not cancel findings inside audited games. - Info —
simulation_inert_on_slate. Evidence: 0 flip candidates, 0 published flips, affecting LAD@MIL. Action: measure simulation contribution over rolling slates, separating score realization from winner flipping. Guardrail: zero winner flips alone is not a defect and does not show that score reconciliation did no work. The cross-slate escalation changes the persistence diagnosis; see sections 7–8.
3. Every game
LAD@MIL — correct winner, wrong score
- Prediction: LAD 2, MIL 4; predicted winner MIL.
- Actual: LAD 1, MIL 2; actual winner MIL.
- Winner result: Hit. Correct-winner/wrong-score game.
- Published probability and edge: MIL/home probability 0.548241 (reported as 0.548); home-minus-away confidence edge 0.0965. Conviction bucket: lean. The diagnostic describes this as a system edge of about 0.10, not a half-scale distance from 50%.
- Errors: Brier 0.204086; team-run absolute error 3; total forecast 6 versus actual 3, total bias/error +3. Predicted margin was MIL by 2; actual margin was MIL by 1, signed margin error +1 in the supplied margin distribution.
- Fundamental edges: Season home-minus-away +0.003; recent −0.122; pitcher +0.0718 (rounded in the diagnostic to +0.072); composite +0.4891. Season quality adjustment was 0.0 because the quality edge was below its action threshold. Season-quality edge is separately reported as +0.108 and recent-quality edge as −0.192. These are distinct reported measures; they should not be conflated.
- Confidence and recency controls: Calibration sample size 699; empirical hit rate 0.5751. The governor was applied; governed probability 0.5482. Recency discount factor is null, and the recency guardrail was not applied. Starter-experience shrinkage was not applied (minimum starter games 27; shrink factor 1.0). The diagnosis says the confidence pipeline reached 0.548 before later publication/recency controls and that published home probability was 0.548; the probability-lineage fields have the raw-value inconsistency noted in section 1.
- Starter projections versus actuals:
- LAD starter Tarik Skubal: projected 4 ER, 5.68 ERA, 19 outs; actual 2 ER, 3.60 ERA, 15 outs. Reported ER error −2.0, ERA error −2.08 (actual minus projected). Identity match: true.
- MIL starter Jacob Misiorowski: projected 1 ER, 1.69 ERA, 16 outs; actual 1 ER, 2.08 ERA, 13 outs. Reported ER error 0.0, ERA error +0.39. Identity match: true.
- Reported worst starter ER error: 2.0 in absolute magnitude. Both sides show zero bullpen ER in the player-level breakdown. No starter line is marked missing.
- Score path and audit: Historical ML and later stage metrics are detailed in section 4. The final score is reported as unchanged from the simulation result to publication. Forecast integrity is clean; game structural audit is PASS, risk score 0, with no critical/error/warning findings and one informational finding. The audit itself does not identify a file defect as the reason for the score miss.
- Important player-level evidence and adjustments: The pitcher adjustment was applied, with away-runs factor 0.9522 and home-runs factor 1.024; Savant adjustment was applied. No score-volatility change was made (
no_change). The matchup breakdown attributes the home-side shortfall to offense; the away side is characterized as not materially breaking and closer to variance. The strongest listed contributors include Andy Pages (LAD, −1.26 runs versus projection), Brice Turang (MIL, +1.26), Andrew Vaughn (MIL, +1.11), Teoscar Hernández (LAD, +0.94), and Shohei Ohtani (LAD, +0.80). The learning analysis labels the latter four as learnable hitter deviations based on their reported season contact-quality tiers and xwOBA; it does not establish that a one-game player adjustment would improve future forecasts. The slate-level player metrics report generally weak per-hitter projections against a flat slate mean; see section 5. - Audit findings and causes: Primary and secondary driver fields are null. The supplied evidence supports a correct directional pick and an over-high run forecast, with home offense specifically identified as below projection. It does not support assigning the miss to a single starter, bullpen, or player. Causal attribution is therefore limited to the diagnosed run-environment/score error and the reported home-offense shortfall.
4. Miss reconstruction
There were no winner losses: misses 0, hits 1. There is consequently no losing pick for which to reconstruct the earliest stage that moved the predicted winner toward the wrong result. The score forecast did miss, and stage-level score metrics show where run and margin errors changed.
Score-stage quality, compared directly with the official final score:
| Stage | Team-run MAE | Change vs historical ML | Total-run MAE | Margin MAE | Change in winner accuracy |
|---|---|---|---|---|---|
historical_ml | 2.9843 | 0.0000 | 5.9685 | 0.3521 | Baseline; 1/1 |
variance_applied | 3.0000 | +0.0157 | 6.0000 | 0.0000 | 0 |
enhanced_prediction | 2.0000 | −0.9843 | 4.0000 | 0.0000 | 0 |
kpi_layer | 2.0000 | −0.9843 | 4.0000 | 0.0000 | 0 |
embedded_savant_run_environment | 1.5000 | −1.4843 | 3.0000 | 1.0000 | 0 |
fundamental_edge_target_review | 1.5000 | −1.4843 | 3.0000 | 1.0000 | 0 |
capped_target | 1.5000 | −1.4843 | 3.0000 | 1.0000 | 0 |
simulation_result | 1.5000 | −1.4843 | 3.0000 | 1.0000 | 0 |
published_final | 1.5000 | −1.4843 | 3.0000 | 1.0000 | 0 |
The transition log reports no changed-direction games and no winner-direction regressions. It does, however, show a score-metric tradeoff: historical ML → variance worsened team-run MAE by 0.0157 while margin MAE improved by 0.3521; variance → enhanced prediction improved team-run MAE by 1.0; KPI made no change; KPI → embedded run environment improved team-run MAE by 0.5 but worsened margin MAE by 1.0. Later improvements in team-run/total-run error do not erase the intermediate margin regression. The supplied per-stage table does not provide each stage’s exact predicted score, so those scores cannot be reconstructed from these MAEs alone.
Cause categories for this game:
- Bad input: No identified game-input defect in the structural audit. The upstream raw-probability field mismatch is a provenance concern, not evidence that it changed the pick or score.
- Bad weighting: The evidence does not isolate a specific weighting error for this game. The season and recent edges conflict in sign, but the winner was correct; one game cannot establish which evidence source was misweighted.
- Calibration: The one-game published bucket is poorly aligned with observed outcome, but it cannot establish a stable calibration error. Published confidence was 0.548 and the pick hit.
- Starter error: Mixed. Skubal allowed fewer ER and posted lower ERA than projected, but also worked fewer outs; Misiorowski matched projected ER, had a higher ERA, and worked fewer outs. No blown start or bullpen ER is reported.
- Offense/bullpen: The game audit calls the MIL/home lineup’s output below projection; both teams’ bullpen ER are 0 in the supplied breakdown. The lineup/run shortfall is relevant to score accuracy, not a winner loss.
- Run-environment miss: Strong immediate evidence: total was over-projected by 3, and lineups scored an average 1.5 fewer runs than projected per side. The 10-slate lineup-run-delta pattern is persistent by the supplied test (section 7), although it does not by itself identify which mean-run parameter caused this particular game.
- Irreducible variance: The away-side player breakdown is characterized as closer to variance. Player-level deviations include both favorable and unfavorable results. This remains a possible contributor, not a quantified residual attribution.
Pipeline-stage audit across all stages and transitions: All nine recorded stages and all eight transitions are accounted for above. Winner accuracy remains 1/1 at every stage; changed-direction, improved-game, and regressed-game arrays are empty. The numerical MAE deltas still matter: variance_applied slightly worsened team-run MAE; enhanced_prediction improved it; the embedded environment stage improved team-run and total-run errors but regressed margin MAE. fundamental_edge_target_review, capped_target, simulation_result, and published_final then leave those metrics unchanged. A later score-error recovery therefore does not erase the intermediate margin regression.
5. Cross-game counterfactuals
There is one game, so “helps” and “hurts” can only name that game; the supplied lever_tension entries all explicitly report no helped games and no hurt games. That is absence of counterfactual evidence, not proof of neutrality.
| Lever tension entry | Games it helps / hurts | Net evidence on changing it |
|---|---|---|
score.variance_multiplier / score.variance_floor (widen run distributions); targets Brier and calibration error | Helps: none listed. Hurts: none listed. | No slate-specific help/hurt evidence. Do not infer that widening variance fixes the +3 total-run mean bias; variance is a spread lever. |
player.pitcher.v4 form weights / player.pitcher_prior_games; targets starter ER/outs MAE | Helps: none listed. Hurts: none listed. | No counterfactual evidence. Starter outcomes were mixed; no game-based case for changing these weights. |
recent.* / season.* run-mean weighting; targets team-run MAE, total-run MAE, accuracy | Helps: none listed. Hurts: none listed. | The game’s total was over-projected, but the single game does not show whether a recent/season reweighting would correct it. Cross-slate lineup evidence supports investigating the run environment, not a broad untested reweighting. |
Tempting one-game fixes not justified: Do not raise MIL’s hitter projections solely from Turang and Vaughn’s results, lower LAD projections solely from Pages’ result, or adjust pitcher weights from these two starts. Do not change calibration weights because the one-game bucket error is large; the monitor expressly recommends rolling-window observation. Do not widen score variance as a substitute for correcting a possibly hot run mean. These changes either lack counterfactual support or risk learning from one-game noise.
6. Data and contract defects
Audit finding inventory available in the supplied diagnosis:
- Critical: 0.
- Error: 0.
- Warning: 0.
- Info: 1 in the structural audit; the exact text is not supplied. The causal register separately records two informational items: full 1/1 audit coverage and no simulation winner flip/candidate on this slate.
- Good checks: 109 in the game structural-audit summary. Structural audit status PASS, risk score 0.
- Coverage reconciliation: Coverage matrix is complete at 1/1 for expected games, games with starter comparisons, structural audits, completed structural audits, forensic deep audit, and continuous learning. This warrants calling coverage complete, not calling the slate defect-free: the calibration, run-model, stage, and persistence findings remain.
Model versus artifact defects:
- Model/process risks: Very weak holdout run-model R²; single-slate confidence bucket misalignment; forecast total too high; and a persistent simulation-inert finding described below.
- Presentation/artifact: Forecast-file integrity is explicitly clean (0 defects, 1 informational note). No structural-audit evidence attributes the score error to saved-artifact corruption.
- Probability contract/provenance: The full pick-side lineage reports raw 0.5713 → calibrated 0.5482 → governor input 0.550827 → governor output 0.5482 → score-coherence probability 0.548241 → published 0.548241. The calibration sample size is 699; the governor is marked applied;
recency_discount_factoris null andrecency_guardrail_appliedfalse. Published-minus-calibrated is +0.000041, with transformation described as publication matching the calibrated/governed value andunexplained_material_delta=false. The trace independently calls 0.550827 the raw pick probability, in conflict with lineage’s 0.5713 raw-model value. Thus, the final published value is accounted for by the recorded downstream transformation, and this is not a demonstrated material publication bypass; the upstream raw-field semantics/contract still need reconciliation.
7. Cross-slate persistence
Raw structural evidence:
- Margin distribution: One current row: predicted MIL margin 2, actual margin 1, signed margin error +1. No actual margin was at least 4; one predicted margin was at most 2. The data is too small to infer a broad margin shape from this slate alone.
- Pipeline transitions: Across the current slate, no games changed winner direction; the score-metric tradeoffs are detailed in section 4. Transition counts are one-game observations, not a persistent-stage estimate.
- Calibration monitoring: One settled game; bucket 0.50–0.55 has average confidence 0.5482, hit rate 1.0, signed calibration error −0.4518, and weighted absolute error 0.4518. This is highly unstable as a single-game estimate.
- High-raw cluster: Threshold 0.65; 0 games, 0 hits. There is no high-raw-cluster sample on this slate.
- Simulation control: One observed game; 0 flip candidates and 0 published flips; status
diagnostic_only_without_independent_support, priority P2. - Run-model validation: 2,415 rows, schema
historical_game_temporal_v11, trained 2026-09-27; holdout R² 0.002143 home / 0.030936 away / 0.002415 total; walk-forward accuracy 0.570149, Brier 0.242204; validation winner accuracy 0.600414, Brier 0.239378. The near-zero run-target signal is a model-development concern, not something a one-game score fix resolves. - Cross-slate lineup bias: The actionable finding reports lineup actual-minus-projected runs mean −0.751, same sign on 7/10 slates, standard deviation 1.116, z = −2.13; direction is negative (lineups scored below projection). Its recommendation is to inspect the run environment before touching variance, and to treat
score.variance_flooronly as a spread lever. Starter ERA error is negative on 6/10 slates, mean −0.345, z = −0.83, and is explicitly on hold as not separable from noise. The current slate’s mean lineup delta is −1.5 across two sides and mean starter ERA error −0.84. - Cross-slate metric trends:
margin_biasimproving (mean −1.0);mean_team_run_error_on_lossesimproving (mean 2.5);weighted_calibration_errorflat (mean 0.4528);winner_accuracyimproving (mean 0.8056). “Improving” is the recorded direction, not a claim that all metrics are already good. - Top-confidence-pick loss streak: 0. Recorded per-slate outcomes include hits on 20261001, 20261003, 20261004, 20261006, 20261008, 20261010, and 20261011; misses on 20261005 and 20261007; and two unknown-date/unknown-result entries. The current top pick was a hit.
Every finding_streaks entry:
| Finding | Consecutive-slate count | Present now? | Context |
|---|---|---|---|
pipeline_winner_instability | 0 | No | Incidence 1 in an 11-slate window; no target lever. |
score_margin_compression | 0 | No | Incidence 2; target levers score.variance_multiplier, score.variance_floor. |
simulation_inert_on_slate | 11 | Yes | Incidence 11/11; targets simulation.allow_score; target metrics team-run and total-run MAE. |
single_slate_calibration_instability | 2 | Yes | Incidence 9; targets confidence.empirical_max_weight, confidence.base_cap, confidence.moderate_cap. |
weak_run_model_signal | 2 | Yes | Incidence 9; targets training XGBoost estimator count, depth, and learning rate; this finding is marked not parameter-actionable. |
Escalated finding—established failure, not single-slate noise: simulation_inert_on_slate is explicitly escalated at 11 consecutive slates. Treat it as an established simulation/process failure pattern. The self-assessment gives a concrete suspected mechanism: the same draws are used both to search for a target-realizing play-by-play and to form the win-probability distribution, with early exit after finding a realization (default draw count around 2). It says this can make the win-rate/agreement signal vacuous. That is a supplied diagnosis, not an independently verified code execution result. The specified action is to confirm the module runs rather than silently no-oping, then separate target-score realization from an independent, unsteered win-probability batch (or a closed-form distribution), and feed a meaningful win-rate to the final policy.
8. Adjustments for today
Recommendations are ranked by evidence strength, persistence, scope, expected metric, affected games, and regression risk. These are proposed changes or shadow tests only; no changes have been applied.
- Persistent, escalated simulation failure — code/diagnostic action, not a forced parameter move.
- Registered target:
simulation.allow_score; target metricsteam_run_mae,total_run_mae. - Bounded action: Do not change the parameter based on this record: the finding is marked
param_actionable=false, and the self-assessment specifically calls for an operator/code fix. In shadow, instrument whether the simulation is actually invoked, its draw count, early-exit reason, and whether an independent unsteered distribution is produced. Implement the stated separation of score-target realization and win-probability estimation, with batch size registered; compare a bounded 200–500 independent draws against a closed-form alternative as an isolated diagnostic. - Expected metric/direction: Establish that simulation contributes non-vacuous distribution information; then measure team-run and total-run MAE and winner-probability agreement across rolling slates. No numerical improvement is promised from this one slate.
- Lever-tension games: None recorded as helped or hurt. Current relevant game, LAD@MIL, had no winner flip; its eventual score error does not prove the simulation caused it.
- Risk: Moderate code/integration risk; shadow comparison and a rollback monitor are preferable to changing live behavior blindly.
- Persistent lineup/run-environment overprojection — bounded shadow test, not a variance fix.
- Evidence: The actionable cross-slate bias is negative on 7/10 slates, mean −0.751, z −2.13; current game’s total was over-projected by 3 and the two-side lineup delta averaged −1.5.
- Registered lever:
recent.* / season.* run-mean weightingis the available lever-tension entry targeting team-run MAE, total-run MAE, and accuracy. A small 2% reduction in the run-mean contribution of the currently over-projecting component, evaluated in shadow only, is a bounded test—not a claim that the JSON identifies which component is at fault. Do not usescore.variance_floorto lower the mean: the bias register explicitly calls that a spread lever and says to check the run environment first. - Expected metric/direction: Team-run MAE and total-run MAE should decline if the run-mean overprojection is genuine; monitor winner accuracy as a guardrail.
- Lever-tension games: The entry lists no helped or hurt games. LAD@MIL is consistent with the overprojection symptom, but is not a counterfactual. Regression risk is uncertain because the register supplies no game-level tension sample.
- Gate: Require rolling, same-slate shadow comparison and rollback if winner accuracy worsens or run-error improvement fails to repeat.
- Single-slate calibration anomaly — hold calibration parameters today.
- Registered targets:
confidence.empirical_max_weight,confidence.base_cap,confidence.moderate_cap. - Evidence and metric: Current weighted absolute calibration error 0.4518 on one settled game; cross-slate weighted calibration trend is flat, mean 0.4528. The finding has a two-slate consecutive streak, but the current bucket still has only one observation.
- Recommendation: No live cap/weight change from this evidence. Record bucket-level sample counts and evaluate those exact registered parameters in a rolling shadow test; the current causal issue itself recommends waiting for the rolling bucket window.
- Expected metric/direction: Brier score and calibration error should improve if a change is supported by adequate rolling data; guard against degraded winner accuracy.
- Lever-tension games: None of the listed lever-tension entries concerns calibration caps, and none names helped/hurt games. LAD@MIL was a hit at 0.548, so it is not a calibration-loss example.
- Weak run-model signal — prioritize feature/target work over nightly tuning.
- Registered targets:
training.xgb.n_estimators,training.xgb.max_depth,training.xgb.learning_rate, but the finding is markedparam_actionable=false. - Recommendation: No bounded hyperparameter move. Follow the supplied operator action: improve features/target (including properly source-labelled market data when available, park/weather run environment, bullpen rest/fatigue, and platoon-adjusted lineup quality), then run an isolated same-fingerprint training backtest and bump the model schema version if feature semantics change.
- Expected metric/direction: Improve holdout run-target R² and team-/total-run MAE in a controlled backtest. Current R² is near zero; a one-slate parameter change is not a sound remedy.
- Lever-tension games: The current
recent.* / season.*tension row lists none helped or hurt. LAD@MIL’s score error is one example, not proof that any of the training parameters will fix it. - Risk: Feature-contract and retraining changes have broader scope; require isolated validation before promotion.
- No starter-weight change.
- Starter ERA bias is explicitly on hold: 6/10 same sign, z −0.83, not separable from noise. The starter lever-tension entry lists no helped/hurt games. LAD@MIL’s starter outcomes were mixed. Preserve this as a diagnostic watch item rather than forcing a pitcher-weight adjustment.
9. Bottom line
Known: the only reviewed game, LAD@MIL, was a correct MIL winner call but a wrong score forecast (2–4 predicted versus 1–2 actual). The published probability was about 54.8%, with a 0.0965 home-minus-away edge; the pick hit. The total was over-projected by 3. Starter evidence is mixed, the per-game structural audit passed, and no artifact defect is identified as the cause.
Persistent evidence is more actionable than the one-game result: the run model has near-zero holdout R², lineup runs have been below projection on 7/10 slates, and the simulation-inert finding has persisted 11 consecutive slates and is escalated. Calibration error is flat across the reported trend window, but this game’s calibration bucket contains only one outcome. The upstream raw-probability fields conflict, even though the final published value matches the governed value and no material publication bypass is recorded.
Uncertain: which run-mean component caused this particular overprojection; whether any specific hitter, pitcher, or calibration adjustment would improve future slates; and whether the diagnosed simulation mechanism is the live code path without operator verification.
Safest next action for the very next slate: instrument and shadow-audit the simulation’s independent probability-distribution path—confirm it runs, record draw count and early-exit behavior, and do not change live confidence or variance parameters on this one-game result.