CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-labs/health-checks

Health check and readiness endpoints for web services — liveness probes,

97

3.61x
Quality

99%

Does it follow best practices?

Impact

94%

3.61x

Average score across 4 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-4/

{
  "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
    }
  ]
}

evals

tile.json