-- Backup für beliebige Ziele, Metadaten-Beileger, API-Token für externen Zugriff (MCP).

-- Jedes Zusatzziel kann als Backup-Ziel markiert werden (erhält ALLE Ergebnisse).
ALTER TABLE delivery_targets ADD COLUMN IF NOT EXISTS is_backup bool NOT NULL DEFAULT false;

-- Metadaten als begleitende .md-Datei mitschicken (Prompt, Dateiname, Modell …).
ALTER TABLE settings ADD COLUMN IF NOT EXISTS metadata_sidecar bool NOT NULL DEFAULT false;

-- API-Token für programmatischen Zugriff (Klarbild-MCP / Automationen).
ALTER TABLE settings ADD COLUMN IF NOT EXISTS api_token text;

-- Backup-Status je Ziel und Position (für „auf mehreren Zielen gesichert").
CREATE TABLE IF NOT EXISTS item_backups (
  item_id   uuid REFERENCES items(id) ON DELETE CASCADE,
  target    text NOT NULL,            -- 'nas' | delivery_target-UUID
  status    text NOT NULL DEFAULT 'mirrored' CHECK (status IN ('mirrored','failed')),
  at        timestamptz NOT NULL DEFAULT now(),
  PRIMARY KEY (item_id, target)
);
