Registration Service — Service Readiness
Status: populated
Owner: TBD
Last updated: 2026-04-17
Companion: Service Template · DEFINITION_OF_DONE
Production Readiness Gate
All items below must be ✅ before the service is promoted to production.
Documentation
| Gate | Status | Notes |
|---|
| All 17 canonical docs populated (no stubs) | ⬜ | In progress |
| EPICS.md and USER_STORIES.md written | ⬜ | In progress |
| OpenAPI spec generated and published | ⬜ | |
| FHIR CapabilityStatement declared | ⬜ | |
Code Quality
| Gate | Status | Notes |
|---|
| TypeScript strict mode, zero errors | ⬜ | |
| ESLint domain import-restriction passes | ⬜ | |
| Line coverage ≥ 80% overall | ⬜ | |
| Critical-path coverage ≥ 90% (MPI, merge, vital status) | ⬜ | |
Tests
| Gate | Status | Notes |
|---|
tenant-isolation.integration.spec.ts passes | ⬜ | Mandatory |
outbox.integration.spec.ts passes | ⬜ | Mandatory |
inbox.integration.spec.ts passes | ⬜ | Mandatory |
| Pact consumer tests green | ⬜ | |
| Event schema conformance tests green | ⬜ | |
Infrastructure
| Gate | Status | Notes |
|---|
| DB migrations idempotent and reversible | ⬜ | |
| RLS policies verified in integration tests | ⬜ | |
pg_trgm extension enabled in target DB | ⬜ | |
| Readiness + liveness probes configured | ⬜ | |
| HPA configured with correct thresholds | ⬜ | |
Observability
| Gate | Status | Notes |
|---|
| OpenTelemetry traces visible in staging Grafana | ⬜ | |
| All SLO alerts configured with runbooks | ⬜ | |
| Outbox lag alert firing + tested | ⬜ | |
Security
| Gate | Status | Notes |
|---|
| No secrets in source code | ⬜ | |
| Portrait encryption key configured in secret manager | ⬜ | |
ModuleEntitlementGuard tested (403 on missing license) | ⬜ | |
| Break-glass audit path verified end-to-end | ⬜ | |
Operations
| Gate | Status | Notes |
|---|
| Canary deploy (5% / 30 min) completed in staging | ⬜ | |
| Rollback verified | ⬜ | |
| On-call rotation assigned | ⬜ | |
| SERVICE_READINESS.md signed off by tech lead + SRE | ⬜ | |