Immunizations Service — Service Risk Register
Status: populated Owner: TBD Last updated: 2026-04-18 Companion: Service Template
Risk Register
| ID | Risk | Likelihood | Impact | Owner | Mitigation |
|---|---|---|---|---|---|
| RISK-IMM-01 | Incorrect dose sequence recorded due to offline sync conflict | Medium | High | Clinical Lead | clientMutationId deduplication; vaccination officer review workflow for duplicates |
| RISK-IMM-02 | EPI schedule update not reflected in forecasts | Medium | High | DevOps | Schedule cached with TTL 24h; change notification mechanism planned; admin cache-refresh endpoint |
| RISK-IMM-03 | Deceased patient remains on defaulter outreach list | Medium | Medium | Integration Lead | Subscribe to REGISTRATION.patient.vital-status-changed; suppress asynchronously |
| RISK-IMM-04 | Contraindication not checked due to service unavailability | Low | High | Platform Lead | Contraindication data stored locally; check performed in-process, not via remote call |
| RISK-IMM-05 | National registry sync failure causes data divergence | Medium | Medium | Integration Lead | Registry sync jobs tracked with status; alert on sustained failure; manual resync available |
| RISK-IMM-06 | Coverage materialized view stale during cron failure | Low | Low | DevOps | Hourly cron + event-driven refresh; alert on cron failure; manual refresh available |
| RISK-IMM-07 | Digital certificate signed with expired key | Low | High | Security Lead | Certificate signing key rotation process; key expiry monitoring alert |
| RISK-IMM-08 | Forecast engine returns incorrect due dates for edge-case EPI schedule entries | Low | High | Clinical Lead | Comprehensive unit test suite for all EPI schedule antigens; clinical validation before go-live |
| RISK-IMM-09 | Tenant cross-contamination in coverage report | Low | Critical | Platform Lead | RLS policies tested in tenant-isolation.integration.spec.ts; coverage views include tenant_id filter |