I built the FY2025 bridge and wrote the commentary note. The script ran cleanly and the bridge reconciles to the cent.

FY2025 revenue was $11.2M against $11.2M in FY2024, a change of ($5K), or (0.04%). Large losses and new and expanded business almost cancel out.

| Step | Amount |
| --- | --- |
| FY2024 | $11.2M |
| Timing | $53K |
| Loss | ($1.3M) |
| Decline | ($443K) |
| Upsell | $1.2M |
| New | $463K |
| FY2025 | $11.2M |

- **Losses:** Four customers were lost, the biggest being Fenwick Legal at ($686K) and Birchway Foods at ($503K).
- **Upsell:** Twenty-three customers grew, led by Harbor Freight Partners at $148K and Ember Analytics at $136K.
- **New:** Six new customers added $463K, with Thistle Gardens the largest at $116K.
- **Declines:** Eleven customers declined, led by Driftwood Media at ($113K).
- **Causes:** The data doesn't show why customers left or declined, so the note doesn't give reasons.

I used the script's rounded display figures in the note, so the rounded amounts won't sum exactly. The note's data line cites the input file, 48 rows, and sha256 `742a2059e0fd`.

Files are in /tmp/spb-revenue-bridge-fy25-claude-7whwmx6q/output:
- bridge.json
- bridge-note.md