ProblemThe gateway /health returns 200 if it itself is up, ignoring downstream (DB, Redis, Horizon) status, so load balancers keep traffic flowing to a degraded gateway.
- Downstream failures don't affect status code.
- No readiness vs liveness split.
- LB keeps routing.
Solution
- Return 503 for readiness when critical dependents fail.
- Separate liveness from readiness.
- Test the 503 path.
Acceptance Criteria
- Degraded gateway reports 503 on readiness.
- Liveness stays 200.
pnpm --filter api-gateway build passes.
Note for Contributors: Write a clear PR description. Show the readiness 503.
ProblemThe gateway
/healthreturns 200 if it itself is up, ignoring downstream (DB, Redis, Horizon) status, so load balancers keep traffic flowing to a degraded gateway.Solution
Acceptance Criteria
pnpm --filter api-gateway buildpasses.Note for Contributors: Write a clear PR description. Show the readiness 503.