Infrastructure medium complexity backend
0
Dependencies
1
Dependents
4
Entities
0
Integrations

Description

Lightweight async event dispatching layer that routes domain events from post-save hooks or explicit publishes to the Scenario Event Evaluator without blocking the originating transaction. Provides retry and dead-letter handling for failed evaluation attempts.

Feature: Notification Scenarios

notification-event-bus

Sources & reasoning

Implementation notes explicitly require async non-blocking scenario evaluation relative to the primary write path. An event bus is the standard infrastructure mechanism to achieve this decoupling without coupling domain saves to notification logic.

No source references — this artifact was included based on reasoning alone (see above).

Responsibilities

  • Receive domain events from post-save hooks on key entities such as activities, assignments, and certifications
  • Route events asynchronously to registered evaluator subscribers
  • Provide retry semantics and dead-letter queue for failed evaluation attempts

Interfaces

publish(eventType, payload)
subscribe(eventType, handler)
retry(eventId)
getDeadLetters()

Relationships

Dependents (1)

Components that depend on this component