authdb (20260405+4) unstable; urgency=medium

  * Install index.h public header (fixes mediadb/blogi build against
    installed authdb: session.h includes index.h)

 -- Jan Koester <jan.koester@tuxist.de>  Sun, 05 Apr 2026 00:00:00 +0200

authdb (20260405+3) unstable; urgency=medium

  * Add cluster health monitor thread: probes peers every 10s, tracks
    degraded state, logs recovery
  * Skip cluster session fetch when degraded to avoid blocking logins
  * Reduce fetchSession lock timeout from 5s to 2s
  * pushSession synchronous again (cluster root cause fixed in paritypp)

 -- Jan Koester <jan.koester@tuxist.de>  Sun, 05 Apr 2026 00:00:00 +0200

authdb (20260405+2) unstable; urgency=medium

  * Fix AdminController using value copy of AuthBackend instead of
    reference — wizard data was invisible to login handler
  * Make backend push and session push non-blocking (background threads)
    so cluster timeouts don't block HTTP responses
  * Don't delete local session when cluster fetch fails (peers unreachable)
  * Return JSON 503 for /api requests when backend is uninitialized
    instead of wizard HTML page (fixes "unexpected character" in clients)

 -- Jan Koester <jan.koester@tuxist.de>  Sun, 05 Apr 2026 00:00:00 +0200

authdb (20260405+1) unstable; urgency=medium

  * Fix ClusterBackend constructor overwriting existing cluster data:
    no longer pushes empty header to cluster on startup (prevents
    wizard data loss when second node starts)
  * Retry fetchFromCluster up to 3 times during constructor init

 -- Jan Koester <jan.koester@tuxist.de>  Sun, 05 Apr 2026 00:00:00 +0200

authdb (20260405) unstable; urgency=medium

  * Vacuum cluster block stores on all nodes when cluster mode is active

 -- Jan Koester <jan.koester@tuxist.de>  Sun, 05 Apr 2026 00:00:00 +0200

authdb (20260404+3) unstable; urgency=medium

  * Rebuild against libparitypp 20260404+9 (stripe-based parity, 16KB chunks)

 -- Jan Koester <jan.koester@tuxist.de>  Fri, 04 Apr 2026 18:30:00 +0200

authdb (20260403+2) unstable; urgency=medium

  * Switch cluster from RAID1 mirroring to erasure coding (k+m shards)
  * Remove local in-memory session/data stores, use distributed storage
  * Sessions and data ops distributed via erasure-coded pclient->store/retrieve
  * listAllSessions enumerates groups across all cluster nodes

 -- Jan Koester <jan.koester@tuxist.de>  Fri, 04 Apr 2026 09:00:00 +0200

authdb (20260401) unstable; urgency=medium

  * Initial Debian packaging with multiarch support.

 -- Jan Koester <jan.koester@tuxist.de>  Wed, 01 Apr 2026 00:00:00 +0200
