Notification Events Overview
Summary
Notification consumes 42 integration event types and publishes zero business events. Its event surface is entirely inbound.
Audience
Engineers, architects, QA, support, DevOps engineers and security reviewers.
Direction of participation
| Direction | Count | Mechanism |
|---|---|---|
| Consumed integration events | 42 | Hosted consumer bound to the shared topic exchange |
| Published business events | 0 | No publisher, no outbox, no domain event |
| Published test messages | 1 path | The test-publish endpoint, using the shared event bus |
The service registers the shared messaging stack, which supplies an event bus. The startup comment records the reason plainly: the bus exists for the test-publish hook. No application service, dispatcher path or endpoint publishes a business event.
Event families consumed
| Family | Types | Owning service |
|---|---|---|
| Employee | 1 | Employee |
| Leave | 2 | Leave |
| Payroll | 2 | Payroll |
| Document | 1 | Document |
| Platform | 1 | Platform |
| Expense | 3 | Expense |
| Asset | 6 | Asset |
| Performance | 7 | Performance |
| Training and certification | 9 | Training |
| Helpdesk | 10 | Helpdesk |
| Total | 42 |
Owning services are attributed by family from the event names and the services that emit them. Per-event publisher confirmation belongs to each owning module's own event documentation.
What the service does with an event
Each consumed message is normalised into an envelope, resolved into zero or more notification intents by a single resolver, and processed by the dispatcher — idempotency, staleness, recipient upsert, preference evaluation, template rendering, message creation, bounded-retry delivery and audit.
An event type with no resolver case yields an empty intent list and is recorded as processed with a no-recipient outcome, so unmatched events are absorbed rather than failing.
Current maturity
Transitional. Consumption is complete and consistent across 42 types with idempotency and correlation in place, but there is no outbound event contract, no dead-letter wiring and no version negotiation.
Classification
Transitional.
Requires confirmation
Whether Notification is expected to publish delivery-outcome events for other modules to consume requires confirmation.
Related Articles
See Also
Keywords
- Notification database
- Events Overview Detail
- Draft database documentation
Source References
microservices/src/notification-service/Messaging/NotificationEventConsumer.csmicroservices/src/notification-service/Application/EventNotificationResolver.csmicroservices/src/notification-service/Api/NotificationEndpoints.csmicroservices/src/notification-service/Program.csmicroservices/src/shared-kernel/Extensions/MessagingExtensions.cs
Revision Information
- Status: Draft
- Last reviewed: 2026-07-21
- Review cycle: Quarterly