Bound /readyz so kubelet probes cannot hang the Service
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s

/readyz walked the hash chain and opened pooled connections with no
libpq connect_timeout, so a 2s kubelet probe never saw a response and
the pod stayed unready. Informed Decision accept is blocked on that.

Probe health() only, under a 1.5s budget, publish last-known
tamper_evidence, and fail TCP handshake in 1s. Integrity stays on
/v1/integrity.

Assistant: grok
Assistant-Session: 01a0a182-bab7-7f11-b32b-d06f3af52082
This commit is contained in:
tegwick 2026-09-14 22:13:55 +02:00
parent e7e054d8d6
commit b0e6792cf0
9 changed files with 276 additions and 18 deletions

View file

@ -9,7 +9,7 @@ flavor: implementation
owner: claude
topic_slug: railiance
created: "2026-08-29"
updated: "2026-09-11"
updated: "2026-09-14"
depends_on:
- AUDIT-WP-0007
state_hub_workstream_id: "46a96b03-bc08-53b5-9c93-4071adabf734"
@ -458,6 +458,13 @@ Remaining: token custody, the protected registry entry, operator manifest
application, and live ingestion evidence. No secret was created and no
production manifest applied.
**2026-09-14 production blocker:** Informed Decision accept is closed because
the live receiver has been Ready=false since 2026-09-11. `/healthz` is 200;
`/readyz` hangs past kubelet `timeoutSeconds: 2` (observed >8s). The hang is
the chain walk T01 placed on the probe path. Bounded `/readyz` (health only,
cached claim, libpq `connect_timeout`) is ADHOC-2026-09-14-T01; T11 still
needs a rolled image before live accept can resume.
### Factory sender deployment precondition — 2026-09-11