Files
breakpilot-compliance/ai-compliance-sdk/internal/ucca/ai_act_obligations.go
Sharang Parnerkar c293d76e6b refactor(go/ucca): split policy_engine, legal_rag, ai_act, nis2, financial_policy, dsgvo_module
Split 6 oversized files (719–882 LOC each) into focused files under 500 LOC:
- policy_engine.go → types, loader, eval, gen (4 files)
- legal_rag.go     → types, client, http, context, scroll (5 files)
- ai_act_module.go → module, yaml, obligations (3 files)
- nis2_module.go   → module, yaml, obligations + shared obligation_yaml_types.go (3+1 files)
- financial_policy.go → types, engine (2 files)
- dsgvo_module.go  → module, yaml, obligations (3 files)

All in package ucca, zero exported symbol renames, go test ./internal/ucca/... passes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 09:48:41 +02:00

224 lines
12 KiB
Go

package ucca
import "time"
// loadHardcodedObligations populates the AI Act module with built-in fallback data.
func (m *AIActModule) loadHardcodedObligations() {
prohibitedPracticesDeadline := time.Date(2025, 2, 2, 0, 0, 0, 0, time.UTC)
transparencyDeadline := time.Date(2026, 8, 2, 0, 0, 0, 0, time.UTC)
gpaiDeadline := time.Date(2025, 8, 2, 0, 0, 0, 0, time.UTC)
m.obligations = []Obligation{
{
ID: "AIACT-OBL-001",
RegulationID: "ai_act",
Title: "Verbotene KI-Praktiken vermeiden",
Description: "Sicherstellung, dass keine verbotenen KI-Praktiken eingesetzt werden (Social Scoring, Ausnutzung von Schwaechen, unterschwellige Manipulation, unzulaessige biometrische Identifizierung).",
LegalBasis: []LegalReference{{Norm: "Art. 5 AI Act", Article: "Verbotene Praktiken"}},
Category: CategoryCompliance,
Responsible: RoleManagement,
Deadline: &Deadline{Type: DeadlineAbsolute, Date: &prohibitedPracticesDeadline},
Sanctions: &SanctionInfo{MaxFine: "35 Mio. EUR oder 7% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "KI-Inventar mit Risikobewertung", Required: true}, {Name: "Dokumentierte Pruefung auf verbotene Praktiken", Required: true}},
Priority: PriorityCritical,
AppliesWhen: "uses_ai",
},
{
ID: "AIACT-OBL-002",
RegulationID: "ai_act",
Title: "Risikomanagementsystem fuer Hochrisiko-KI",
Description: "Einrichtung eines Risikomanagementsystems fuer Hochrisiko-KI-Systeme: Risikoidentifikation, -bewertung, -minderung und kontinuierliche Ueberwachung.",
LegalBasis: []LegalReference{{Norm: "Art. 9 AI Act", Article: "Risikomanagementsystem"}},
Category: CategoryGovernance,
Responsible: RoleKIVerantwortlicher,
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Risikomanagement-Dokumentation", Required: true}, {Name: "Risikobewertungen pro KI-System", Required: true}},
Priority: PriorityCritical,
AppliesWhen: "high_risk",
ISO27001Mapping: []string{"A.5.1.1", "A.8.2"},
},
{
ID: "AIACT-OBL-003",
RegulationID: "ai_act",
Title: "Technische Dokumentation erstellen",
Description: "Erstellung umfassender technischer Dokumentation vor Inverkehrbringen: Systembeschreibung, Design-Spezifikationen, Entwicklungsprozess, Leistungsmetriken.",
LegalBasis: []LegalReference{{Norm: "Art. 11 AI Act", Article: "Technische Dokumentation"}},
Category: CategoryGovernance,
Responsible: RoleKIVerantwortlicher,
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Technische Dokumentation nach Anhang IV", Required: true}, {Name: "Systemarchitektur-Dokumentation", Required: true}},
Priority: PriorityHigh,
AppliesWhen: "high_risk_provider",
},
{
ID: "AIACT-OBL-004",
RegulationID: "ai_act",
Title: "Protokollierungsfunktion implementieren",
Description: "Hochrisiko-KI-Systeme muessen automatische Protokolle (Logs) erstellen: Nutzungszeitraum, Eingabedaten, Identitaet der verifizierenden Personen.",
LegalBasis: []LegalReference{{Norm: "Art. 12 AI Act", Article: "Aufzeichnungspflichten"}},
Category: CategoryTechnical,
Responsible: RoleITLeitung,
Deadline: &Deadline{Type: DeadlineRelative, Duration: "Aufbewahrung mindestens 6 Monate"},
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Log-System-Dokumentation", Required: true}, {Name: "Aufbewahrungsrichtlinie", Required: true}},
Priority: PriorityHigh,
AppliesWhen: "high_risk",
ISO27001Mapping: []string{"A.12.4"},
},
{
ID: "AIACT-OBL-005",
RegulationID: "ai_act",
Title: "Menschliche Aufsicht sicherstellen",
Description: "Hochrisiko-KI muss menschliche Aufsicht ermoeglichen: Verstehen von Faehigkeiten und Grenzen, Ueberwachung, Eingreifen oder Abbrechen koennen.",
LegalBasis: []LegalReference{{Norm: "Art. 14 AI Act", Article: "Menschliche Aufsicht"}},
Category: CategoryOrganizational,
Responsible: RoleKIVerantwortlicher,
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Aufsichtskonzept", Required: true}, {Name: "Schulungsnachweise fuer Bediener", Required: true}, {Name: "Notfall-Abschaltprozedur", Required: true}},
Priority: PriorityCritical,
AppliesWhen: "high_risk",
},
{
ID: "AIACT-OBL-006",
RegulationID: "ai_act",
Title: "Betreiberpflichten fuer Hochrisiko-KI",
Description: "Betreiber von Hochrisiko-KI muessen: Technische und organisatorische Massnahmen treffen, Eingabedaten pruefen, Betrieb ueberwachen, Protokolle aufbewahren.",
LegalBasis: []LegalReference{{Norm: "Art. 26 AI Act", Article: "Pflichten der Betreiber"}},
Category: CategoryOrganizational,
Responsible: RoleKIVerantwortlicher,
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Betriebskonzept", Required: true}, {Name: "Monitoring-Dokumentation", Required: true}},
Priority: PriorityHigh,
AppliesWhen: "high_risk_deployer",
},
{
ID: "AIACT-OBL-007",
RegulationID: "ai_act",
Title: "Grundrechte-Folgenabschaetzung (FRIA)",
Description: "Betreiber von Hochrisiko-KI in sensiblen Bereichen muessen vor Einsatz eine Grundrechte-Folgenabschaetzung durchfuehren.",
LegalBasis: []LegalReference{{Norm: "Art. 27 AI Act", Article: "Grundrechte-Folgenabschaetzung"}},
Category: CategoryGovernance,
Responsible: RoleKIVerantwortlicher,
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "FRIA-Dokumentation", Required: true}, {Name: "Risikobewertung Grundrechte", Required: true}},
Priority: PriorityCritical,
AppliesWhen: "high_risk_deployer_fria",
},
{
ID: "AIACT-OBL-008",
RegulationID: "ai_act",
Title: "Transparenzpflichten fuer KI-Interaktionen",
Description: "Bei KI-Systemen, die mit natuerlichen Personen interagieren: Kennzeichnung der KI-Interaktion, Information ueber KI-generierte Inhalte, Kennzeichnung von Deep Fakes.",
LegalBasis: []LegalReference{{Norm: "Art. 50 AI Act", Article: "Transparenzpflichten"}},
Category: CategoryOrganizational,
Responsible: RoleKIVerantwortlicher,
Deadline: &Deadline{Type: DeadlineAbsolute, Date: &transparencyDeadline},
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Kennzeichnungskonzept", Required: true}, {Name: "Nutzerhinweise", Required: true}},
Priority: PriorityHigh,
AppliesWhen: "limited_risk",
},
{
ID: "AIACT-OBL-009",
RegulationID: "ai_act",
Title: "GPAI-Modell Dokumentation",
Description: "Anbieter von GPAI-Modellen muessen technische Dokumentation erstellen, Informationen fuer nachgelagerte Anbieter bereitstellen und Urheberrechtsrichtlinie einhalten.",
LegalBasis: []LegalReference{{Norm: "Art. 53 AI Act", Article: "Pflichten der Anbieter von GPAI-Modellen"}},
Category: CategoryGovernance,
Responsible: RoleKIVerantwortlicher,
Deadline: &Deadline{Type: DeadlineAbsolute, Date: &gpaiDeadline},
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "GPAI-Dokumentation", Required: true}, {Name: "Trainingsdaten-Summary", Required: true}},
Priority: PriorityHigh,
AppliesWhen: "gpai_provider",
},
{
ID: "AIACT-OBL-010",
RegulationID: "ai_act",
Title: "KI-Kompetenz sicherstellen",
Description: "Anbieter und Betreiber muessen sicherstellen, dass Personal mit ausreichender KI-Kompetenz ausgestattet ist.",
LegalBasis: []LegalReference{{Norm: "Art. 4 AI Act", Article: "KI-Kompetenz"}},
Category: CategoryTraining,
Responsible: RoleManagement,
Deadline: &Deadline{Type: DeadlineAbsolute, Date: &prohibitedPracticesDeadline},
Sanctions: &SanctionInfo{MaxFine: "7,5 Mio. EUR oder 1% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Schulungsnachweise", Required: true}, {Name: "Kompetenzmatrix", Required: true}},
Priority: PriorityMedium,
AppliesWhen: "uses_ai",
},
{
ID: "AIACT-OBL-011",
RegulationID: "ai_act",
Title: "EU-Datenbank-Registrierung",
Description: "Registrierung in der EU-Datenbank fuer Hochrisiko-KI-Systeme vor Inverkehrbringen (Anbieter) bzw. Inbetriebnahme (Betreiber).",
LegalBasis: []LegalReference{{Norm: "Art. 49 AI Act", Article: "Registrierung"}},
Category: CategoryMeldepflicht,
Responsible: RoleKIVerantwortlicher,
Deadline: &Deadline{Type: DeadlineRelative, Duration: "Vor Inverkehrbringen/Inbetriebnahme"},
Sanctions: &SanctionInfo{MaxFine: "15 Mio. EUR oder 3% Jahresumsatz", PersonalLiability: false},
Evidence: []EvidenceItem{{Name: "Registrierungsbestaetigung", Required: true}, {Name: "EU-Datenbank-Eintrag", Required: true}},
Priority: PriorityHigh,
AppliesWhen: "high_risk",
},
}
m.controls = []ObligationControl{
{
ID: "AIACT-CTRL-001",
RegulationID: "ai_act",
Name: "KI-Inventar",
Description: "Fuehrung eines vollstaendigen Inventars aller KI-Systeme",
Category: "Governance",
WhatToDo: "Erfassung aller KI-Systeme mit Risikoeinstufung, Zweck, Anbieter, Betreiber",
ISO27001Mapping: []string{"A.8.1"},
Priority: PriorityCritical,
},
{
ID: "AIACT-CTRL-002",
RegulationID: "ai_act",
Name: "KI-Governance-Struktur",
Description: "Etablierung einer KI-Governance mit klaren Verantwortlichkeiten",
Category: "Governance",
WhatToDo: "Benennung eines KI-Verantwortlichen, Einrichtung eines KI-Boards",
Priority: PriorityHigh,
},
{
ID: "AIACT-CTRL-003",
RegulationID: "ai_act",
Name: "Bias-Testing und Fairness",
Description: "Regelmaessige Pruefung auf Verzerrungen und Diskriminierung",
Category: "Technisch",
WhatToDo: "Implementierung von Bias-Detection, Fairness-Metriken, Datensatz-Audits",
Priority: PriorityHigh,
},
{
ID: "AIACT-CTRL-004",
RegulationID: "ai_act",
Name: "Model Monitoring",
Description: "Kontinuierliche Ueberwachung der KI-Modellleistung",
Category: "Technisch",
WhatToDo: "Drift-Detection, Performance-Monitoring, Anomalie-Erkennung",
Priority: PriorityHigh,
},
}
m.incidentDeadlines = []IncidentDeadline{
{
RegulationID: "ai_act",
Phase: "Schwerwiegender Vorfall melden",
Deadline: "unverzueglich",
Content: "Meldung schwerwiegender Vorfaelle bei Hochrisiko-KI-Systemen: Tod, schwere Gesundheitsschaeden, schwerwiegende Grundrechtsverletzungen, schwere Schaeden an Eigentum oder Umwelt.",
Recipient: "Zustaendige Marktaufsichtsbehoerde",
LegalBasis: []LegalReference{{Norm: "Art. 73 AI Act"}},
},
{
RegulationID: "ai_act",
Phase: "Fehlfunktion melden (Anbieter)",
Deadline: "15 Tage",
Content: "Anbieter von Hochrisiko-KI melden Fehlfunktionen, die einen schwerwiegenden Vorfall darstellen koennten.",
Recipient: "Marktaufsichtsbehoerde des Herkunftslandes",
LegalBasis: []LegalReference{{Norm: "Art. 73 Abs. 1 AI Act"}},
},
}
}