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.
| Contract | Lifecycle trigger and producer evidence | Direction / invocation | Identity, correlation, tenant, version | Consumer recognition | Authoritative source |
|---|---|---|---|---|---|
| TrainingAssignedEvent | Training assignment operation calls the lifecycle helper. | Outbound; invoked | New identity; correlation unset; tenant context present; v1 | Notification recognizes TrainingAssigned. | Contract file; Training endpoint and DbContext helper |
| TrainingStartedEvent | Training start operation calls the lifecycle helper. | Outbound; invoked | New identity; correlation unset; tenant context present; v1 | Notification recognizes TrainingStarted. | Contract file; Training endpoint and DbContext helper |
| TrainingCompletedEvent | Training completion operation calls the lifecycle helper. | Outbound; invoked | New identity; correlation unset; tenant context present; v1 | Notification recognizes TrainingCompleted. | Contract file; Training endpoint and DbContext helper |
| AssessmentPassedEvent | Assessment submission conditionally selects the passed contract. | Outbound; invoked conditionally | New identity; correlation unset; tenant context present; v1 | Notification recognizes AssessmentPassed. | Contract file; Training endpoint and DbContext helper |
| AssessmentFailedEvent | Assessment submission conditionally selects the failed contract. | Outbound; invoked conditionally | New identity; correlation unset; tenant context present; v1 | Notification recognizes AssessmentFailed. | Contract file; Training endpoint and DbContext helper |
| CertificateIssuedEvent | Certificate issue operation calls the certificate helper. | Outbound; invoked | New identity; correlation unset; tenant context present; v1 | Notification recognizes CertificateIssued. | Contract file; Training endpoint and DbContext helper |
| CertificateExpiringSoonEvent | No Training lifecycle trigger or construction was found. | Outbound definition; uninvoked | Contract requires identity and supports optional correlation/tenant context; no producer version observed | Notification recognizes CertificateExpiringSoon. | Contract file; Notification resolver |
| TrainingSessionScheduledEvent | Session creation calls the session helper. | Outbound; invoked | New identity; correlation unset; tenant context present; v1 | Notification recognizes TrainingSessionScheduled. | Contract file; Training endpoint and DbContext helper |
| TrainingSessionRescheduledEvent | Session reschedule calls the session helper. | Outbound; invoked | New identity; correlation unset; tenant context present; v1 | Notification 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 measure | Total |
|---|---|
| Outbound Training contracts | 9 |
| Inbound Training contracts | 0 |
| Invoked outbound contracts | 8 |
| Defined but uninvoked contracts | 1 |
| Distinct producer schema versions | 1 |
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.csmicroservices/src/contracts/Events/TrainingLifecycleEvents.csmicroservices/src/training-service/Infrastructure/TrainingDbContext.csmicroservices/src/notification-service/Application/EventNotificationResolver.cs
Related Articles
See Also
Keywords
- LMS events
- Training contracts
- Source-backed integration
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly