Eight commits taking the terminal from a demo to something a fleet can run.
- Bills drain to the back office automatically over MQTT or HTTP, with
application-level acknowledgement, backoff and a 7-day recovery window.
- Every terminal has its own identity, so 100 devices no longer share one set
of MQTT topics, one client id and one invoice series.
- Staff PINs moved out of the shipped binary into PBKDF2 hashes.
- Cash drawer, store details, staff management and promos all built for real
rather than mocked.
- The catalogue now pulls from a real endpoint with paged delta sync.
234 tests passing, analyzer clean.