-- Aufträge dürfen jetzt auch „failed" sein (alle Positionen fehlgeschlagen) → rot in der Übersicht.
ALTER TABLE jobs DROP CONSTRAINT IF EXISTS jobs_status_check;
ALTER TABLE jobs ADD CONSTRAINT jobs_status_check
  CHECK (status IN ('queued','running','paused','done','cancelled','failed'));

-- Ausgabeformat der Bilddatei: global (settings) + optionaler Rezept-Override.
-- „png" = verlustfrei (Standard, nötig für Transparenz), „jpg" = klein/Picdrop-freundlich.
ALTER TABLE settings ADD COLUMN IF NOT EXISTS output_ext text NOT NULL DEFAULT 'png'
  CHECK (output_ext IN ('png','jpg'));
ALTER TABLE recipes  ADD COLUMN IF NOT EXISTS output_ext text
  CHECK (output_ext IN ('png','jpg'));
