A recovery checklist from the TierZero team.
Separate transport recovery from application-state recovery. Reopening a stream does not by itself show that your consumer processed everything needed for a correct local view.
What to record and test
Primary reference: Yellowstone TypeScript client example
When reporting a gap, include versions, subscription type and sanitized timing information.
Separate transport recovery from application-state recovery. Reopening a stream does not by itself show that your consumer processed everything needed for a correct local view.
What to record and test
- Pin the client version and inspect its reconnect and subscription behavior. Do not assume all examples or providers support the same replay options.
- Persist a checkpoint appropriate to the event type and commitment level. A slot number alone may not uniquely identify an event.
- Design idempotent writes so repeated delivery does not create duplicate business actions.
- Monitor queue length and processing delay, not just whether the connection is open.
- Test a deliberate disconnect and compare recovered state with a trusted read path before re-enabling automated actions.
Primary reference: Yellowstone TypeScript client example
When reporting a gap, include versions, subscription type and sanitized timing information.