LMS Outbox Troubleshooting
Symptoms
Expected outbox intent is absent, records remain pending/failed, or downstream delivery is assumed from local state.
Scope
Training contract staging, outbox store, shared processor behavior, and missing trigger.
Cause
Likely causes
Operation does not emit an event; validation/save failed; producer helper not invoked; processor never triggered; publish failure if invoked; no terminal retry/replay/cleanup ownership.
Safe diagnostic steps
- Confirm the operation is one of eight invoked contract types.\n2. Review sanitized status/retry/time/correlation-presence categories.\n3. Confirm Training has no registered trigger.\n4. Never inspect or expose payloads.
Resolution
Safe resolution
Escalate missing staging or relay ownership through engineering. Do not invoke processors, replay, edit status, delete rows, or connect to messaging.
Validation
In isolated testing, confirm local state and outbox intent share the expected save boundary; do not claim delivery.
Evidence to collect
Collect only environment category, time window, capability/route, status or error category, sanitized correlation reference, lifecycle state category, and recent approved change context.
Escalation
Staging to Training; processor/transport ownership Requires confirmation; recognition/delivery to Notification.
Related documentation
Source References
microservices/src/training-service/Infrastructure/Persistence.csmicroservices/src/shared-kernel/Messaging/OutboxProcessor.csmicroservices/src/training-service/Program.cs
Summary
This Draft page provides non-destructive, source-backed diagnosis and stops where recovery authority is not confirmed.
Audience
LMS users, support, operations, engineering, QA, architecture, security, and implementation teams.
Overview
Use supported reads and sanitized evidence. Never expose personal learning data, credentials, configuration values, infrastructure details, or operational commands.
Related Articles
See Also
Keywords
- LMS troubleshooting
- Safe diagnostics
Revision Information
- Status: Draft
- Last reviewed: 2026-07-17
- Review cycle: Quarterly