Skip to main content

Population Health Service — Service Risk Register

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

1. Risk Register

IDRiskProbabilityImpactOwnerMitigationStatus
RISK-PH-01DHIS2 API version breaking change from MoPH upgradeMediumHighPlatform teamAdapter version-pinned; smoke test on DHIS2 deploy events; staging environment mirrors MoPH DHIS2 versionOpen
RISK-PH-02De-identification k-threshold suppresses too many research records (small populations)HighMediumData governanceDocument suppression behavior clearly; provide analyst guidance on cohort design; allow aggregate-only fallback exportOpen
RISK-PH-03PHI leak via diagnostic logs or error messagesLowCriticalSecurity teamLog redaction enforced in telemetry layer; PHI audit in CI pipeline; structured log review in readiness gateOpen
RISK-PH-04MoPH indicator definitions change without noticeMediumHighMoPH integrationIndicator mapping stored in configurable YAML per tenant; versioned; change notification SLA agreed with MoPHOpen
RISK-PH-05Cohort refresh jobs overwhelm PostgreSQL during peak analytics loadMediumMediumSREJob concurrency limits; read replica routing for analytics queries; resource limits per jobOpen
RISK-PH-06Researcher misuses secondary-use export for re-identificationLowCriticalData governanceIRB reference required; de-identification enforced server-side; audit trail; presigned URL expires in 24hOpen
RISK-PH-07Offline facility aggregate reports diverge from server projection after long sync gapMediumMediumPlatform teamSync conflict policy documented in SYNC_CONTRACT; dataFreshness metadata visible in all responsesOpen
RISK-PH-08NATS stream full (14-day retention) causes event loss for slow consumersLowMediumSREMonitor consumer lag; alert before stream full; extend retention for long-term events (90-day policy for compliance events)Open
RISK-PH-09Differential privacy epsilon budget exhaustion across many sequential exportsLowMediumData governanceε budget tracked per cohort per period; refuse new exports when budget consumed; reset quarterlyOpen