- gui/inventory_window.py: read-only management view over the event ledger —
On-hand / Offcut bin / Build history / Stats tabs (shop-wide), with Refresh.
- Wired into the main window: new Shop ▸ Inventory… menu.
- Plan doc marked complete (all 7 phases; offcut reuse opt-in toggle, purchase
price-book update opt-in).
- tests: window renders a populated ledger and an empty one.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>