Skip to main content

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​

  • notification.push-dispatch on NotificationEventStreams.PUSH_DISPATCH.
  • Retry stream PUSH_RETRY and dead-letter PUSH_DEAD_LETTER are operational streams, not business facts.

Consumed​

  • Social friend request, group invite, nickname, group deleted.
  • Feed tag, mention, comment, reaction milestone, friend photo, payment evidence, streak reminder.
  • Expense reminders, debt, and bulk settlement.
  • Messaging direct message, group message, and group actions.
  • Auth profile stream for locale sync.

Envelope fields that matter for operations: eventId, type, traceId (from X-Request-Id). See request correlation.