A release completed successfully, but the public API returns 503 because every ALB target is marked unhealthy.
Inspect target health before changing the application or instances.
Try: aws elbv2 describe-target-health --target-group-arn tg/payments-api
The ALB is routing again.
Both targets pass the exact readiness check and are eligible for traffic.
Lesson
When an ALB reports response-code mismatches, inspect the configured probe and test it directly. Keep health checks specific: fixing the path is safer than accepting every response as healthy.
Edit payments-api-target-group.tf
Change only the health-check path; keep the success matcher strict.