Ingestion
Change-data-capture against the DockMaster database with a webhook fallback for event-driven tables and a nightly reconciliation job as a backstop. Nothing novel here. The point is that the pipeline is boring and idempotent.
- CDC on customers, boats, slips, service orders, parts, invoices
- Webhooks for booking state transitions
- Nightly full-table reconcile for drift