Every number this model publishes is locked before the outcome is known, graded when its 90-day window closes, and never edited afterward. The misses stay up next to the hits. The 2026 season is complete. All 107 predictions across three cohorts have resolved, 25 reached the majors, and the three checkpoints below report what each cohort actually scored, including the two that lost to a coin flip.
Scored under v0.4. The bands came out in the right order and all six top-band players debuted, but the probabilities ran too low and the model lost to a constant guess. That result triggered the v0.5 recalibration.
First cohort on the recalibrated v0.5 table, and it lost to the baseline again. Band ordering inverted for the first time. Thomas White at 62 percent, the largest number the model has published, missed after being shut down with a shoulder injury he already had on the day he was scored.
The largest cohort and the first checkpoint the model won, with monotonic band ordering restored. It also found that all six call-ups came from Triple-A, that a one-feature model knowing only that scores 0.0420, and that inside Triple-A the model's ranking carries no measurable information.
What follows is the original Sub-Batch A report as published on June 18, 2026, unedited. It is the longest write-up of the three because it was the first.
We sorted all 28 players into four groups by the call-up odds we gave them in March. Then we checked how many in each group actually reached the majors. A well-built model shows each higher group getting called up more often than the group below it. That is exactly what happened, and the gap between the gray and gold bars at the top is the part we are fixing next.
Every group got called up at a higher rate than the group below it. That is the model doing its core job: putting prospects in the right order. The miss is at the top. The six players we rated as best bets all reached the majors, but the model only gave them around 41% odds on average. It should have been near certain. The next version corrects that.
All 28 players, sorted by the call-up odds we published on March 20. The three misses are flagged. Nothing here has been edited since the run date.
| Player | Odds we gave | Outcome | What happened |
|---|---|---|---|
JR Ritchie ATL · SP |
55% | Called up | Debut Apr 23. Dominated Triple-A with a 0.99 ERA before the call. |
JJ Wetherholt STL · 2B |
50% | Called up | Opening Day starter. |
Carson Benge NYM · OF |
38% | Called up | Made the Opening Day roster. A veteran's opt-out forced the timing. |
Coleman Crow MIL · SP |
35% | Called up | Spot start against the Marlins on Apr 17. |
Travis Bazzana CLE · 2B |
35% | Called up | Debut Apr 28. Hit .287 at Triple-A and forced the issue. |
Konnor Griffin PIT · SS |
34% | Called up | Debut Apr 2. Signed a $140M extension days later. |
Colt Emerson SEA · SS |
24% | Called up | Debut May 17. Youngest Mariner since Felix Hernandez in 2005. |
Brandon Sproat MIL · SP |
23% | Called up | Opening Day roster. |
Parker Messick CLE · SP |
23% | Called up | In the rotation. 9-2 with a 2.39 ERA through May 30. |
Connelly Early BOS · SP |
22% | Called up | Won an Opening Day rotation spot. |
Samuel Basallo BAL · C |
22% | Called up | Opening Day catcher and DH. |
Payton Tolle BOS · SP |
22% | Called up | Debut Apr 23 after two injuries opened a spot. 11 strikeouts against the Yankees. |
Kevin McGonigle DET · SS |
13% | Called up Miss | The longest shot to get called up. Went 4-for-5 on Opening Day. |
Cooper Pratt MIL · SS |
14% | Called up Miss | Signed an extension and debuted Jun 16. |
Aidan Miller PHI · SS |
22% | Did not Miss | A spinal procedure on Jun 5 ended his season before it started. |
Charlie Condon COL · 1B |
22% | Did not | Still at Triple-A Albuquerque despite April buzz. |
Jett Williams MIL · INF |
24% | Did not | Still at Triple-A Nashville. |
Harry Ford WSH · C |
20% | Did not | Still at Triple-A Rochester after a cold start. |
Max Clark DET · OF |
15% | Did not | Still at Triple-A Toledo. |
Ryan Sloan SEA · SP |
15% | Did not | Still at the lower minors. |
Kade Anderson SEA · SP |
15% | Did not | Still at High-A. |
Nate George BAL · OF |
14% | Did not | Still at High-A. |
Luis Pena MIL · INF |
14% | Did not | At Double-A. Returned from a health scare in early June. |
Theo Gillen TBR · OF |
13% | Did not | Still at Double-A. |
Arjun Nimmala TOR · SS |
7% | Did not | Still at High-A. |
Josue De Paula LAD · OF |
7% | Did not | Still at Double-A behind a crowded outfield. |
Zyhir Hope LAD · OF |
7% | Did not | Still at Double-A. |
Xavier Isaac TBR · 1B |
6% | Did not | At High-A, working back from surgery. |
A model that never admits a miss is not worth trusting. Three predictions came out wrong. Each one points to a specific fix.
The results point to one big fix and a few small ones. The next version of the model, v0.5, ships before the next group of prospects is scored.
For people who want the raw scoring. A Brier score measures forecast accuracy where lower is better and 0 is perfect. There is a catch worth understanding, explained below.
This year exactly half the players got called up. When the real rate lands at 50%, a lazy guess of "50% for everyone" happens to score well, even though it tells you nothing about who is actually going up. The MKDC model does the hard part a coin flip cannot: it ranks players in the right order. The raw score hides that. The corrected score, which keeps the exact same rankings and only fixes the too-low confidence numbers, drops to 0.148. That number is computed the careful way: small groups that went perfect are pulled back toward their prediction before refitting, so a 6-for-6 band cannot claim it was a sure thing. That is the real measure of what the model got right, and it is the entire job of the next version. The full fit is documented in the technical report.
That next version, v0.5, is now live. It rebuilds the CUS-to-CUP mapping from the 28 outcomes above and adds an injury-severity humility band. Two cohorts were scored on it and both have now resolved: Sub-Batch B on September 9, fourteen outcomes, and Sub-Batch C on October 8, sixty-five outcomes. Across those 79 outcomes v0.5 scored a Brier of 0.1034 against a naive 0.1199, and a one-feature level-only baseline scored 0.0687, better than both. The full patch is on the methodology page. The results above are not edited. They remain the honest first record.