# Week 8 postgame review — original pregame forecasts, not refits

**Scope:** all 56 completed regular-season 2026 Week 8 FBS-involving games, including all 44 Saturday October 24 games by America/Chicago date. Finals use the retained CFBD capture acquired October 25 at 13:46:58 UTC. This analysis wrote only its own private output directory; it did not modify forecasts, results, ledgers, models, journals or production.

## Main findings

- The primary EPA-OLS margin forecast selected the outright winner in **32/56 games (57.1%)**. Its mean absolute home-margin error was **11.762 points**, compared with **10.683 points** for the same games’ saved market-implied margins. That market comparison uses the card’s captured median quote, not a verified closing price.
- The valid `last_pregame` ATS record is **19–19, no pushes**, over 38 explicitly qualifying selections. The remaining **18 are recorded below-threshold abstentions**, not missing forecasts. Saturday alone was **16–14**, with 14 abstentions. Every one of the 56 games has a saved pregame primary margin.
- The existing ledger already contains exactly those **38 Week 8 selections and their original lines/outcomes**. No eligible pick is missing. The apparently pending Marshall–South Alabama item is a post-kickoff current-card artifact, not a valid new bet to grade.
- First-frozen and last-pregame primary margins are **identical on all 56 games**. Their different ATS records—first **20–17**, last **19–19**—come from selection/line cohorts, not a better or worse margin model.
- The original pregame display-only StackedEnsemble selected **36/56 winners (64.3%)**, with Brier **0.23664** and log loss **0.66943**. This is a probability forecast, not a point margin, score model, ATS system or established profitability edge.
- Larger saved model–market disagreements (absolute edge 7–14 points) went **5–8 ATS** and had **16.12-point MAE**. The 3–7-point group went **14–11 ATS**, MAE **10.51**. These are small, descriptive subsets; do not choose a new threshold from this week.

## Keep the measures separate

| Cohort/model | Games | Winner accuracy | Margin MAE | ATS selections |
| --- | --- | --- | --- | --- |
| Primary EPA-OLS, full week, last pregame | 56 | 32/56 (57.1%) | 11.762 | 19–19–0 / 38 |
| Primary EPA-OLS, Saturday, last pregame | 44 | 26/44 (59.1%) | 11.713 | 16–14–0 / 30 |
| Primary first frozen card | 56 | 32/56 (57.1%) | 11.762 | 20–17–0 / 37 |
| Saved market-implied home margin | 56 | 34/56 (60.7%) | 10.683 | Not a model bet cohort |
| Original display StackedEnsemble | 56 | 36/56 (64.3%) | Unavailable: probabilities only | Unavailable: no margin/cover forecast |

Primary RMSE is **14.391 points**. Signed home-margin residual is **forecast minus actual**; mean bias is **−0.706 points**. A mean near zero does not offset the large individual misses and does not establish a stable home/away bias. The ensemble’s four additional winner calls are descriptive on only 56 paired games; no significance, calibration or promotion claim follows.

### Hypothetical betting arithmetic, not personal results

At a uniform **−110**, staking **one unit at risk per qualifying selection**, each win profits 100/110 units and each loss loses one unit. The full-week 19–19 record is **−1.727 units, −4.55% ROI** over 38 risked units; Saturday 16–14 is **+0.545 units, +1.82% ROI** over 30 units. The first-frozen 20–17 cohort would be **+1.182 units** over 37 units, but is a different cohort. These are uniform hypothetical prices and stakes. Saved spread points are not verified sportsbook prices, actual placement or personal returns; no personal P&L was calculated.

## Most important record-quality reconciliation

**Marshall–South Alabama, ID 401871092:** actual kickoff was October 20 at 23:30 UTC. The last eligible card was generated October 20 at 11:10:54 UTC. It forecast Marshall’s home margin at −5.00 with home spread +3.00, edge −2.00, and explicitly said `below_threshold`. South Alabama −1.5 first appears as a pick in the October 21 card, after the game. It must not enter the historical ledger.

**Air Force at Wyoming, ID 401864525:** the reverse presentation problem exists. The eligible pregame Air Force −5.25 selection is already settled as a loss. The current October 24 card instead shows a below-threshold abstention at Wyoming +7 after that game. Counting only current-card picks therefore hides one real historical selection while adding the ineligible Marshall row. The actual ledger contains **38 Week 8 rows, not 37**, and matches the validated archive-selected IDs, lines and outcomes exactly. Its settled overall 223 rows remain 111–110–2 before prospective Week9 entries.

An automated “grade every current-card pick” operation would corrupt this history. The maintained archive-first settlement rule is the correct record authority; the current-card pending/abstention display needs an eligibility-aware interpretation.

## First frozen versus last pregame: paired comparison

Of the selections, **34 are common** to both policies, and they went **18–16 under both saved lines**. No ATS result flipped among these common picks. The first-only selections were Miami (loss), FAU (win) and Old Dominion (win); the last-only selections were South Carolina (loss), Troy (loss), Nevada (loss) and Texas State (win). The first card’s point forecasts did not change at all; membership and captured lines explain the different records.

## Biggest margin misses

| Game (away at home) | Final away–home | Predicted home margin | Actual home margin | Absolute error | Saved ATS result |
| --- | --- | --- | --- | --- | --- |
| Hawai'i at Northern Illinois | 56–21 | +6.01 | -35.00 | 41.01 | loss |
| West Virginia at TCU | 24–20 | +22.57 | -4.00 | 26.57 | loss |
| Colorado at Oklahoma State | 24–57 | +6.48 | +33.00 | 26.52 | loss |
| Boston College at Georgia Tech | 49–27 | +1.88 | -22.00 | 23.88 | win |
| California at SMU | 20–59 | +15.54 | +39.00 | 23.46 | No pick |
| Air Force at Wyoming | 14–28 | -9.31 | +14.00 | 23.31 | loss |
| UL Monroe at Troy | 21–14 | +15.85 | -7.00 | 22.85 | loss |
| UTSA at Tulane | 42–19 | -0.73 | -23.00 | 22.27 | No pick |
| Louisiana at Southern Miss | 31–35 | -17.52 | +4.00 | 21.52 | loss |
| Kansas State at Arizona State | 17–28 | -9.12 | +11.00 | 20.12 | loss |
| Oregon at Illinois | 10–21 | -9.01 | +11.00 | 20.01 | No pick |
| Iowa State at Arizona | 3–39 | +16.31 | +36.00 | 19.69 | win |

**Different questions can give different verdicts:** Boston College won 49–27 at Georgia Tech. The primary forecast favored Georgia Tech by 1.88, so the outright call was wrong and margin error was 23.88. Yet Boston College +6 was the saved ATS selection and won. Conversely, a correct outright winner does not prove an ATS cover.

## Upsets and observed patterns

Against the same saved market quotes, **22 of 56 underdogs won outright**. “Upset” here means the game winner was the underdog on that captured quote; it does not establish the closing favorite or news-driven market consensus. The primary predicted the correct winner in only 4 of these 22 upsets.

| Underdog winner | Opponent | Saved home spread | Final away–home | Primary winner call |
| --- | --- | --- | --- | --- |
| Middle Tennessee | Florida International | -10.00 | 26–23 | Florida International |
| Marshall | South Alabama | +3.00 | 13–20 | South Alabama |
| App State | James Madison | +11.25 | 31–34 | James Madison |
| Duke | Virginia | -1.75 | 19–16 | Duke |
| Army | Tulsa | -1.75 | 38–35 | Tulsa |
| Wyoming | Air Force | +5.25 | 14–28 | Air Force |
| Stanford | NC State | +6.50 | 28–31 | NC State |
| Cincinnati | Texas Tech | +11.50 | 24–37 | Texas Tech |
| West Virginia | TCU | -10.50 | 24–20 | TCU |
| Kansas | Baylor | +1.25 | 24–25 | Kansas |
| Illinois | Oregon | +9.75 | 10–21 | Oregon |
| UCF | BYU | +7.50 | 31–39 | BYU |
| Boston College | Georgia Tech | -6.00 | 49–27 | Georgia Tech |
| Minnesota | Iowa | +7.50 | 10–13 | Iowa |
| Arizona State | Kansas State | +1.25 | 17–28 | Kansas State |
| UL Monroe | Troy | -11.50 | 21–14 | Troy |
| Southern Miss | Louisiana | +10.00 | 31–35 | Louisiana |
| Colorado State | San Diego State | +1.25 | 49–56 | Colorado State |
| Virginia Tech | Clemson | -2.50 | 20–16 | Clemson |
| Arkansas State | Georgia State | +2.50 | 32–38 | Georgia State |
| Syracuse | North Carolina | -8.75 | 31–30 | North Carolina |
| Wisconsin | USC | +2.75 | 7–24 | Wisconsin |

- Favorite ATS selections: **9–11**, n=20. Underdog ATS selections: **10–8**, n=18. This split is too small to justify changing sides or stakes.
- The 7–14-point edge subset was worse than 3–7 this week. That supports testing whether large disagreements are overconfident, not declaring the original model broken or reverse-betting the subset.
- Large misses ran in both directions: NIU, TCU and Troy were overrated relative to their finals, while Oklahoma State, SMU and Arizona were substantially underrated. The full-week signed bias does not support a one-direction global correction.
- These patterns describe outcomes. Turnovers, injuries, offensive failure, defensive failure, opponent adjustment and garbage time are **not established causes** from final margins alone.

## Other systems and postgame-detail coverage

The selected production Tracker snapshot is still Week 7, and its team-level `sp_plus_vs_ridge_fbs_2026.csv` is not a game forecast. A broader read-only inventory found **saved Week 8 research forecasts** in worktree `756a`, `exports/backtest_2026/week8_local_20261018/corrected/week8_all_families_fit_{0,1,2}.csv`. Their CSVs, model metadata and all three fitted model files match `files.json` SHA-256 entries. No model was loaded, replayed or fitted for this comparison.

These are **official weekly Model Pack inference features using `pack_convention`**, not the live EPA-OLS feature basis and not the own-feature ensemble exports. Fit 0 used 5,070 training rows through 2025; fit 1 used the 4,520-row supplied pack through 2024; fit 2 used 5,240 rows including 170 eligible official-feature 2026 Week 5–7 rows. Training season 2020 is absent from these actual fit metadata lists; do not summarize them as a complete every-season 2016–2025 sample.

**Timing qualification:** the run summary is stamped October 19 at 00:01:42 UTC, while the official Week 8 input capture is 00:04:22 UTC. The summary may record run start rather than prediction creation; the prediction CSVs and verification manifest do not embed an exact output creation timestamp. Local file metadata says October 18, 19:05 Chicago, but file metadata alone is not immutable prospective evidence. Grade the retained outputs transparently as a saved research comparison, not as a verified original published betting record, until the contemporaneous run log resolves that timestamp contract.

Ridge and this **single direct-margin Random Forest** produce native point margins. They are different from a paired home/away score RF. XGBoost, logistic regression and stacked-ensemble “margin” columns are inverse-normal-CDF transforms of probabilities; this report excludes those derived columns from point-MAE and ATS claims. Ridge/RF probabilities are normal-CDF mappings of margins rather than independently calibrated classifiers.

| Fit | Family | Winner calls /56 | Native margin MAE | Brier | Log loss | Diagnostic ATS ≥3 |
| --- | --- | --- | --- | --- | --- | --- |
| 0 | 01 Ridge margin | 38 | 11.574 | 0.23559 | 0.66552 | 8–9–0 |
| 0 | 02 RandomForest | 41 | 11.817 | 0.23340 | 0.66374 | 15–15–0 |
| 0 | 03 XGBoost | 36 | Unavailable | 0.23551 | 0.70108 | Unavailable: transformed probability margin |
| 0 | 05 LogisticRegression | 34 | Unavailable | 0.23287 | 0.65914 | Unavailable: transformed probability margin |
| 0 | 07 Stacked ensemble | 37 | Unavailable | 0.23321 | 0.66225 | Unavailable: transformed probability margin |
| 1 | 01 Ridge margin | 39 | 11.572 | 0.23550 | 0.66501 | 8–10–0 |
| 1 | 02 RandomForest | 35 | 12.255 | 0.23750 | 0.67553 | 11–22–0 |
| 1 | 03 XGBoost | 37 | Unavailable | 0.27297 | 0.88756 | Unavailable: transformed probability margin |
| 1 | 05 LogisticRegression | 36 | Unavailable | 0.23522 | 0.66417 | Unavailable: transformed probability margin |
| 1 | 07 Stacked ensemble | 36 | Unavailable | 0.23664 | 0.66943 | Unavailable: transformed probability margin |
| 2 | 01 Ridge margin | 36 | 11.536 | 0.23311 | 0.65979 | 7–8–0 |
| 2 | 02 RandomForest | 37 | 11.231 | 0.22771 | 0.64983 | 11–12–0 |
| 2 | 03 XGBoost | 37 | Unavailable | 0.25928 | 0.80784 | Unavailable: transformed probability margin |
| 2 | 05 LogisticRegression | 36 | Unavailable | 0.23640 | 0.66715 | Unavailable: transformed probability margin |
| 2 | 07 Stacked ensemble | 33 | Unavailable | 0.23858 | 0.67358 | Unavailable: transformed probability margin |

All 15 entries score the **same 56 final games**. The Ridge/RF ATS columns apply a fixed three-point rule to their saved margins at the primary card’s same saved quote. They are reconstructed diagnostics, not original saved selections and never added to the system ledger. The best native-margin MAE here (fit-2 RF, **11.231**) still exceeds the market reference **10.683**. More winner calls do not establish a margin or betting advantage. There is no promotion claim from this one week. Full per-game candidate outputs and exact model/file hashes are in `saved-research-game-by-game.csv` and `saved-research-summary.json`.

The SP+ Week 8 payload explicitly reports `prospective_eligible=false`, with null publication time and effective results cutoff. Its capture can be used as a labeled reference, but this report does not admit it to a comparable original-forecast performance record. No SP+ or Ridge margin was fabricated from probabilities or a team-rating difference.

The retained advanced-box payload represents **12/56 Week 8 games**, with **all 44 Saturday games absent**. All 12 represented box headers agree with the retained finals. The saved game-flow payload also represents 12 games, but **Tulsa–Army 401862808** has a tied **35–35** header and terminal “Game ended” row, while the verified final and box score are Tulsa **35**, Army **38**. That series is unsuitable for postgame attribution and should remain unavailable/quarantined until its source is reconciled. It is not evidence of a tied final.

The archived primary linear explanations reconstruct all **56 selected forecasts** within the stored arithmetic and rounding tolerances. They account for net EPA differential, home field and offset; they do not supply a complete independent frozen offense/defense decomposition. No new play/drive/box requests were made here. Accordingly, current Saturday mechanism reports must show missing advanced evidence rather than inferring causes or a garbage-time adjustment.

## One bounded next experiment — proposal only

**Question:** do the largest pregame model–market disagreements systematically overstate margin separation? Preserve the incumbent and test a separately identified fixed 50/50 blend of its home-margin forecast and the same pregame captured market-implied home margin. Do not tune the blend or pick threshold on these Week 8 results.

Use the next four not-yet-started regular weeks (starting with the verified next slate) as a paired prospective diagnostic, requiring at least 100 common eligible games, exact saved lines and timestamps, no scored game in its own training inputs, and no changes to the production card. Primary endpoint: paired margin MAE improvement of at least 0.5 point versus the unchanged incumbent. Also report winner accuracy and ATS on identical predeclared cohorts at the same lines, with pushes, missingness and quote limitations explicit. Retain every failure and weekly result. No deployment, schedule, promotion, revised stake or neutral-site-hold change is proposed automatically; any further action must satisfy the existing ADR-0011 gate and owner authorization.

## Exact sources and identities

- Finals capture: `2026-10-25T13:46:58.885804+00:00`; SHA-256 `90194cc5bd4cc2c6f5f07b5e8b9e6b3a409bee30e5391a12d69e51ad9fe74445`.
- First frozen primary card: `2026-10-19T00:07:28.519737+00:00`; SHA-256 `d5f4c74f3d9763f4a4f217f2955748613031771ed9df2370f78b56fe96f8a3a9`.
- Original probability payload: Git commit `3ec452e1245a64f0e2c42bac442f771359bce516`, `public/api/ensemble.json`; generated `2026-10-19T05:17:38.014463+00:00`; payload SHA-256 `2739ec8ef4ca8dad3924b7bb5cde957136f18405e966fae889bced1ad375b0a9`; training SHA-256 `0837fbbedb3a684b201340cc993067c34179ef0f7ea0e6cc49da8424378a4dd9`.
- Primary runtime family is `epa_ols` / `in_season`, not the separate notebook Ridge model. Original artifact model/feature/training fingerprints are preserved per game in the CSV. The original full producing source revision is not embedded in every primary card; the current review’s source revision is not a substitute for it.

| Selected card generated (UTC) | Odds captured (UTC) | Games | Model ID | Archive SHA-256 |
| --- | --- | --- | --- | --- |
| 2026-10-20T11:10:54.213207+00:00 | 2026-10-20T11:00:17.683086+00:00 | 3 | ef1cbbed3d4a82dd0b4100b2e35a7b7226277fc65e72cc34c3b29e4e14fd67ee | a47c5781def174b30df1b4b70ed66219a6722fafce5067830a292b1a18a2d1b8 |
| 2026-10-21T11:11:29.386924+00:00 | 2026-10-21T11:00:53.239828+00:00 | 1 | 3c88924f702cde1182ee1ceede2d1119a355b1891ce4a6285ef22283a3e63bbc | e0d119e444da469bba8335e2aadddcc81f1c1393fab5433bf24385e059d9328c |
| 2026-10-22T11:13:58.460392+00:00 | 2026-10-22T11:01:46.189574+00:00 | 8 | e759a159a6de980e6af20710c0b8d869a3b4c4235a575c90fadafe46a0c957ba | 39984cdbfc8f7a46b9c30832fc22adc5eacb5c3c99ffad7b3690bee3f968420a |
| 2026-10-24T11:12:26.647821+00:00 | 2026-10-24T09:00:02.790326+00:00 | 44 | 4d33921f991c1886702299da30a2fc1cd167f6df2017c00269ae7fc645d29b47 | 82bc24ab039abedd5d09e667aa73a27799fd43c76c2301206c16171945f4963b |

The source/fitted-method identity varies across saved daily receipts even though all published Week 8 margins are equal. Use these exact artifact identities rather than a generic “Ridge” label. The ensemble bundle’s indented `forecasts.json` and compact weekly export have different byte hashes but are logically identical arrays; that serialization difference is not changed predictions.

`summary.json` contains every input checksum, metrics, reconciliation and coverage findings. `week8-game-by-game.csv` is the full machine-readable comparison, including exact selected archive path, generation/odds timestamps, model and forecast IDs, first-card fields, residuals, picks and original probability metrics. `review.py` plus the documented supplemental reconciliation reproduce the summary without fitting a model. Source files were checked unchanged at completion of the initial metric calculation.

## All 56 games

Home-margin signs are home minus away. Final scores are shown away–home. “No pick” below means an explicit pregame below-threshold row; it does not mean a missing prediction.

| ID | Chicago kickoff | Away at home | Final A–H | Pred H margin | Actual H margin | Abs error | Saved ATS selection / result | First-card ATS |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 401871055 | 2026-10-20T18:00 | Middle Tennessee at Florida International | 26–23 | +14.15 | -3.00 | 17.15 | Florida International -10.00 / loss | loss |
| 401871069 | 2026-10-20T18:00 | Missouri State at Delaware | 38–61 | +8.99 | +23.00 | 14.01 | Delaware -3.00 / win | win |
| 401871092 | 2026-10-20T18:30 | South Alabama at Marshall | 13–20 | -5.00 | +7.00 | 12.00 | No pick (below threshold) | No pick |
| 401871070 | 2026-10-21T19:00 | New Mexico State at Sam Houston | 30–24 | -2.04 | -6.00 | 3.96 | No pick (below threshold) | No pick |
| 401869845 | 2026-10-22T18:00 | James Madison at App State | 31–34 | -11.76 | +3.00 | 14.76 | No pick (below threshold) | No pick |
| 401871056 | 2026-10-22T18:00 | Liberty at Kennesaw State | 34–6 | -10.92 | -28.00 | 17.08 | No pick (below threshold) | No pick |
| 401862807 | 2026-10-22T18:30 | East Carolina at Memphis | 34–41 | +15.51 | +7.00 | 8.51 | Memphis -10.50 / loss | loss |
| 401858271 | 2026-10-23T18:00 | Duke at Virginia | 19–16 | -2.27 | -3.00 | 0.73 | Duke +1.75 / win | win |
| 401861965 | 2026-10-23T18:00 | Massachusetts at UConn | 16–35 | +2.15 | +19.00 | 16.85 | Massachusetts +14.25 / loss | loss |
| 401862808 | 2026-10-23T19:30 | Army at Tulsa | 38–35 | +6.06 | -3.00 | 9.06 | Tulsa -1.75 / loss | loss |
| 401864525 | 2026-10-23T20:00 | Air Force at Wyoming | 14–28 | -9.31 | +14.00 | 23.31 | Air Force -5.25 / loss | loss |
| 401858272 | 2026-10-23T21:30 | NC State at Stanford | 28–31 | -2.90 | +3.00 | 5.90 | Stanford +6.50 / win | win |
| 401856728 | 2026-10-24T11:00 | LSU at Auburn | 38–17 | -11.52 | -21.00 | 9.48 | LSU -7.00 / win | win |
| 401856840 | 2026-10-24T11:00 | Texas Tech at Cincinnati | 24–37 | -5.09 | +13.00 | 18.09 | Cincinnati +11.50 / win | win |
| 401856841 | 2026-10-24T11:00 | West Virginia at TCU | 24–20 | +22.57 | -4.00 | 26.57 | TCU -10.50 / loss | loss |
| 401858270 | 2026-10-24T11:00 | California at SMU | 20–59 | +15.54 | +39.00 | 23.46 | No pick (below threshold) | No pick |
| 401858274 | 2026-10-24T11:00 | Pittsburgh at Miami | 23–52 | +17.12 | +29.00 | 11.88 | No pick (below threshold) | loss |
| 401858496 | 2026-10-24T11:00 | Indiana at Michigan | 13–6 | -8.39 | -7.00 | 1.39 | No pick (below threshold) | No pick |
| 401858498 | 2026-10-24T11:00 | Rutgers at Northwestern | 14–42 | +23.36 | +28.00 | 4.64 | Northwestern -15.50 / win | win |
| 401862809 | 2026-10-24T11:00 | Rice at Florida Atlantic | 49–51 | +6.83 | +2.00 | 4.83 | No pick (below threshold) | win |
| 401866450 | 2026-10-24T11:00 | Western Michigan at Toledo | 38–45 | +7.81 | +7.00 | 0.81 | Toledo -2.75 / win | win |
| 401856834 | 2026-10-24T12:00 | Baylor at Kansas | 24–25 | +3.36 | +1.00 | 2.36 | Kansas +1.25 / win | win |
| 401866446 | 2026-10-24T12:00 | Akron at Kent State | 20–35 | +3.73 | +15.00 | 11.27 | No pick (below threshold) | No pick |
| 401866476 | 2026-10-24T12:00 | Miami (OH) at Central Michigan | 28–27 | +1.40 | -1.00 | 2.40 | Central Michigan +3.50 / win | win |
| 401858495 | 2026-10-24T14:00 | Oregon at Illinois | 10–21 | -9.01 | +11.00 | 20.01 | No pick (below threshold) | No pick |
| 401856727 | 2026-10-24T14:30 | Texas A&M at Alabama | 20–31 | +22.33 | +11.00 | 11.33 | Alabama -13.50 / loss | loss |
| 401856730 | 2026-10-24T14:30 | Oklahoma at Mississippi State | 23–15 | +5.30 | -8.00 | 13.30 | Mississippi State +2.25 / loss | loss |
| 401856731 | 2026-10-24T14:30 | Tennessee at South Carolina | 24–27 | -2.05 | +3.00 | 5.05 | Tennessee +2.50 / loss | No pick |
| 401856835 | 2026-10-24T14:30 | BYU at UCF | 31–39 | -2.69 | +8.00 | 10.69 | UCF +7.50 / win | win |
| 401858273 | 2026-10-24T14:30 | Boston College at Georgia Tech | 49–27 | +1.88 | -22.00 | 23.88 | Boston College +6.00 / win | win |
| 401858497 | 2026-10-24T14:30 | Iowa at Minnesota | 10–13 | -5.01 | +3.00 | 8.01 | No pick (below threshold) | No pick |
| 401858499 | 2026-10-24T14:30 | Michigan State at UCLA | 10–28 | +27.54 | +18.00 | 9.54 | UCLA -15.25 / win | win |
| 401862810 | 2026-10-24T14:30 | North Texas at Navy | 49–39 | +1.86 | -10.00 | 11.86 | Navy +3.25 / loss | loss |
| 401864526 | 2026-10-24T14:30 | Hawai'i at Northern Illinois | 56–21 | +6.01 | -35.00 | 41.01 | Northern Illinois +3.75 / loss | loss |
| 401866447 | 2026-10-24T14:30 | Sacramento State at Ball State | 17–34 | +13.76 | +17.00 | 3.24 | No pick (below threshold) | No pick |
| 401866448 | 2026-10-24T14:30 | Bowling Green at Buffalo | 24–31 | +10.10 | +7.00 | 3.10 | Buffalo -3.00 / win | win |
| 401856839 | 2026-10-24T14:45 | Kansas State at Arizona State | 17–28 | -9.12 | +11.00 | 20.12 | Kansas State -1.25 / loss | loss |
| 401866449 | 2026-10-24T15:00 | Eastern Michigan at Ohio | 20–24 | +16.24 | +4.00 | 12.24 | Ohio -10.00 / loss | loss |
| 401871094 | 2026-10-24T15:00 | UL Monroe at Troy | 21–14 | +15.85 | -7.00 | 22.85 | Troy -11.50 / loss | No pick |
| 401864528 | 2026-10-24T16:00 | San José State at Nevada | 13–28 | +2.98 | +15.00 | 12.02 | San José State +6.50 / loss | No pick |
| 401869967 | 2026-10-24T16:00 | Louisiana at Southern Miss | 31–35 | -17.52 | +4.00 | 21.52 | Louisiana -10.00 / loss | loss |
| 401871093 | 2026-10-24T16:00 | Old Dominion at Louisiana Tech | 0–26 | +15.75 | +26.00 | 10.25 | No pick (below threshold) | win |
| 401860907 | 2026-10-24T17:00 | Boise State at Washington State | 31–10 | -19.08 | -21.00 | 1.92 | Boise State -14.50 / win | win |
| 401860905 | 2026-10-24T17:30 | San Diego State at Colorado State | 49–56 | +5.52 | +7.00 | 1.48 | Colorado State +1.25 / win | win |
| 401856836 | 2026-10-24T18:00 | Colorado at Oklahoma State | 24–57 | +6.48 | +33.00 | 26.52 | Colorado +13.50 / loss | loss |
| 401858276 | 2026-10-24T18:00 | Virginia Tech at Clemson | 20–16 | +2.34 | -4.00 | 6.34 | No pick (below threshold) | No pick |
| 401869935 | 2026-10-24T18:00 | Georgia State at Arkansas State | 32–38 | -4.75 | +6.00 | 10.75 | No pick (below threshold) | No pick |
| 401856729 | 2026-10-24T18:30 | Vanderbilt at Kentucky | 17–34 | +21.97 | +17.00 | 4.97 | Kentucky -10.50 / win | win |
| 401856732 | 2026-10-24T18:30 | Ole Miss at Texas | 27–34 | -0.12 | +7.00 | 7.12 | Ole Miss +3.00 / loss | loss |
| 401856838 | 2026-10-24T18:30 | Iowa State at Arizona | 3–39 | +16.31 | +36.00 | 19.69 | Arizona -11.00 / win | win |
| 401858275 | 2026-10-24T18:30 | Syracuse at North Carolina | 31–30 | +14.16 | -1.00 | 15.16 | North Carolina -8.75 / loss | loss |
| 401858500 | 2026-10-24T18:30 | USC at Wisconsin | 7–24 | +6.87 | +17.00 | 10.13 | Wisconsin +2.75 / win | win |
| 401860906 | 2026-10-24T18:30 | Utah State at Texas State | 17–20 | +9.87 | +3.00 | 6.87 | Utah State +13.75 / win | No pick |
| 401862811 | 2026-10-24T19:00 | UTSA at Tulane | 42–19 | -0.73 | -23.00 | 22.27 | No pick (below threshold) | No pick |
| 401864527 | 2026-10-24T21:00 | North Dakota State at New Mexico | 16–21 | +3.54 | +5.00 | 1.46 | No pick (below threshold) | No pick |
| 401856837 | 2026-10-24T21:15 | Houston at Utah | 13–21 | +4.52 | +8.00 | 3.48 | No pick (below threshold) | No pick |

No model training, inference replay, new source acquisition, record mutation, Git publication or production operation was performed by this analysis worker. The separate execution owner controls any subsequent updates.


---

# Eligibility and cohort-transition addendum

This addendum leaves the original report, frozen cards, saved lines and grade policy unchanged.

**Rules:** First-frozen means the original frozen Week8 card, selected before kickoff; last-pregame means the latest matching saved row strictly before the actual kickoff (ties must agree), including an explicit abstention. Both use the row's original side and line. A later card does not overwrite history. Winner accuracy and point MAE use all56 original margins; ATS uses only explicit picks: first37 (20–17), last38 (19–19), with19 versus18 explicit no-picks and zero missing forecasts. The34 common picks went18–16 under both saved lines, with no outcome flips. Every one of the56 published margins is identical across these two policies.

F: generated `2026-10-19T00:07:28.519737+00:00`; original frozen/card SHA-256 `d5f4c74f3d9763f4a4f217f2955748613031771ed9df2370f78b56fe96f8a3a9`.

L: generated `2026-10-24T11:12:26.647821+00:00`; last pregame Saturday-card SHA-256 `82bc24ab039abedd5d09e667aa73a27799fd43c76c2301206c16171945f4963b`. All seven cohort-change games were Saturday games, so the same L card is eligible for each. Per-game archive/odds/model hashes and times remain in `week8-game-by-game.csv`.

| ID | Away at home | First status / saved selection | Last status / saved selection | First home quote | Last home quote | First ATS | Last ATS | Sources |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 401858274 | Pittsburgh at Miami | pick / Pittsburgh +21.00 | below_threshold / explicit no-pick | -21.00 | -20.00 | loss | No pick | F → L |
| 401862809 | Rice at Florida Atlantic | pick / Rice +10.00 | below_threshold / explicit no-pick | -10.00 | -8.50 | win | No pick | F → L |
| 401871093 | Old Dominion at Louisiana Tech | pick / Louisiana Tech -10.50 | below_threshold / explicit no-pick | -10.50 | -13.50 | win | No pick | F → L |
| 401856731 | Tennessee at South Carolina | below_threshold / explicit no-pick | pick / Tennessee +2.50 | +1.25 | -2.50 | No pick | loss | F → L |
| 401871094 | UL Monroe at Troy | below_threshold / explicit no-pick | pick / Troy -11.50 | -17.25 | -11.50 | No pick | loss | F → L |
| 401864528 | San José State at Nevada | below_threshold / explicit no-pick | pick / San José State +6.50 | -5.25 | -6.50 | No pick | loss | F → L |
| 401860906 | Utah State at Texas State | below_threshold / explicit no-pick | pick / Utah State +13.75 | -11.50 | -13.75 | No pick | win | F → L |

Home quotes are home-oriented spread points. A no-pick has no saved wager line; its observed market quote is shown separately and is not fabricated into a selection. First-only cases contribute2wins/1loss, last-only1win/3losses; their membership differences explain20–17 versus19–19 without any margin-forecast change.


---

# Week8 observed mechanism addendum

This read-only supplement retains the original report, forecast/line identities and single proposal. Observed postgame associations do not establish causes or authorize model changes. All 56 advanced-box response hashes and event/final headers validated; all56 retained WP response hashes validated. Five target games also pass final quarter sums and maximum play/drive-score checks.

## Sources and populations

Pregame baseline acquired `2026-10-24T11:01:16.016199+00:00`; only completed 2026 regular games in provider weeks 1–7, FBS-involving, target excluded. Saturday kickoffs follow acquisition. Postgame capture `20261025T172319018190Z`. Full Week8 plays SHA-256 `71a9d36632059b57a387d32dbc26ac0ad09b3f15e4bfa1c2b61738d98994d8a1` (19,752 rows); full-season games SHA `0c2d897df1ebe887e5625e3011a53a03b3bb60928e647d6bc7216aa01471819f`. Drives SHA `9ab54f4c3a6c6adc8f37a387413d111522922a4826aa9caa4a3644eef4264426` (24,640 rows), captured 20261025T172425806308Z. Exact baseline files, per-game advanced-box hashes/timestamps and all denominators are in `mechanism-addendum.json`. The five filtered play files explicitly identify themselves as derived views of the preserved full-week response, not endpoint captures.

Inherited helper includes GO_TYPES, valid down1–4 and numeric nonmissing PPA; success thresholds50/70/100% of distance by down. Both PPA and success use the retained population. Explosiveness below means mean PPA on successful retained plays. Provider box metrics have different populations/garbage rules and remain separately labeled. Raw provider PPA is not opponent adjusted. Return labels can carry return yards and meet the inherited success rule; plain Interception is excluded. No taxonomy repair was applied.

| Game / absolute primary margin miss | Team | Prior n / PPA / SR | Game n / PPA / SR / successful-play PPA | Provider n / PPA / SR | Provider opportunities / points per opportunity / start yards to goal | Drive-ending giveaways / explicit Sack tags |
| --- | --- | --- | --- | --- | --- | --- |
| Hawai'i 56 at Northern Illinois 21 / 41.01 | Northern Illinois | 374 / -0.011 / 38.8% | 49 / 0.069 / 44.9% / 1.290 | 36 / 0.111 / 30.6% | 3 / 7.00 / 72.6 | 4 / 0 |
| Hawai'i 56 at Northern Illinois 21 / 41.01 | Hawai'i | 491 / 0.017 / 39.9% | 75 / 0.460 / 54.7% / 1.238 | 60 / 0.592 / 61.7% | 8 / 7.00 / 67.7 | 1 / 0 |
| West Virginia 24 at TCU 20 / 26.57 | TCU | 393 / 0.105 / 44.3% | 81 / 0.115 / 45.7% / 1.256 | 82 / 0.085 / 45.1% | 10 / 2.00 / 73.1 | 3 / 2 |
| West Virginia 24 at TCU 20 / 26.57 | West Virginia | 537 / 0.191 / 44.3% | 57 / 0.149 / 38.6% / 1.131 | 61 / 0.116 / 37.7% | 4 / 6.00 / 77.6 | 1 / 2 |
| Colorado 24 at Oklahoma State 57 / 26.52 | Oklahoma State | 428 / 0.215 / 51.6% | 76 / 0.428 / 48.7% / 1.472 | 67 / 0.453 / 50.7% | 10 / 5.00 / 63.3 | 0 / 3 |
| Colorado 24 at Oklahoma State 57 / 26.52 | Colorado | 418 / 0.019 / 40.2% | 62 / 0.035 / 43.5% / 0.949 | 51 / 0.109 / 41.2% | 5 / 4.80 / 74.2 | 3 / 4 |
| Boston College 49 at Georgia Tech 27 / 23.88 | Georgia Tech | 369 / 0.210 / 45.5% | 60 / -0.075 / 45.0% / 0.628 | 60 / -0.075 / 41.7% | 6 / 4.50 / 70.4 | 2 / 3 |
| Boston College 49 at Georgia Tech 27 / 23.88 | Boston College | 381 / 0.055 / 40.7% | 64 / 0.454 / 57.8% / 1.087 | 67 / 0.411 / 55.2% | 9 / 5.00 / 66.0 | 0 / 1 |
| California 20 at SMU 59 / 23.46 | SMU | 408 / 0.248 / 48.8% | 68 / 0.519 / 52.9% / 1.306 | 58 / 0.439 / 51.7% | 9 / 6.56 / 62.8 | 0 / 1 |
| California 20 at SMU 59 / 23.46 | California | 494 / 0.020 / 39.1% | 66 / 0.047 / 34.8% / 1.243 | 56 / 0.087 / 37.5% | 4 / 5.00 / 74.6 | 0 / 3 |

## Bounded observations

- Hawai’i–NIU: Hawai’i’s observed efficiency and successful-play frequency exceeded its earlier baseline. NIU had four INT/FUMBLE-ending drives versus Hawai’i one. This is an observed combination of efficiency and possessions, not attribution of the full 41.01-point forecast error. Each team also has one excluded plain-Interception play.
- WVU–TCU: TCU’s average efficiency was close to its baseline and its provider opportunity count was 10 versus 4, yet points per opportunity were 2 versus 6. TCU had three giveaway-ending drives, one downs ending and one missed-field-goal ending. A TCU play labeled Fumble Recovery (Own) says WVU recovered in its text; the drive labels contain two fumbles. Preserve the disagreement rather than equating one play label with official totals.
- Colorado–Oklahoma State: Oklahoma State’s PPA and successful-play PPA rose sharply; Colorado had three giveaway-ending drives versus zero. Provider starting field was 63.3 versus 74.2 yards to goal. The chronological raw play score has one regression; avoid relying on score-state sensitivity as clean evidence.
- BC–Georgia Tech: BC’s PPA and success rate increased; GT’s PPA fell below zero and it had two interception-ending drives including one explicit interception-return touchdown. GT inherited success 27/60=45.0% counts both positive-yard interception returns; provider success 25/60=41.7%. Report both definitions, do not silently improve methodology.
- California–SMU: SMU’s efficiency advantage accompanies nine versus four provider opportunities and a shorter starting field (62.8 versus74.6). Neither side has an INT/FUMBLE-ending drive, so the observed drive-label evidence does not support a turnover-created explanation. One chronological score regression qualifies the score-state split.

## Coverage and score-state limits

The custom sensitivity removes plays with absolute pre-play lead>38 in Q2,>28 in Q3,>22 in Q4; Q1/OT retained. This is not the provider garbage flag. Chronology uses unique (driveNumber,playNumber), not raw array order. NIU/Hawai’i, TCU/WVU and BC/GT have zero negative scores and zero chronological regressions. Oklahoma State/Colorado and SMU/Cal each have one; all-play metrics remain reported while state splits are qualified. Exact affected IDs are retained in JSON. BC/GT has zero custom exclusions because a 22-point final lead does not exceed 22.

| Game | Team | All retained / competitive / custom blowout | Missing-PPA dropped after type/down filter | Excluded plain Interception | Included return rows passing success rule |
| --- | --- | --- | --- | --- | --- |
| 401864526 | Northern Illinois | 49 / 32 / 17 | 0 | 1 | 0 |
| 401864526 | Hawai'i | 75 / 59 / 16 | 0 | 1 | 0 |
| 401856841 | TCU | 81 / 81 / 0 | 0 | 1 | 0 |
| 401856841 | West Virginia | 57 / 57 / 0 | 0 | 1 | 0 |
| 401856836 | Oklahoma State | 76 / 64 / 12 | 0 | 0 | 0 |
| 401856836 | Colorado | 62 / 50 / 12 | 0 | 0 | 2 |
| 401858273 | Georgia Tech | 60 / 60 / 0 | 1 | 0 | 2 |
| 401858273 | Boston College | 64 / 64 / 0 | 0 | 0 | 0 |
| 401858270 | SMU | 68 / 55 / 13 | 0 | 0 | 0 |
| 401858270 | California | 66 / 55 / 11 | 0 | 0 | 0 |

Sack counts mean exact Sack tags, not official box totals; sack-text outside that type includes penalty/NO PLAY rows. Drive-ending INT/FUMBLE labels are separate from play-type counts and exclude downs. Drive-result label totals are not assumed to sum to the scoreboard. Advanced-box finishing and field-position definitions remain provider-native. See the separate WP guard addendum before rendering any flow evidence.


## Release source checks

The normal October25 17:23UTC results capture independently reproduced all56 Week8 event identities and finals from the retained13:46UTC capture. Source validation withholds structurally inconsistent native game-flow sequences and retains the nine previously reviewed conflict guards. No raw score correction or challenger promotion is included.
