Skip to main content

LMS Integration Contracts

Summary

Verified inventory and common semantics of shared Training integration contracts.

Audience

Engineering, integration, QA, architecture, security, product, and consumer owners.

Reference Content

Nine outbound contract records are defined:

  • Training assignment, start, and completion
  • Assessment pass and failure
  • Certificate issue and approaching expiry
  • Session scheduling and rescheduling

All inherit the shared integration-event record and carry unique event identity, event name, occurrence time, optional correlation/causation and tenant/user context, source service, and integer schema version. Contract-specific payload categories are intentionally not reproduced.

ContractLifecycle trigger and producer evidenceDirection / invocationIdentity, correlation, tenant, versionConsumer recognitionAuthoritative source
TrainingAssignedEventTraining assignment operation calls the lifecycle helper.Outbound; invokedNew identity; correlation unset; tenant context present; v1Notification recognizes TrainingAssigned.Contract file; Training endpoint and DbContext helper
TrainingStartedEventTraining start operation calls the lifecycle helper.Outbound; invokedNew identity; correlation unset; tenant context present; v1Notification recognizes TrainingStarted.Contract file; Training endpoint and DbContext helper
TrainingCompletedEventTraining completion operation calls the lifecycle helper.Outbound; invokedNew identity; correlation unset; tenant context present; v1Notification recognizes TrainingCompleted.Contract file; Training endpoint and DbContext helper
AssessmentPassedEventAssessment submission conditionally selects the passed contract.Outbound; invoked conditionallyNew identity; correlation unset; tenant context present; v1Notification recognizes AssessmentPassed.Contract file; Training endpoint and DbContext helper
AssessmentFailedEventAssessment submission conditionally selects the failed contract.Outbound; invoked conditionallyNew identity; correlation unset; tenant context present; v1Notification recognizes AssessmentFailed.Contract file; Training endpoint and DbContext helper
CertificateIssuedEventCertificate issue operation calls the certificate helper.Outbound; invokedNew identity; correlation unset; tenant context present; v1Notification recognizes CertificateIssued.Contract file; Training endpoint and DbContext helper
CertificateExpiringSoonEventNo Training lifecycle trigger or construction was found.Outbound definition; uninvokedContract requires identity and supports optional correlation/tenant context; no producer version observedNotification recognizes CertificateExpiringSoon.Contract file; Notification resolver
TrainingSessionScheduledEventSession creation calls the session helper.Outbound; invokedNew identity; correlation unset; tenant context present; v1Notification recognizes TrainingSessionScheduled.Contract file; Training endpoint and DbContext helper
TrainingSessionRescheduledEventSession reschedule calls the session helper.Outbound; invokedNew identity; correlation unset; tenant context present; v1Notification recognizes TrainingSessionRescheduled.Contract file; Training endpoint and DbContext helper

“New identity” describes producer construction, not a delivery guarantee. Tenant context refers only to the presence of contract context; values are intentionally excluded.

Audit measureTotal
Outbound Training contracts9
Inbound Training contracts0
Invoked outbound contracts8
Defined but uninvoked contracts1
Distinct producer schema versions1

All invoked constructions use schema version 1. Producer helpers generate a new event identity and occurrence timestamp, supply tenant context, and currently pass no correlation/causation/user value. Notification recognizes all nine names, including the uninvoked expiry contract.

Source References

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

See Also

Keywords

  • LMS events
  • Training contracts
  • Source-backed integration

Revision Information

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