Events
Producers write event_outbox in the same database transaction as the business change. outbox-relay-service publishes the envelope to Redis Streams. Consumers append to inbox_messages and let InboxMessageWorker run the handler. Handlers must be idempotent on event_id.
Produced
- No business outbox. Delivery status is stored locally and updated from webhooks.
Consumed
splick.streams.auth.user-welcome-emailgroupcommunication-service.user-welcome-emailintoWelcomeEmailInboxHandler.
Envelope fields that matter for operations: eventId, type, traceId (from X-Request-Id). See request correlation.