Skip to content

Recover from Failures

Use this only after diagnosis. Restore durable state, then services, then evidence and access-safety freshness.

  1. Freeze rollouts and risky traffic.
  2. Restore Postgres, then Redis.
  3. Restore API, STS, Gateway, Audit, Coordinator, and web readiness.
  4. Drain outboxes, pending entries, audit replay, and DLQ.
  5. Prove policy and revocation freshness.
  6. Run canary allow/deny and locate audit evidence.
FailureRecovery
PostgresRestore connectivity/capacity, migrations and pools, then outboxes
RedisRestore persistence/noeviction, groups and pending entries, then replay
STSRestore stores, policy bundle, signing/KEK, JWKS, Gateway HMAC
GatewayRestore STS exchange, binding, revocation, egress, replay
AuditRestore stores/HMAC, drain replay/DLQ, check tamper state
CoordinatorRestore stores, service token, outbox, workers

audit_replay_unavailable can clear after storage recovers. audit_evidence_lost is latched: preserve evidence, scope the interval, then replace the process as an incident action.

Readiness passes; queues are drained/understood; revoked sessions deny; current policy applies; audit records canaries.

Return to preserved config/dependency snapshot if repair worsens state. Database restore is separate destructive recovery.

Rehearse Run Failure Drills.