POST /antraege berechnet und speichert direkt beim Einreichen eine
append-only bewertung (Datenklasse, KI-VO-Einstufung, Anforderungen,
zulässige/ausgeschlossene Werkzeuge), GET /antraege/{id} zeigt sie
inklusive Herleitung und dem Pflicht-Hinweis, dass das System nicht
entscheidet, sondern nur vorbereitet.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
27 lines
1.2 KiB
SQL
27 lines
1.2 KiB
SQL
-- Bewertung: der berechnete Vorschlag für einen Antrag (Datenklasse,
|
|
-- KI-VO-Einstufung, Anforderungsprofil, zulässige/ausgeschlossene
|
|
-- Werkzeuge mit Herleitung). Append-only wie finding/extraction im
|
|
-- alten Produkt — eine neue Bewertung (z. B. nach Änderung der
|
|
-- Antworten oder des Katalogs) ergänzt die alte, ersetzt sie nicht;
|
|
-- die Historie bleibt für den Audit erhalten. regelwerk_version und
|
|
-- katalog_version werden zum Berechnungszeitpunkt eingefroren.
|
|
CREATE TABLE bewertung (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
antrag_id UUID NOT NULL REFERENCES antrag (id),
|
|
datenklasse TEXT NOT NULL,
|
|
datenklasse_herleitung TEXT NOT NULL,
|
|
einstufung TEXT NOT NULL,
|
|
einstufung_herleitung TEXT NOT NULL,
|
|
verboten BOOLEAN NOT NULL DEFAULT false,
|
|
anforderungen JSONB NOT NULL DEFAULT '[]',
|
|
zulaessige_werkzeuge TEXT[] NOT NULL DEFAULT '{}',
|
|
ausgeschlossene_werkzeuge JSONB NOT NULL DEFAULT '[]',
|
|
regelwerk_version TEXT NOT NULL,
|
|
katalog_version TEXT NOT NULL,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE TRIGGER bewertung_append_only
|
|
BEFORE UPDATE OR DELETE ON bewertung
|
|
FOR EACH ROW EXECUTE FUNCTION forbid_update_delete();
|