Skip to content

Learning Domain Events

Why This Exists

This document defines domain events published by the Learning Domain.

Owner

The owner is the Chief Product Officer and Enterprise Architect.

Business Value

Learning events let Algosure connect education activity to notifications, analytics, organizational memory, and adjacent procurement workflows without breaking domain ownership.

Event Metadata

Every Learning event should include:

  • EventId.
  • EventType.
  • OccurredAt.
  • AggregateId.
  • OrganizationId where applicable.
  • UserId where applicable.
  • CausationId.
  • CorrelationId.
  • SourceDomain set to Learning.
  • SchemaVersion.

Event Catalogue

Event Trigger Payload Consumers Business value
CoursePublished A course is approved and made available. CourseId, version, level, target audience. Notification, Analytics. Announces new education assets.
LearningPathCreated A path is created for a goal or maturity segment. PathId, goal, steps, status. Analytics, Intelligence. Enables structured learning journeys.
UserEnrolled A user enrols in a course or path. UserId, OrganizationId, asset reference. Notification, Analytics. Tracks learning adoption.
LessonStarted A user starts a lesson. UserId, LessonId, started at. Analytics. Measures engagement.
LessonCompleted A user completes a lesson. UserId, LessonId, completion rule, timestamp. Analytics, Recommendation. Drives progress and next-step logic.
QuizAttemptSubmitted A quiz attempt is submitted and scored. AttemptId, QuizId, score, pass status. Progress, Analytics. Provides evidence of understanding.
PracticalExerciseSubmitted A practical exercise is submitted. SubmissionId, ExerciseId, review status. Progress, Intelligence. Captures applied learning evidence.
CertificateIssued Completion criteria are satisfied. CertificateId, UserId, asset reference, issue date. Notification, Analytics, Organization Memory. Provides learning completion evidence.
ProcurementMaturityAssessmentCompleted An assessment is scored. AssessmentId, OrganizationId, level, rubric version. Recommendation, Analytics, Intelligence. Identifies organizational learning maturity.
KnowledgeGapIdentified A learning gap is recorded. KnowledgeGapId, category, severity, evidence. Recommendation, Intelligence. Converts weaknesses into learning actions.
LearningRecommendationCreated A recommendation is created. RecommendationId, target asset, reason, priority. Notification, Analytics. Guides users to relevant learning.
AITutorSessionStarted A tutor session begins. SessionId, UserId, context references. Intelligence, Audit. Starts auditable tutor support.
AITutorSessionCompleted A tutor session ends. SessionId, summary, confidence, guardrail result. Progress, Analytics, Audit. Records learning support outcome.
OrganizationLearningProfileUpdated Organization learning state changes. ProfileId, maturity, gaps, progress summary. Analytics, Intelligence. Keeps organizational learning profile current.
UserProgressUpdated User progress changes. ProgressId, status, percentage, evidence. Notification, Analytics. Tracks learning journey.

Event Flow

sequenceDiagram
    participant Compliance
    participant Learning
    participant Intelligence
    participant Notification
    participant Analytics

    Compliance->>Learning: ComplianceGapDetected reference
    Learning->>Learning: Create KnowledgeGap
    Learning->>Intelligence: Request explanation support
    Intelligence-->>Learning: Tutor/recommendation reasoning
    Learning->>Learning: Create LearningRecommendation
    Learning-->>Notification: LearningRecommendationCreated
    Learning-->>Analytics: OrganizationLearningProfileUpdated

Cross-Domain Rule

Adjacent domains may trigger Learning decisions through events or commands. They must not directly create certificates, mutate progress, or mark Learning recommendations as complete.