Skip to content

v0.5.0

Choose a tag to compare

@phihos phihos released this 14 Oct 16:41

[0.5.0] - 2026-10-08

HAPTIC 0.5 can restore HAProxy capacity during a controller restart or leader
change even when rendering is blocked. New pods load a retained, acknowledged
configuration after ownership, freshness, and current-HAProxy validation checks.

Before upgrading: retained recovery needs a successful deployment by a 0.5
controller before it can protect replacement pods. Read the
upgrade notes for this requirement
and the limits of serving retained endpoint lists.

Added

  • New HAProxy pods can load an acknowledged configuration retained in Kubernetes when a fresh leader cannot render, with current-binary validation, Warning events, and haptic_retained_config_active.
  • /healthz includes the last render failure without changing startup, readiness, or liveness decisions.

Fixed

  • Reduce controller startup time and temporary allocations while preserving every validation check and the existing memory budget.
  • Endpoint updates and admission requests no longer wait for each other's HAProxy validation checks.
  • Prevent repeated status writes across reconciliation phases from making valid Kubernetes updates time out.
  • Verified agent-state reads no longer race HAProxy reloads and invalidate the confirmed worker configuration.

Helm chart

Added

  • The bundled PrometheusRule alerts when a controller uses retained configuration while rendering is blocked.

Fixed

  • Gateway API: catch-all GRPCRoutes select the most specific hostname even when a broader route is older or its name sorts first.