Skip to main content

LMS Notification Integration

Summary

Notification’s resolver recognizes nine Training event names: assignment, start, completion, assessment pass/fail, certificate issue/expiring, and session schedule/reschedule. Training has confirmed producers for eight; expiring-certificate production is absent.

There is no synchronous Notification HTTP call. Notification owns intent resolution, templates/preferences, recipient processing, idempotency ledger, channel retry, and delivery outcome. Training only stages outbox intent. Because no Training relay trigger is confirmed, actual publication maturity requires confirmation.

A successful Training request or outbox row does not prove Notification receipt or end-user delivery. Payload content, personal records, and delivery configuration are excluded.

Requires confirmation

Fine-grained authorization, production ownership, operational governance, and future architectural boundaries require confirmation where not implemented.

Source References

  • microservices/src/contracts/Events/TrainingLifecycleEvents.cs
  • microservices/src/training-service/Infrastructure/TrainingDbContext.cs
  • microservices/src/notification-service/Application/EventNotificationResolver.cs
  • microservices/src/notification-service/Application/NotificationDispatcher.cs

See Also

Keywords

  • LMS technical architecture
  • Source-backed implementation

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-17
  • Review cycle: Quarterly