Health check and readiness endpoints for web services — liveness probes,
97
99%
Does it follow best practices?
Impact
94%
3.61xAverage score across 4 eval scenarios
Passed
No known issues
{
"context": "Tests whether the agent proactively adds health check endpoints AND Kubernetes probe configuration when building a service explicitly deployed in Kubernetes with multiple dependencies (PostgreSQL + Redis). The task mentions Kubernetes and service mesh but never asks for health checks or probes.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Liveness endpoint exists",
"description": "A GET /health endpoint exists that returns 200 with a JSON body containing a status field. It does NOT check PostgreSQL or Redis.",
"max_score": 12
},
{
"name": "Readiness endpoint checks both dependencies",
"description": "A GET /ready endpoint exists that checks BOTH the PostgreSQL database (e.g. pool.query('SELECT 1')) AND Redis (e.g. redis.ping()) and returns 200 when all are healthy or 503 when any is unreachable.",
"max_score": 14
},
{
"name": "Readiness returns per-dependency status",
"description": "The readiness response includes individual check results for each dependency (e.g. {\"checks\": {\"database\": \"ok\", \"redis\": \"ok\"}}) so operators can identify which dependency failed.",
"max_score": 10
},
{
"name": "Liveness does not check dependencies",
"description": "The /health (liveness) endpoint does NOT query PostgreSQL, Redis, or any external dependency. It only confirms the process is running.",
"max_score": 10
},
{
"name": "Kubernetes liveness probe configured",
"description": "The k8s/deployment.yaml includes a livenessProbe that hits /health with appropriate periodSeconds and failureThreshold settings.",
"max_score": 10
},
{
"name": "Kubernetes readiness probe configured",
"description": "The k8s/deployment.yaml includes a readinessProbe that hits /ready with appropriate periodSeconds and failureThreshold settings.",
"max_score": 10
},
{
"name": "Health endpoints excluded from auth/logging",
"description": "Health check endpoints are excluded from authentication middleware, request logging, or rate limiting if any of those are configured.",
"max_score": 8
},
{
"name": "503 for unhealthy readiness",
"description": "When any dependency is down, the readiness endpoint returns 503 (Service Unavailable).",
"max_score": 6
},
{
"name": "Order endpoints functional",
"description": "All four order endpoints (POST create, GET by ID, GET by customer, PATCH status) are implemented with appropriate status codes.",
"max_score": 10
},
{
"name": "Kubernetes deployment manifest valid",
"description": "The k8s/deployment.yaml is a valid Kubernetes Deployment with container spec, port configuration, and resource requests/limits.",
"max_score": 10
}
]
}