A shared event envelope
Make identity, type, source and occurrence time explicit. Separate event metadata from the domain payload and version both deliberately.
The sequence tells a story.
Identity, order and recovery
make that story useful.
Make identity, type, source and occurrence time explicit. Separate event metadata from the domain payload and version both deliberately.
Choose a stream or partition key based on the business entity. Global ordering is rarely the same requirement as consistent updates to one record.
Store progress after applying a safe unit of work. Plan for redelivery and make the resulting business action idempotent.
Set a replay window from recovery and analysis needs. Storage limits, sensitive fields and schema compatibility belong in the same decision.
A stable envelope helps producers and consumers evolve separately.
Read pattern ↗02 / FIELD NOTEChoose the smallest ordering guarantee the domain requires.
Read pattern ↗03 / FIELD NOTEA replay should be controlled, inspectable and safe.
Read pattern ↗