-- 0010_app_state.sql
--
-- Generischer Key-Value-Store für kleine, langlebige Backend-Zustände, die
-- Prozess-Neustarts überleben müssen, aber kein eigenes Schema rechtfertigen.
--
-- Erster Nutzer: die GSD/DOCUframe-Session-Id. Der GSD-Server „blockt" einen
-- Lizenz-Seat pro Session, bis die Session abläuft oder via
-- `/v1/license/release` freigegeben wird. Ginge die Session-Id bei einem
-- Backend-Neustart verloren (reiner In-Memory-Cache), bliebe der Seat
-- verwaist geblockt — bei wiederholten Neustarts droht ein Lizenz-Lockout.
-- Deshalb persistieren wir die Id hier durabel (überlebt Restart UND
-- Redeploy, da im DB-Volume) und können sie wiederverwenden bzw. gezielt
-- freigeben.
CREATE TABLE app_state (
    key        TEXT PRIMARY KEY,
    value      TEXT NOT NULL,
    updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
