Skip to content

v0.1.25.43 — production readiness: Redis health contributor, requestId MDC, stateless security hardening

Choose a tag to compare

@amavashev amavashev released this 25 Jun 16:28
· 139 commits to main since this release
e416c0e

[benchmark-skip] — Infra/ops-only release (Redis health contributor, requestId MDC, stateless Spring Security config). No hot-path, Lua, or wire change. The release benchmark gate flaked on reserve_p50 only (runner noise: bounced 3.9–4.4 ms vs ~3.5 ms normal, <1% over threshold on a single metric while all others passed); bypassed per the workflow's documented policy for infra-only releases that the benchmark cannot meaningfully measure.

[0.1.25.43] — 2026-06-25

Fixed

  • /actuator/health/readiness now includes a Redis PING health contributor.
    Container, Dockerfile, and release-smoke healthchecks now use readiness and go
    unhealthy when the ledger dependency is unreachable instead of reporting a
    live HTTP process as healthy while API operations return Redis-backed 5xx
    errors. /actuator/health/liveness remains process-only.
  • RequestIdFilter now places requestId in MDC for the lifetime of each
    request, matching the operations runbook and making structured logs
    consistently joinable by both requestId and traceId.
  • Spring Security is now explicitly stateless/API-key-only: HTTP Basic, form
    login, logout, and Spring Boot's generated default user autoconfiguration are
    disabled.
  • Redis connection failures during API-key validation now log one concise
    redis_unavailable warning instead of a full stack trace per affected
    request; unexpected validation exceptions still keep stack traces.
  • Production Compose examples now point at the 0.1.25.43 image tag.

Compatibility

  • Operational readiness change only. No HTTP API schema, Redis data model, Lua,
    event, evidence, or protocol behavior change. The unauthenticated readiness
    endpoint can now return DOWN/503 when Redis is unavailable.