# Luna deep analysis — slate 20261010 > 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 were marked `loaded`:** 1. **prediction review** — `/app/output/reports/prediction_review_20261010.json`, 11,425 bytes; official outcomes and scoring errors. 2. **forensic deep audit** — `/app/output/reports/PREDICTION_SYSTEM_DEEP_AUDIT_20261010.json`, 30,956 bytes; probability, provenance, starter, and decision contracts. 3. **continuous learning** — `/app/output/learning/continuous_learning_daily_20261010.json`, 185,336 bytes; pipeline-stage quality, calibration, probability lineage, score distribution, and official starter comparisons. 4. **detailed report** — `/app/output/reports/detailed_20261010.html`, 33,426 bytes; full game and simulation rendering. 5. **ultra detailed player audit** — `/app/output/reports/20261010_ultra_detailed_player_audit.html`, 1,811,791 bytes; player-level prediction trace. 6. **structural audit** — `/app/output/reports/audit_report_20261010.html`, 128,231 bytes; invariant findings. 7. **integrity revision audit** — `/app/output/reports/audit_report_20261010_integrity_revision.html`, 365,249 bytes; structural audit of three post-start revision artifacts. **Slate coverage:** one game was expected, reviewed, structurally audited, included in continuous learning, and given a starter comparison: each corresponding `coverage_matrix` count is 1/1. The sole game, **CHW@CLE**, was a hit on the winner, not a loss. Full coverage does not remove the game-level run-score and model-quality concerns. **Gaps and internal inconsistencies:** - The pick-side probability lineage has a provenance ambiguity: `probability_lineage.raw_model_pick_probability` is **0.5627**, while `model_trace.confidence_path.raw_pick_probability` is **0.53629**, the same value as the lineage’s `governor_input_probability`. The supplied record does not explain why those fields differ or whether they represent different stages. This is an evidence/contract ambiguity, not proof that the published pick was wrong. - The lineage reports `recency_guardrail_applied: true`, but `recency_discount_factor` is `null` and `recency_reason` is `null`. The transformation is named (“score coherence followed by matchup-recency guardrail”), but its numerical effect is not fully documented. - The structural-audit summary reports **one informational finding**, but the finding’s actual text is not included. Separately, the game diagnostics say the forecast file was clean with **0 defects and 1 informational note**; the note’s content is also absent. - The starter comparison is available in `starter_lines`, but the per-player feed explicitly lacks Sean Burke’s line. That is a feed-level gap, not absence of the official comparison: Burke’s projected and actual starter figures are present elsewhere in the diagnosis. - Market cross-check is unavailable because there was no source-labelled moneyline. No actual player results beyond those explicitly listed below are inferred. ## 2. Executive diagnosis | Dimension | Diagnosis | |---|---| | **Winner accuracy** | **1/1 (100%)**, but this is one game. CLE was predicted and won. The cross-slate report gives a historical walk-forward winner accuracy of **0.570149**; this slate alone does not establish improvement. | | **Calibration quality** | The only published pick had probability **0.526845** and hit, producing Brier **0.223876**. On this one observation, confidence was below the observed hit rate (1.0), hence the bucket’s reported **underconfidence**, not overconfidence. The bucket has only one settled game; its absolute calibration error of **0.4732** is therefore not a stable calibration estimate. Cross-slate weighted calibration error is explicitly **regressing**, so it warrants monitoring and shadow testing, not a conclusion that this particular hit was overconfident. | | **Score accuracy** | Poor: predicted **CHW 5, CLE 6** versus actual **CHW 0, CLE 2**. Team-run absolute error sums to **9**; total runs were overprojected by **9** (11 predicted vs 2 actual). The winner being right does not make this a good score prediction. | | **Starter accuracy** | Both starters were projected to allow more earned runs than they did; both also recorded more outs than projected. Burke’s projected-to-actual ER gap was **5 to 2**; Williams’s was **1 to 0**. This supports a starter/run-model miss on this game, but one game cannot establish a starter bias. | | **Artifact integrity** | The structural audit **passed**, with 0 critical, 0 error, 0 warning, and 1 info finding; the game diagnostics report forecast-file integrity clean (0 defects, 1 informational note). No evidence says an artifact defect caused this game’s result. The probability-field mismatch and missing explanation of recency are separate traceability concerns, not recorded structural-audit failures. | **Causal issue register reconciliation:** - **`single_slate_calibration_instability` — high, calibration; CHW@CLE.** Evidence: weighted absolute calibration error **0.4732 across 1 game**. Recommended action: watch the same buckets over the full rolling window before changing calibration weights. Guardrail: a single slate is far too small to establish a stable calibration curve. The hit’s one-game bucket is underconfident by the stated confidence-minus-hit-rate definition; it does not justify a blanket claim of overconfidence. - **`weak_run_model_signal` — high, model validation; CHW@CLE.** Evidence: holdout home/away/total R² **0.0021 / 0.0309 / 0.0024**. Recommended action: treat exact run scores as low-confidence and seek stronger features or a better target before tuning score tails. Guardrail: positive R² only means beating an average-guess baseline; it does not make exact scores reliable. - **`complete_slate_audit_coverage` — info, coverage; CHW@CLE.** Evidence: **1/1** games structurally audited. Action: retain per-game audit receipts. Guardrail: full coverage does not cancel findings within audited games. - **`simulation_inert_on_slate` — info in this slate’s register; simulation; CHW@CLE.** Evidence: **0 flip candidates, 0 published flips**. Action in the register: measure simulation contribution across rolling slates, separating score realization from winner flipping. Guardrail: zero flips alone is not a defect and does not mean no score reconciliation occurred. However, the cross-slate evidence separately escalates this as an **11-slate established failure pattern**; that persistence is addressed below and should not be dismissed as single-slate noise. No causal issue in the register identifies a winner miss: there was none. The material observed failure is the run-score miss, with very weak historical run-model validation signal. ## 3. Every game ### CHW@CLE — hit on winner, wrong score - **Prediction / result:** predicted CHW **5**, CLE **6**, winner CLE; actual CHW **0**, CLE **2**, winner CLE. This is explicitly **correct winner / wrong score** (`win_quality: right_winner_wrong_score`). - **Published probability / edge / conviction:** published pick-side probability **0.526845** for home CLE; home-minus-away confidence edge **0.0537** (rounded). Conviction bucket: **lean**. The diagnostic also calls this a published system edge of approximately **0.05 (lean)**, not a half-scale distance from 50%. It is not a high-conviction pick. - **Accuracy measures:** Brier **0.223876**; team-run absolute error **9**; total-run bias **+9** (predicted total 11, actual total 2). Predicted margin was **1** run and actual margin **2**, so margin error was **1** run; the signed margin error in the distribution record is **−1** under that record’s convention. - **Starter projections versus actual:** - **CHW, Sean Burke:** projected **5 ER, 10.38 ERA, 13 outs**; actual **2 ER, 3.60 ERA, 15 outs**. ER error (actual minus projected) **−3**; ERA error **−6.78**. Identity matched. The settled per-player feed lacks Burke’s line, while the starter comparison itself is present. - **CLE, Gavin Williams:** projected **1 ER, 1.93 ERA, 14 outs**; actual **0 ER, 0.00 ERA, 17 outs**. ER error **−1**; ERA error **−1.93**. Identity matched; 34 prior appearances in the feed. - Thus both starters allowed fewer ER and worked more outs than projected. Burke is the largest starter ER miss by absolute ER difference (3). - **Pregame edges:** season home-minus-away **−0.1605** (diagnostic rounded to −0.161); recent **−0.030**; pitcher **+0.0225** (rounded +0.022); composite **+0.1337** (rounded +0.134). The season quality edge was **−0.2685**, below the action threshold; recent quality edge was **+0.04**; no season margin adjustment was applied. - **Confidence and recency controls:** calibration sample size **739**; empirical hit rate **0.5683**; governed probability **0.5372**. Starter-experience adjustment was not applied (minimum 34 games, shrink factor 1.0). A recency guardrail was marked applied, but discount factor and reason are null. - **Score path:** historical-ML stage had team-run MAE **3.4711**, total-run MAE **6.9422**, margin MAE **1.2224**. Variance-applied stage slightly worsened team-run MAE to **3.5** (+0.0289 vs historical ML), while margin MAE improved to **1.0**. At enhanced prediction, team-run MAE worsened to **4.5** (+1.0289 vs historical ML) and total-run MAE was **9.0**. KPI, embedded Savant run environment, fundamental-edge review, capped target, simulation result, and published final retained those aggregate errors. All stages still had the winner correct. The stage table does not provide every intermediate predicted score, so exact score changes between stages cannot be reconstructed. - **Player-level evidence:** CLE’s lineup scored **4 fewer runs than projected**; CHW’s player-level lineup run delta is reported as 0. The listed CLE top contributors include Petey Halpin, **2-for-3, 0 HR, 0 RBI**, run impact vs projection **+1.56**; Nathaniel Lowe, **0-for-3**, impact **−1.4**; Patrick Bailey, **0-for-3**, impact **−0.8**. Other listed deviations include Steven Kwan (−0.47), Brayan Rocchio (−0.47), José Ramírez (+0.33), Chase DeLauter (−0.33), Travis Bazzana (−0.33), and Jo Adell (−0.31). The audit says **0 of 3** material player deviations were backed by the hitter’s own season contact quality; it therefore treats them as variance, not a basis for player-specific tuning. - **Other audit findings:** structural audit PASS, risk score 0; 109 good, 1 informational, no critical/error/warning. No structural defect is recorded as the cause. The player-audit slate totals overprojected AB by 17%, H by 33%, BB by 100%, SO by 14%, RBI by 150%, R by 200%, and HR by 100%; 2B was underprojected by 50%. For AB, H, BB, SO, RBI, and R, flat slate-mean projections had lower MAE than individual projections on this nine-hitter sample; HR and 2B were exceptions. These are one-game player-sample diagnostics, not grounds to infer player-level rules. - **Causes:** primary and secondary driver fields are null. Evidence supports a **run-environment / scoring overprojection**, with both starter projections also too pessimistic about runs allowed. The CLE lineup shortfall is specifically identified as an offense miss. For CHW, the player-feed verdict says neither side broke materially and calls the result closer to variance. No winner error occurred. ## 4. Miss reconstruction **There are no game losses to reconstruct**: `misses: 0`, `loss_primary_drivers: {}`, and CLE was the correct predicted winner. There is therefore no earliest stage at which evidence moved the pick toward a wrong result. The score miss can still be traced, without misclassifying it as a winner miss: - The score began materially too high: final prediction **5–6** against **0–2**. Both starter ER projections were also high relative to actual, and CLE’s lineup scored four fewer runs than projected. - Variance application made team-run MAE slightly worse; enhanced prediction then increased it by a further **1.0** relative to variance-applied. Later score stages did not recover that error. This is a run-error regression, not a winner-direction regression. - The reported pitcher factors (`away_runs_factor 0.9676`, `home_runs_factor 0.9901`) were applied, but the available record does not show a counterfactual score proving what the result would have been without them. - Distinguish the mechanisms: there is no bad-winner input or pick-direction failure shown; the starters were overprojected in earned runs; CLE offense fell short of its projection; the whole slate’s run environment was too high in this game; calibration is weakly measured here; and one-game player deviations include variance. The near-zero holdout run R² indicates a model-validation weakness, not a proven single cause of this game’s error. **Pipeline stage quality across all stages and transitions:** | Stage | Team-run MAE | Total-run MAE | Margin MAE | Winner | |---|---:|---:|---:|---:| | historical_ml | 3.4711 | 6.9422 | 1.2224 | 1/1 | | variance_applied | 3.5 | 7.0 | 1.0 | 1/1 | | enhanced_prediction | 4.5 | 9.0 | 1.0 | 1/1 | | kpi_layer | 4.5 | 9.0 | 1.0 | 1/1 | | embedded_savant_run_environment | 4.5 | 9.0 | 1.0 | 1/1 | | fundamental_edge_target_review | 4.5 | 9.0 | 1.0 | 1/1 | | capped_target | 4.5 | 9.0 | 1.0 | 1/1 | | simulation_result | 4.5 | 9.0 | 1.0 | 1/1 | | published_final | 4.5 | 9.0 | 1.0 | 1/1 | All eight transitions are reported: historical ML→variance applied, variance applied→enhanced, enhanced→KPI, KPI→embedded Savant, embedded Savant→fundamental review, fundamental review→capped target, capped target→simulation, and simulation→published final. **No transition changed winner direction**; all have winner-hit delta 0 and no direction-change games. The historical-ML→variance transition raised team-run MAE by **0.0289** while improving margin MAE by **0.2224**. Variance→enhanced raised team-run MAE by **1.0** with no margin change. Every later transition had zero measured score-metric change. The eventual correct winner does not erase the intermediate team-run regression. A home-away confidence edge of **0.12**, if encountered, is moderate—not a near coin flip. This game’s edge was **0.0537**, in the lean bucket. ## 5. Cross-game counterfactuals There is only one game, so no genuine across-game counterfactual can be measured. For **every `lever_tension` entry**: 1. **`score.variance_multiplier / score.variance_floor` (widen run distributions)** — helps: **none listed**; hurts: **none listed**; net evidence: **0 helped / 0 hurt**. No game-specific evidence supports changing it from this entry. It targets Brier/calibration in the tension record, while score variance would not by itself correct a biased run mean. 2. **`player.pitcher.v4` form weights / `player.pitcher_prior_games`** — helps: CHW@CLE, noted as a hit with starter ER off by 3; hurts: none listed. This is a one-game directional lead, not adequate evidence for changing pitcher weights. 3. **`recent.* / season.*` run-mean weighting** — helps: CHW@CLE, noted as a hit with team runs off by 9; hurts: none listed. A lower run mean might address the direction of this score error, but the lone game cannot identify which weighting caused it or establish net benefit. **Tempting one-game fixes to avoid:** do not tune starter weights solely to Burke’s or Williams’s lower-than-projected ER; do not lower CLE’s run mean solely because the lineup underperformed; do not fit the player model to the listed individual deviations; do not widen score variance as if it necessarily fixes an overhigh mean; and do not lower confidence caps on the claim that this hit was overconfident. These moves are unsupported by the one-game result and can damage other slates or metrics. ## 6. Data and contract defects **Audit findings by severity:** - **Critical:** 0. - **Error:** 0. - **Warning:** 0. - **Info:** 1 in the structural-audit summary (also 1 informational note in forecast-file integrity). The actual text is not supplied. The causal register separately contains two informational observations: full audit coverage and zero simulation winner flips. Neither is a structural defect finding. **Coverage reconciliation:** expected, reviewed, structurally audited, continuously learned, starter-compared, and deep-audited counts are all **1/1**; one canonical artifact set was loaded. Coverage is complete, but it does not make the run prediction accurate or erase within-game findings. **Prediction-model defects versus presentation/artifact issues:** - **Model/process risks:** the run-model holdout R² is near zero; the published exact score was badly high; the enhanced-prediction transition worsened team-run MAE; cross-slate calibration error is trending worse; and the simulation’s zero-flip behavior is an escalated persistent diagnostic/code risk. - **No demonstrated artifact-caused miss:** the game says forecast-file integrity is clean and structural audit passes. - **Traceability/contract ambiguity:** probability fields and recency metadata are not fully reconcilable, as described below. This should be checked even though the audit reports no critical/error finding. **Pick-side probability lineage, as supplied:** 1. **Raw model:** lineage says **0.5627**; model trace instead calls **0.53629** the raw pick probability. The conflict is unresolved. 2. **Calibrated:** **0.5372**, calibration sample size 739, empirical hit rate 0.5683. 3. **Governor:** input **0.53629**, output **0.5372**. 4. **Score coherence:** **0.537156**. 5. **Published:** **0.526845**; published-minus-calibrated **−0.010355**. The record attributes this to score coherence followed by a matchup-recency guardrail and says `unexplained_material_delta: false`. The sequence includes recorded transformations and therefore does **not** establish an unrecorded material bypass. But the raw-probability mismatch, null recency factor/reason, and stated delta do prevent a fully reproducible arithmetic trace from the supplied evidence. The publication change is documented by name but not numerically attributable to each step. Record these as a traceability gap, not as a proven forecast-file defect. ## 7. Cross-slate persistence **Structural evidence:** - **Margin distribution:** the sole game had actual margin **2** and predicted margin **1**; there were **0** actual margins ≥4 and **1** predicted margin ≤2. This one-game sample is consistent with a small predicted margin, not evidence by itself of a stable margin pattern. - **Pipeline transitions:** the only nonzero run regressions were the small historical→variance increase (+0.0289 team-run MAE) and the larger variance→enhanced increase (+1.0). All subsequent transitions were flat; winner direction never changed. - **Calibration monitoring:** one settled game; confidence bucket average **0.5268**, observed hit rate **1.0**, signed bucket error **−0.4732** under the stated confidence-minus-hit-rate definition, labeled underconfident; weighted absolute error **0.4732**. This is a one-observation bucket. Cross-slate weighted calibration error is independently marked regressing. - **High-raw cluster:** threshold **0.65**; **0 games, 0 hits**, no high-raw rows. - **Simulation control:** 1 observed game, 0 candidates, 0 published flips; status diagnostic-only without independent support. The cross-slate 11-slate streak makes the inertness actionable, despite this slate’s small sample. - **Cross-slate bias:** neither `starter_era_error` nor `lineup_run_delta` is marked persistent. Starter ERA error: 5/9 slates same sign, mean −0.169, SE 0.42, z −0.4. Lineup run delta: 6/9 same sign, mean −0.612, SE 0.36, z −1.69. Both are explicitly held as not separable from noise; do not tune those levers based on these summaries alone. **Every `finding_streaks` entry:** | Finding | Consecutive slates | Present now? | Interpretation | |---|---:|---|---| | `pipeline_winner_instability` | 0 | No | 2 incidences in the 11-slate window; no current consecutive streak. | | `score_margin_compression` | 0 | No | 3 incidences in window; target levers are `score.variance_multiplier` and `score.variance_floor`, but not present now. | | `simulation_inert_on_slate` | 11 | Yes | Present on all 11 consecutive slates; escalated established failure. | | `single_slate_calibration_instability` | 1 | Yes | 9 incidences in window; current, but only one consecutive slate. | | `weak_run_model_signal` | 1 | Yes | 9 incidences in window; current, but only one consecutive slate. | **Escalated finding:** `simulation_inert_on_slate` has **11 consecutive slates** and is explicitly escalated. Target lever listed: `simulation.allow_score`; target metrics: team-run MAE and total-run MAE. The finding says it is **not parameter-actionable** and directs a code/diagnostic action: confirm the simulation is running rather than silently no-oping. Its root-cause evidence in the self-assessment is that the same target-search draws are used to construct a win-probability distribution, with early exit after finding a target-realizing sequence; a default draw count around 2 makes the resulting win rate uninformative. The diagnosis proposes separating target-realization search from an independent, unsteered probability batch. Treat this as an established process failure, not single-slate noise. **Every `metric_trends` direction:** - **Margin bias — improving**, mean −1.4167. - **Mean team-run error on losses — improving**, mean 2.375. - **Weighted calibration error — regressing**, mean 0.4283. - **Winner accuracy — improving**, mean 0.7778. These trend labels are not a claim that each metric is well measured on every slate; the series includes nulls and small samples. **Top-confidence-pick record:** loss streak **0**. Listed results include hits on 2026-09-30, 2026-10-01, 2026-10-03, 2026-10-04, 2026-10-06, 2026-10-08, and 2026-10-10; misses on 2026-10-05 and 2026-10-07; and two unknown-result entries with blank dates. Thus the current top pick was a hit, with no active loss streak. ## 8. Adjustments for today Ranked by persistence and scope: 1. **Escalated 11-slate simulation inertness — code/diagnostic action, not a forced parameter move.** - **Registered target:** `simulation.allow_score`; the finding explicitly marks the issue not parameter-actionable. - **Action:** inspect and instrument the simulation control path; separate target-realization search from an independent, unsteered win-probability batch that does not early-exit, and expose/log the registered draw count. This is the specific code/diagnostic direction named in the self-assessment; it is not an instruction to promote a change. - **Expected metrics:** obtain a non-vacuous simulation contribution measure and evaluate team-run MAE / total-run MAE and winner probability effects across slates. Direction of a metric change cannot be guaranteed before that independent comparison. - **Lever-tension games:** none listed as helped or hurt for the simulation lever. No one-game counterfactual is available. - **Risk:** low risk to prediction parameters if limited to diagnosis/shadow evaluation; implementation risk exists because simulation wiring is involved. This ranks first because the 11-slate persistence is explicit. 2. **Single-slate strongest driver: high run-score overprojection / weak run signal — operator feature-and-validation action, not nightly weight tuning.** - **Registered targets in the finding:** `training.xgb.n_estimators`, `training.xgb.max_depth`, and `training.xgb.learning_rate`, but the finding marks parameter actionability false. The diagnosis says nightly variance/confidence tuning cannot fix near-zero run signal. - **Action:** follow the registered code/diagnostic recommendation: develop stronger run features (the self-assessment names source-labelled no-vig market probability when available, park/weather, bullpen rest/fatigue, and platoon-adjusted lineup quality), then retrain and compare an isolated same-fingerprint holdout backtest. Do not invent an unlisted exact parameter value or treat this slate’s 9-run error as sufficient tuning evidence. - **Expected metrics:** seek improved holdout home-, away-, and total-run R² and lower team-run/total-run MAE; current R² values are **0.002143 / 0.030936 / 0.002415**. Improvement is a test objective, not a guaranteed outcome. - **Lever-tension games:** the one listed run-mean tension entry identifies CHW@CLE as a possible beneficiary; no hurt game is listed. This is not enough to establish that any particular feature or weighting would have fixed this game. - **Risk:** broader model and data-contract scope; mitigate through isolated backtesting and schema-version control as recommended in the evidence. 3. **Calibration: monitor and run a bounded shadow comparison; do not blindly lower caps.** - The current one-game calibration observation is underconfident by the supplied definition, whereas the cross-slate weighted-error trend is regressing and the self-assessment recommends lower caps. Those signals do not identify the same direction of correction. - The registered levers are `confidence.empirical_max_weight`, `confidence.base_cap`, and `confidence.moderate_cap`; the self-assessment additionally lists `score.variance_multiplier` and `score.variance_floor`. Given the one-hit bucket and lack of directionally consistent evidence, there is **no defensible parameter direction or magnitude to prescribe today** from this evidence. The causal register’s action—monitor the same buckets over a rolling window—remains appropriate. In particular, lowering caps on the assertion that this game was overconfident would contradict the observed one-game bucket. - **Lever-tension games:** the variance entry lists no helps and no hurts; no cross-game calibration counterfactual exists. Any shadow comparison should log Brier and calibration error by confidence bucket and use the rollback monitor rather than treating this slate as proof. No change to pitcher weights or season/recent run means is recommended today: their one-game tension evidence has no cross-game harms listed, but neither does it establish net benefit. This abstention reflects insufficient directionally reliable evidence for those moves, not a claim that the high run score was acceptable. ## 9. Bottom line Known: CLE was correctly selected at published probability **0.526845**, but the score prediction was badly high—**11 predicted runs versus 2 actual**, with team-run error **9**. The structural audit passed, and no artifact defect is identified as the cause. The supplied probability trace nevertheless has a raw-probability field mismatch and incomplete recency metadata. Run-model holdout R² is near zero; the simulation-inertness finding has persisted for **11 consecutive slates** and is escalated. Uncertain: whether this game’s run miss reflects a repeatable mean bias, a starter-model issue, lineup variance, or some combination; whether the apparent calibration trend can be corrected by any particular confidence weight; and how much an independently sampled simulation would change published probabilities. **Safest next action for the very next slate:** instrument and verify the simulation path in a non-promoted shadow/diagnostic run, separating its score-realization search from an independent win-probability sample. This directly addresses the strongest persistent, actionable process failure without making a one-game parameter adjustment.