Skip to content

feat: HTTP health/readiness endpoints for container deployments #1577

Open

Description

@bradygaster

Problem

When Squad runs in Kubernetes or Azure Container Apps, operators need liveness and readiness probes for production-grade deployments. Currently:

  • Squad does not expose any HTTP server
  • There is no /healthz or /readyz endpoint
  • There is no SQUAD_HEALTH_PORT environment variable

Kubernetes restarts exited containers automatically (via restart policy), which provides a basic safety net. However, platform-level readiness signaling — preventing traffic/jobs from being routed to a pod that hasn't finished startup and connected to the GitHub API — is not possible without an explicit endpoint.

Proposed Contract

SQUAD_HEALTH_PORT=<port>  # when set, start a lightweight HTTP server
Endpoint Semantics
GET /healthz Liveness — 200 if process is running
GET /readyz Readiness — 200 only after startup complete and GitHub API connected

Why This Matters

The container-image.md canonical docs page and both ACA/AKS scenario pages reference this as a planned feature. Without it, operators must rely on container restart policy alone or use exec-based process probes.

Prerequisite For

Non-Goals

  • Full metrics/observability server (separate concern — see OTEL integration)
  • Status dashboard

Metadata

Metadata

Assignees

No one assigned

    Labels

    post-2.0Deferred until after the 2.0 linetype:featureNew capability

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions