-- KI-Anbieter mit OpenAI-kompatibler Schnittstelle und eigener Adresse -- ==================================================================== -- Ergänzt die drei festen Anbieter aus 0038 um einen vierten, dessen -- Adresse die Verwaltung selbst einträgt — z. B. ein Hoster mit Sitz und -- Verarbeitung in der EU oder ein selbst betriebenes Modell. Nur additiv: -- neue Spalten und eine erweiterte Prüfregel. alter table public.site_settings add column if not exists ai_compatible_name text, add column if not exists ai_compatible_base_url text, add column if not exists ai_compatible_key text, add column if not exists ai_compatible_model text; -- Die Prüfregel aus 0038 hat einen automatisch vergebenen Namen; sie wird -- über ihre Definition gefunden und mit 'compatible' neu angelegt. do $$ declare c record; begin for c in select conname from pg_constraint where conrelid = 'public.site_settings'::regclass and contype = 'c' and pg_get_constraintdef(oid) like '%ai_active_provider%' loop execute format('alter table public.site_settings drop constraint %I', c.conname); end loop; end $$; alter table public.site_settings add constraint site_settings_ai_active_provider_check check (ai_active_provider in ('anthropic', 'openai', 'openrouter', 'compatible')); -- Nur verschlüsselte Verbindungen: Über die Schnittstelle gehen -- personenbezogene Daten. alter table public.site_settings drop constraint if exists site_settings_ai_compatible_base_url_https; alter table public.site_settings add constraint site_settings_ai_compatible_base_url_https check (ai_compatible_base_url is null or ai_compatible_base_url ~ '^https://');