Skip to main content

Scheduling Service — Failure Modes

Status: populated Owner: TBD Last updated: 2026-04-17 Companion: Service Template

1. Failure Catalog

IDFailureUser ImpactDetectionMitigation
FM-SCHED-01PostgreSQL unavailableAll scheduling operations failHealthcheck readiness probe; alertReplica promotion; retry on reconnect
FM-SCHED-02NATS unavailableBookings persist but no events publishedOutbox lag metric alertOutbox relay retries when NATS recovers
FM-SCHED-03Slot reservation race conditionTwo users book same slot simultaneouslyUnique index constraint violation → one gets 409Atomic slot status update via DB transaction + unique index
FM-SCHED-04Reminder dispatch failurePatient misses appointment reminderReminder failure rate alertAsync retry up to 3×; dead-letter queue; patient can check portal
FM-SCHED-05registration-service events delayedDeceased patient appointments not auto-cancelled promptlyMonitoring on event lagEventual consistency; staff UI shows deceased flag; manual cancellation
FM-SCHED-06HL7 SIU inbound parse failureExternal system appointment not reflectedDead-letter queue alertDead-letter queue; manual reprocessing runbook
FM-SCHED-07Clock skew causing timezone rendering errorAppointments displayed at wrong timeUser report; monitoring on slot/appointment time deltasTimezone stored as IANA string; all timestamps UTC; client renders using schedule timezone
FM-SCHED-08Waitlist auto-fill event published but patient not reachablePatient misses waitlist offerReminder dispatch failure metricRetry reminder; SLA window for patient response before auto-expiry
FM-SCHED-09Redis unavailable (reminder queue)Scheduled reminders not dispatchedRedis health alertReminders delayed; catch-up dispatch on Redis restore