I wrote the accuracy review. The script ran cleanly, and the closed months tie to the P&L actuals.

**Revenue.** The later the reforecast, the better the full-year number. Every version forecast revenue too high.

| Version | Full-year variance | MAPE |
| --- | --- | --- |
| Budget | $362K, or 3.2% | 3.7% |
| 3+9 | $177K, or 1.6% | 3.3% |
| 6+6 | $158K, or 1.4% | 2.9% |
| 9+3 | $3K, or 0.02% | 0.63% |

- **9+3 is the best revenue version, with a caveat.** It had only three forecast months left, so its accuracy doesn't show the forecasting itself improved.
- **3+9 and 6+6 still ran high.** Their bias was 2.1% and 2.8%. The 6+6 miss in 2025-09 was $151K, or 15.0%. The data doesn't show why, so the September assumptions would be the thing to check.
- **Budget's worst revenue month was 2025-07.** It forecast $1,009K against $878K actual.

**Operating expenses.** Budget landed within ($1K) for the year, but its MAPE was 4.1% and its worst month, 2025-05, missed by $32K, or 15.7%. Misses in opposite directions cancelled, so the full-year figure flatters it. 6+6 and 9+3 were tight, at MAPEs of 0.77% and 0.30%.

The note is `output/accuracy-note.md` and the script's figures are in `output/accuracy.json`.