package iace

// GetCyberExtendedPatterns2 returns 15 hazard patterns (HP830-HP844)
// for AI/ML-specific hazards in industrial automation systems.
func GetCyberExtendedPatterns2() []HazardPattern {
	return []HazardPattern{
		// ================================================================
		// KI/ML spezifisch (HP830-HP844)
		// ================================================================
		{
			ID: "HP830", NameDE: "KI-Modell erkennt Werkstueck nicht — Kollision", NameEN: "AI model fails to detect workpiece — collision",
			RequiredComponentTags: []string{"has_ai", "sensor_part", "moving_part"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"false_classification", "mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M101", "M102", "M003"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              90,
			ScenarioDE:      "KI-basierte Objekterkennung erkennt Werkstueck oder Hindernis nicht; Roboter oder Maschine kollidiert.",
			TriggerDE:       "Unbekanntes Objekt, ungelernte Beleuchtung, Sensorverschmutzung, Gegenstand ausserhalb Trainingsdaten",
			HarmDE:          "Kollision mit Werkstueck oder Person, mechanische Beschaedigung, Verletzung",
			AffectedDE:      "Bedienpersonal im Arbeitsraum des KI-Systems",
			ZoneDE:          "Arbeitsraum des Roboters, Kamerasichtfeld, Greiferbereich",
			DefaultSeverity: 4, DefaultExposure: 3,
		},
		{
			ID: "HP831", NameDE: "Trainingsdaten-Bias fuehrt zu falscher Klassifikation", NameEN: "Training data bias leads to wrong classification",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"unintended_bias", "false_classification"},
			SuggestedMeasureIDs:   []string{"M133", "M227", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              80,
			ScenarioDE:      "Einseitige Trainingsdaten fuehren dazu, dass das KI-Modell bestimmte Varianten systematisch falsch klassifiziert.",
			TriggerDE:       "Underrepresentation bestimmter Werkstuecktypen, Chargen oder Umgebungsbedingungen im Trainingsdatensatz",
			HarmDE:          "Fehlerhafte Qualitaetsentscheidung, fehlerhafte Teile gelangen in Umlauf",
			AffectedDE:      "Endkunden (fehlerhafte Produkte), Qualitaetsverantwortliche",
			ZoneDE:          "Alle KI-Entscheidungspunkte in der Qualitaetskontrolle",
			DefaultSeverity: 3, DefaultExposure: 4,
		},
		{
			ID: "HP832", NameDE: "Adversarial Input taeuscht Bilderkennungssystem", NameEN: "Adversarial input deceives image recognition",
			RequiredComponentTags: []string{"has_ai", "sensor_part"},
			RequiredEnergyTags:    []string{"ai_model", "cyber"},
			GeneratedHazardCats:   []string{"data_poisoning", "sensor_spoofing"},
			SuggestedMeasureIDs:   []string{"M133", "M214", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15", "E16"},
			Priority:              85,
			ScenarioDE:      "Gezielt veraenderte Eingabedaten (Adversarial Patches) taeuschen das Bilderkennungssystem und erzwingen Fehlklassifikation.",
			TriggerDE:       "Aufkleben eines Adversarial Patches auf Werkstueck, Manipulation der Kamera-Eingangssignale",
			HarmDE:          "Falsche Klassifikation, defektes Teil als gut erkannt, Sicherheitspruefung umgangen",
			AffectedDE:      "Endnutzer der Produkte, Bedienpersonal",
			ZoneDE:          "Kamerasichtfeld, Bildverarbeitungssystem, Qualitaetskontrollstation",
			DefaultSeverity: 4, DefaultExposure: 1,
		},
		{
			ID: "HP833", NameDE: "Model Drift verschlechtert Qualitaet schleichend", NameEN: "Model drift gradually degrades quality",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"model_drift"},
			SuggestedMeasureIDs:   []string{"M133", "M227", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              75,
			ScenarioDE:      "KI-Modell verliert durch veraenderte Prozessbedingungen ueber Wochen schleichend an Genauigkeit.",
			TriggerDE:       "Materialwechsel, Werkzeugverschleiss, saisonale Schwankungen, kein Monitoring der Modellleistung",
			HarmDE:          "Zunehmende Fehlentscheidungen, nicht erkannte Defekte, verzoegerte Erkennung",
			AffectedDE:      "Qualitaetsverantwortliche, Endkunden",
			ZoneDE:          "Alle Entscheidungspunkte des driftenden KI-Modells",
			DefaultSeverity: 3, DefaultExposure: 4,
		},
		{
			ID: "HP834", NameDE: "KI ueberschreibt Sicherheitsparameter", NameEN: "AI overwrites safety parameters",
			RequiredComponentTags: []string{"has_ai", "programmable"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"software_fault", "safety_function_failure"},
			SuggestedMeasureIDs:   []string{"M044", "M227", "M105", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E07", "E15"},
			Priority:              95,
			RequiresExpertCalculation: true,
			ExpertHintDE: "KI-System darf keine schreibenden Zugriffe auf Sicherheitsparameter haben; Validierung nach EN ISO 13849 und IEC 61508.",
			ScenarioDE:      "KI-Optimierungsalgorithmus aendert Sicherheitsgrenzen (Geschwindigkeit, Kraft, Druck) ohne menschliche Freigabe.",
			TriggerDE:       "Keine Write-Protection fuer Sicherheitsparameter, fehlende Parameterverriegelung, RL-Agent optimiert Durchsatz",
			HarmDE:          "Ueberschreiten der Sicherheitsgrenzen, gefaehrliche Geschwindigkeit/Kraft, Verletzung oder Tod",
			AffectedDE:      "Bedienpersonal, alle Personen im Maschinenbereich",
			ZoneDE:          "Alle sicherheitsrelevanten Achsen und Funktionen",
			DefaultSeverity: 5, DefaultExposure: 1,
		},
		{
			ID: "HP835", NameDE: "Fehlende Erklaerbarkeit — Bediener vertraut falsch", NameEN: "Lack of explainability — operator misplaces trust",
			RequiredComponentTags: []string{"has_ai", "user_interface"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"false_classification"},
			SuggestedMeasureIDs:   []string{"M133", "M204", "M227", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              70,
			ScenarioDE:      "KI-System gibt Empfehlung ohne Begruendung; Bediener folgt blindlings einer fehlerhaften Empfehlung.",
			TriggerDE:       "Fehlende Explainability, keine Konfidenzanzeige, Automation Bias des Bedieners",
			HarmDE:          "Fehlentscheidung auf Basis falscher KI-Empfehlung, Qualitaetsmangel, Sicherheitsrisiko",
			AffectedDE:      "Bedienpersonal, Qualitaetsverantwortliche",
			ZoneDE:          "HMI des KI-Systems, Entscheidungs-Dashboard",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP836", NameDE: "KI-Entscheidung im Grenzbereich (Edge Case)", NameEN: "AI decision in edge case",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"false_classification"},
			SuggestedMeasureIDs:   []string{"M133", "M227", "M214", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              80,
			ScenarioDE:      "KI trifft bei Eingabedaten nahe der Entscheidungsgrenze unzuverlaessige Entscheidungen mit schwankender Konfidenz.",
			TriggerDE:       "Werkstueck exakt an der Gut/Schlecht-Grenze, unbekannte Kombination von Merkmalen",
			HarmDE:          "Instabile Entscheidungen, abwechselnd gut/schlecht bei identischem Teil, falsche Sortierung",
			AffectedDE:      "Qualitaetsverantwortliche, Endkunden",
			ZoneDE:          "Entscheidungspunkte des KI-Klassifikators",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP837", NameDE: "Reinforcement Learning fuehrt zu unerwartetem Verhalten", NameEN: "Reinforcement learning causes unexpected behavior",
			RequiredComponentTags: []string{"has_ai", "programmable"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"software_fault"},
			SuggestedMeasureIDs:   []string{"M133", "M227", "M105", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              85,
			ScenarioDE:      "RL-Agent entdeckt unbeabsichtigte Strategie zur Reward-Maximierung, die gefaehrliches Verhalten einschliesst.",
			TriggerDE:       "Unvollstaendige Reward-Funktion, fehlende Safety Constraints, Agent findet Exploit in Simulation",
			HarmDE:          "Unerwartete Maschinenbewegung, Reward Hacking fuehrt zu gefaehrlicher Aktion",
			AffectedDE:      "Bedienpersonal, Personen im Wirkbereich des RL-gesteuerten Systems",
			ZoneDE:          "Gesamter Aktionsraum des RL-Agenten",
			DefaultSeverity: 4, DefaultExposure: 2,
		},
		{
			ID: "HP838", NameDE: "KI verarbeitet personenbezogene Daten (DSGVO-Verstoss)", NameEN: "AI processes personal data (GDPR violation)",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"unintended_bias"},
			SuggestedMeasureIDs:   []string{"M186", "M187", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              70,
			ScenarioDE:      "KI-System verarbeitet Kamerabilder mit erkennbaren Personen ohne Einwilligung oder Rechtsgrundlage.",
			TriggerDE:       "Kamera erfasst Gesichter, Kennzeichen oder biometrische Daten; fehlende Anonymisierung",
			HarmDE:          "DSGVO-Bussgeld, Persoenlichkeitsrechtsverletzung, Vertrauensverlust",
			AffectedDE:      "Betroffene Personen (Mitarbeiter, Besucher), Datenschutzbeauftragter",
			ZoneDE:          "Kameraerfassungsbereich, Datenverarbeitungssystem",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP839", NameDE: "KI-System nicht validiert fuer Sicherheitsfunktion", NameEN: "AI system not validated for safety function",
			RequiredComponentTags: []string{"has_ai", "safety_device"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"safety_function_failure"},
			SuggestedMeasureIDs:   []string{"M105", "M227", "M044", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E07", "E15"},
			Priority:              95,
			RequiresExpertCalculation: true,
			ExpertHintDE: "KI in Sicherheitsfunktionen erfordert Validierung nach IEC 61508 SIL-Anforderungen und EN ISO 13849 PL-Nachweis.",
			ScenarioDE:      "KI-basierte Sicherheitsfunktion (z. B. Personenerkennung fuer Stopp) wurde nicht nach Sicherheitsnorm validiert.",
			TriggerDE:       "KI als Sicherheitskomponente ohne SIL/PL-Berechnung eingesetzt, fehlende Verifikation",
			HarmDE:          "Sicherheitsfunktion versagt im Anforderungsfall, Person wird nicht erkannt, kein Stopp",
			AffectedDE:      "Bedienpersonal, alle Personen im Schutzbereich",
			ZoneDE:          "Ueberwachungsbereich der KI-Sicherheitsfunktion",
			DefaultSeverity: 5, DefaultExposure: 2,
		},
		{
			ID: "HP840", NameDE: "Concept Drift bei veraendertem Prozess", NameEN: "Concept drift from changed process",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"model_drift"},
			SuggestedMeasureIDs:   []string{"M133", "M227", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              75,
			ScenarioDE:      "Grundlegende Aenderung des Produktionsprozesses macht das KI-Modell ungueltig, da es auf alten Zusammenhaengen basiert.",
			TriggerDE:       "Neues Material, neue Maschine, geaenderter Prozessablauf ohne Re-Training des Modells",
			HarmDE:          "Systematische Fehlentscheidungen, alle Teile falsch bewertet, Qualitaetseinbruch",
			AffectedDE:      "Qualitaetsverantwortliche, Endkunden",
			ZoneDE:          "Alle vom KI-Modell ueberwachten Prozessschritte",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP841", NameDE: "KI-Halluzination meldet falschen Zustand", NameEN: "AI hallucination reports false state",
			RequiredComponentTags: []string{"has_ai", "user_interface"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"false_classification"},
			SuggestedMeasureIDs:   []string{"M133", "M214", "M227", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              80,
			ScenarioDE:      "KI-System meldet einen Zustand mit hoher Konfidenz, der in Wirklichkeit nicht vorliegt (Halluzination).",
			TriggerDE:       "Eingangsdaten ausserhalb des Trainingsbereichs, Ueberanpassung (Overfitting), Sensorrauschen",
			HarmDE:          "Fehlalarm fuehrt zu unnoetigem Stopp oder — schlimmer — falsche Entwarnung bei realem Problem",
			AffectedDE:      "Bedienpersonal, das auf Basis der KI-Meldung handelt",
			ZoneDE:          "HMI-Anzeige, Alarm-Management-System",
			DefaultSeverity: 4, DefaultExposure: 2,
		},
		{
			ID: "HP842", NameDE: "Abhaengigkeit von Cloud-Service fuer Sicherheitsfunktion", NameEN: "Dependency on cloud service for safety function",
			RequiredComponentTags: []string{"has_ai", "networked"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"communication_failure", "safety_function_failure"},
			SuggestedMeasureIDs:   []string{"M109", "M113", "M106", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15", "E17"},
			Priority:              90,
			ScenarioDE:      "Sicherheitsrelevante KI-Funktion benoetigt Cloud-Verbindung; bei Netzwerkausfall ist die Sicherheit nicht gewaehrleistet.",
			TriggerDE:       "Internet-Ausfall, Cloud-Provider-Stoerung, DNS-Fehler, Latenz ueberschreitet Zeitlimit",
			HarmDE:          "Sicherheitsfunktion faellt aus, kein Fallback, Maschine laeuft ohne KI-Ueberwachung weiter",
			AffectedDE:      "Bedienpersonal, Personen im Ueberwachungsbereich",
			ZoneDE:          "Gesamter Schutzbereich der KI-Sicherheitsfunktion, Netzwerkverbindung",
			DefaultSeverity: 5, DefaultExposure: 2,
		},
		{
			ID: "HP843", NameDE: "Fehlende Redundanz bei KI-basierter Qualitaetskontrolle", NameEN: "Missing redundancy in AI-based quality control",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"false_classification"},
			SuggestedMeasureIDs:   []string{"M044", "M119", "M133", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15"},
			Priority:              75,
			ScenarioDE:      "KI-System ist alleiniger Qualitaetsgate ohne Backup-Pruefung; bei KI-Ausfall passieren alle Teile unkontrolliert.",
			TriggerDE:       "KI-System faellt aus, kein manueller Rueckfallprozess definiert, Bypass im Stoerfall",
			HarmDE:          "Fehlerhafte Produkte gelangen zum Kunden, Rueckrufaktion, Sicherheitsrisiko bei Sicherheitsteilen",
			AffectedDE:      "Endkunden, Qualitaetsverantwortliche",
			ZoneDE:          "Qualitaetskontrollstation, Auslaufbereich der Produktion",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP844", NameDE: "Bias in Predictive Maintenance — Wartung zu spaet", NameEN: "Bias in predictive maintenance — maintenance too late",
			RequiredComponentTags: []string{"has_ai"},
			RequiredEnergyTags:    []string{"ai_model"},
			GeneratedHazardCats:   []string{"model_drift"},
			SuggestedMeasureIDs:   []string{"M133", "M227", "M141"},
			SuggestedEvidenceIDs:  []string{"E01", "E15", "E21"},
			Priority:              80,
			ScenarioDE:      "KI-basierte Wartungsvorhersage unterschaetzt Verschleiss und empfiehlt Wartung zu spaet.",
			TriggerDE:       "Einseitige Trainingsdaten (nur Neuzustand), kein Monitoring der Vorhersagequalitaet, Betriebsbedingungen geaendert",
			HarmDE:          "Unerwarteter Maschinenausfall, Bauteilversagen waehrend Betrieb, Folgeschaeden",
			AffectedDE:      "Bedienpersonal bei ploetzlichem Ausfall, Wartungspersonal",
			ZoneDE:          "Alle ueberwachten Verschleissteile und Lager",
			DefaultSeverity: 4, DefaultExposure: 2,
		},
	}
}
