Reconnect behavior
A kitchen tablet drops its WiFi. That is not an edge case, it is Tuesday. CounterFire treats reconnect correctness as non-negotiable: when the tablet comes back, it sees exactly the tickets it missed, in order, with no duplicates.
What you will see
In normal operation the only sign of a brief drop is that the board catches up. You do not need to do anything. When the connection returns:
- The KDS reconnects automatically.
- It receives a fresh snapshot of open tickets, plus any events it missed while offline.
- The board ends up in the exact state it would have been in if it had never dropped.
No ticket vanishes. No ticket appears twice. The order of events is preserved.
Why it is reliable
The guarantee comes from how order state is stored and streamed, not from luck.
- Single append-only event log. Every status change is an event appended to a per-order, monotonically increasing sequence. Nothing is overwritten, so the full history can always be replayed.
- The durable store is the source of truth. Events are persisted durably. The realtime layer is a fan-out on top of that store, not the store itself, so a realtime hiccup or restart cannot lose tickets.
- Snapshot on connect. When the board connects, it gets the current set of open tickets up front, so it never starts from an empty or stale screen.
- Replay only the gap. The board tracks the last event sequence it has seen and acknowledges it on reconnect. The platform replays only the events after that point, so reconnect is fast and complete.
- Idempotent merge. The board merges incoming events keyed by order and sequence number. If an event arrives that it already applied, it is ignored. That is what makes duplicates impossible even if the same event is delivered twice.
What this means for the line
You can trust the board. If the tablet blinks offline mid-rush and comes back, you are not missing an order that quietly failed to appear, and you are not about to make the same order twice because it showed up again. The board is always a faithful picture of the live kitchen.
For developers
The precise wire-level semantics (snapshot format, the last-seen sequence acknowledgement, and gap replay) are documented in realtime: reconnect and snapshots.