Skip to main content

LMS Certificate Events

Summary​

Certificate issue emits a contract; the expiring-soon contract exists and is recognized but is not produced by Training.

Audience​

Engineering, integration, QA, architecture, security, product, and support reviewers.

Reference Content​

CertificateIssuedEvent is constructed by the issue operation, staged in the outbox, and saved with certificate state. Existing-state checks prevent duplicate issue through the implemented path. Notification recognizes this contract.

CertificateExpiringSoonEvent is a shared outbound contract with a schema-version field, and Notification recognizes its event name, but no Training producer invocation or producer version was found. Expiry scheduling is therefore Not implemented. Document generation is an HTTP dependency and does not emit a verified integration contract. Revocation, renewal, document-compensation, and other certificate lifecycle events were not found.

Source References​

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

See Also​

Keywords​

  • Certificate issue
  • Expiry contract
  • Document boundary

Revision Information​

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