package iace

// GetOperationalHazardPatterns returns patterns for non-normal operating states:
// fault clearing, maintenance, setup, changeover, LOTO, stored energy.
// These hazards are lifecycle-phase-specific — they fire only when the relevant
// phases are present in the project scope.
func GetOperationalHazardPatterns() []HazardPattern {
	return []HazardPattern{
		// ================================================================
		// Störungsbeseitigung / Fault Clearing (HP066-HP072)
		// ================================================================
		{
			ID: "HP066", NameDE: "Verklemmung loest sich unkontrolliert", NameEN: "Jammed part releases uncontrolled",
			RequiredComponentTags: []string{"moving_part", "high_force"},
			RequiredLifecycles:    []string{"fault_clearing", "maintenance"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M001", "M054"},
			Priority: 94,
			RequiresExpertCalculation: true,
			ExpertHintDE:       "Energiefreischaltung (LOTO) vor manuellen Eingriffen zwingend erforderlich.",
			ScenarioDE:         "Bediener beseitigt Materialstau manuell bei nicht freigeschalteter Maschine",
			TriggerDE:          "Verklemmtes Teil loest sich schlagartig durch gespeicherte Federkraft oder Eigengewicht",
			HarmDE:             "Quetschung, Fraktur oder Schnittverletzung an Hand/Arm durch unkontrollierte Bewegung",
			AffectedDE:         "Bedienpersonal, Instandhaltungspersonal",
			ZoneDE:             "Materialzufuehrung, Werkzeugraum, Foerderband-Einzugsstelle",
			DefaultSeverity: 4, DefaultExposure: 3,
		},
		{
			ID: "HP067", NameDE: "Schlauch platzt unter Druck", NameEN: "Hose bursts under pressure",
			RequiredComponentTags: []string{"hydraulic_part", "high_pressure"},
			RequiredLifecycles:    []string{"normal_operation", "fault_clearing"},
			GeneratedHazardCats:   []string{"pneumatic_hydraulic"},
			SuggestedMeasureIDs:   []string{"M131", "M054"},
			Priority: 92,
			ExpertHintDE:       "Schlauch-Fangvorrichtungen und Druckentlastung vor Wartung vorsehen.",
			ScenarioDE:         "Bediener arbeitet nahe Hydraulikleitungen bei Stoerungsbeseitigung unter Betriebsdruck",
			TriggerDE:          "Schlauch platzt oder Kupplung loest sich unter Restdruck waehrend Fehlersuche",
			HarmDE:             "Peitscheneffekt mit Prellungen, Hydraulikoelinjektionsverletzung der Haut",
			AffectedDE:         "Bedienpersonal, Instandhaltungspersonal",
			ZoneDE:             "Hydraulikaggregate, Schlauchleitungen, Zylinderbereich",
			DefaultSeverity: 4, DefaultExposure: 3,
		},
		{
			ID: "HP068", NameDE: "Unerwarteter Wiederanlauf nach Stoerung", OperationalStates: []string{"recovery_mode", "emergency_stop"}, StateTransitions: []string{"maintenance→automatic_operation", "emergency_stop→recovery_mode"}, NameEN: "Unexpected restart after fault",
			RequiredComponentTags: []string{"moving_part", "programmable"},
			RequiredLifecycles:    []string{"fault_clearing"},
			GeneratedHazardCats:   []string{"mechanical_hazard", "safety_function_failure"},
			SuggestedMeasureIDs:   []string{"M488", "M487", "M106", "M141"},
			Priority: 96,
			RequiresExpertCalculation: true,
			ExpertHintDE:       "Wiederanlaufsperre mit manueller Quittierung erforderlich. SIL/PL-Nachweis.",
			ScenarioDE:         "Bediener befindet sich im Gefahrenbereich bei Stoerungsbeseitigung an SPS-Maschine",
			TriggerDE:          "Steuerung startet Maschine automatisch nach Fehlerbehebung ohne manuelle Quittierung",
			HarmDE:             "Erfassen, Quetschen oder Aufwickeln durch ploetzlich anlaufende Maschinenteile",
			AffectedDE:         "Bedienpersonal, Instandhaltungspersonal",
			ZoneDE:             "Gesamter Arbeitsraum der Maschine, Werkzeugraum",
			DefaultSeverity: 5, DefaultExposure: 3,
		},
		{
			ID: "HP069", NameDE: "Restenergie nach Abschaltung (gespeichert)", OperationalStates: []string{"maintenance", "emergency_stop"}, NameEN: "Residual stored energy after shutdown",
			RequiredComponentTags: []string{"stored_energy"},
			RequiredLifecycles:    []string{"maintenance", "fault_clearing"},
			GeneratedHazardCats:   []string{"mechanical_hazard", "electrical_hazard"},
			SuggestedMeasureIDs:   []string{"M054", "M001"},
			Priority: 93,
			ExpertHintDE:       "Energiefreischaltung, Wartezeit und Messung vor Beginn der Arbeiten.",
			ScenarioDE:         "Wartungspersonal oeffnet Abdeckung nach Abschaltung ohne Restenergieabbau",
			TriggerDE:          "Gespeicherte Energie (Feder, Druckspeicher, Kondensator) entlaedt sich beim Oeffnen",
			HarmDE:             "Stromschlag, Quetschung durch absenkende Last oder Verbrennung durch Lichtbogen",
			AffectedDE:         "Instandhaltungspersonal, Elektrofachkraefte",
			ZoneDE:             "Energiespeicher, Druckspeicher, Kondensatoren, Federelemente",
			DefaultSeverity: 4, DefaultExposure: 3,
		},
		{
			ID: "HP070", NameDE: "Eingriff in laufende Maschine bei Stoerung", OperationalStates: []string{"recovery_mode"}, HumanRoles: []string{"operator"}, NameEN: "Intervention in running machine during fault",
			RequiredComponentTags: []string{"moving_part"},
			RequiredLifecycles:    []string{"fault_clearing"},
			ExcludedComponentTags: []string{"interlocked"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M005", "M051"},
			Priority: 97,
			ExpertHintDE:       "Betriebsartenwahlschalter mit reduzierter Geschwindigkeit fuer Stoerungsbeseitigung.",
			ScenarioDE:         "Bediener greift in laufende Maschine um Stoerung schnell zu beseitigen",
			TriggerDE:          "Hand oder Arm geraet in bewegte Teile mangels Verriegelung oder Stillsetzung",
			HarmDE:             "Amputation, schwere Quetschung oder Fraktur der oberen Extremitaeten",
			AffectedDE:         "Bedienpersonal",
			ZoneDE:             "Werkzeugraum, Foerdereinrichtung, Antriebselemente ohne Schutzabdeckung",
			DefaultSeverity: 5, DefaultExposure: 4,
		},
		{
			ID: "HP071", NameDE: "Materialstau loest sich schlagartig", NameEN: "Material jam releases suddenly",
			RequiredComponentTags: []string{"moving_part", "gravity_risk"},
			RequiredLifecycles:    []string{"fault_clearing"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M001", "M054"},
			Priority:        88,
			ScenarioDE:      "Bediener beseitigt Materialstau manuell im Foerderbereich bei laufender Maschine",
			TriggerDE:       "Gestautes Material loest sich schlagartig und bewegte Teile setzen sich in Gang",
			HarmDE:          "Quetschung oder Einziehen von Fingern/Hand durch ploetzliche Materialbewegung",
			AffectedDE:      "Bedienpersonal",
			ZoneDE:          "Materialzufuehrung, Foerderband, Auswurfbereich",
			DefaultSeverity: 4, DefaultExposure: 4,
		},
		{
			ID: "HP072", NameDE: "Herabfallende Teile bei Stoerungsbeseitigung", NameEN: "Falling parts during fault clearing",
			RequiredComponentTags: []string{"gravity_risk"},
			RequiredLifecycles:    []string{"fault_clearing", "maintenance"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M051", "M141"},
			Priority:        82,
			ScenarioDE:      "Bediener arbeitet unterhalb angehobener Maschinenteile bei Stoerungsbeseitigung",
			TriggerDE:       "Lose oder ungesicherte Teile fallen durch Vibration oder versehentliches Loesen",
			HarmDE:          "Kopfverletzung, Prellung oder Fraktur durch herabfallende Bauteile",
			AffectedDE:      "Bedienpersonal, Instandhaltungspersonal",
			ZoneDE:          "Bereich unterhalb angehobener Baugruppen, Wartungsoeffnungen",
			DefaultSeverity: 3, DefaultExposure: 3,
		},

		// ================================================================
		// Wartung / Instandhaltung (HP073-HP079)
		// ================================================================
		{
			ID: "HP073", NameDE: "Wartung ohne LOTO (Lockout/Tagout)", OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, NameEN: "Maintenance without LOTO",
			RequiredComponentTags: []string{"moving_part"},
			RequiredLifecycles:    []string{"maintenance"},
			GeneratedHazardCats:   []string{"maintenance_hazard"},
			SuggestedMeasureIDs:   []string{"M522", "M539", "M141"},
			Priority: 96,
			RequiresExpertCalculation: true,
			ExpertHintDE:       "LOTO-Verfahren (Lockout/Tagout) fuer alle Energiequellen definieren und schulen.",
			ScenarioDE:         "Wartungspersonal arbeitet an der Maschine ohne Energiefreischaltung (LOTO)",
			TriggerDE:          "Maschine wird versehentlich von Dritten oder durch Steuerung gestartet",
			HarmDE:             "Erfassen, Quetschen oder Schneiden durch unerwartet anlaufende bewegte Teile",
			AffectedDE:         "Instandhaltungspersonal",
			ZoneDE:             "Gesamter Maschinenarbeitsraum, Antriebsbereich, Energieversorgung",
			DefaultSeverity: 5, DefaultExposure: 3,
		},
		{
			ID: "HP074", OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, NameDE: "Sturz von Wartungsbuehne / Leiter", NameEN: "Fall from maintenance platform / ladder",
			RequiredComponentTags: []string{"structural_part"},
			RequiredLifecycles:    []string{"maintenance", "cleaning"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M061", "M002", "M141"},
			Priority:        78,
			ScenarioDE:      "Wartungspersonal steigt auf Buehne oder Leiter fuer Arbeiten an erhoehter Stelle",
			TriggerDE:       "Abrutschen von Leiter oder Stolpern auf Wartungsbuehne ohne Gelaender",
			HarmDE:          "Sturzverletzung mit Frakturen, Kopfverletzung bei Fall aus Hoehe",
			AffectedDE:      "Instandhaltungspersonal, Reinigungspersonal",
			ZoneDE:          "Wartungsbuehne, Steigleiter, Podeste an Maschinenoberseite",
			DefaultSeverity: 4, DefaultExposure: 2,
		},
		{
			ID: "HP075", OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, NameDE: "Kontakt mit heissen Oberflaechen", NameEN: "Contact with hot parts during maintenance",
			RequiredComponentTags: []string{"high_temperature"},
			RequiredLifecycles:    []string{"maintenance"},
			GeneratedHazardCats:   []string{"thermal_hazard"},
			SuggestedMeasureIDs:   []string{"M054", "M141"},
			Priority: 80,
			ExpertHintDE:       "Abkuehlzeit definieren. Temperaturanzeige oder -messung vor Arbeitsbeginn.",
			ScenarioDE:         "Wartungspersonal beruehrt Maschinenteile kurz nach Abschaltung ohne Abkuehlzeit",
			TriggerDE:          "Kontakt mit heisser Oberflaeche mangels Temperaturkennzeichnung oder Wartezeit",
			HarmDE:             "Verbrennung 2. oder 3. Grades an Haenden oder Unterarmen",
			AffectedDE:         "Instandhaltungspersonal",
			ZoneDE:             "Heizplatten, Extruder, Schmelztiegel, Ofenbereich",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP076", OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, NameDE: "Kontakt mit Gefahrstoffen", NameEN: "Contact with hazardous substances during maintenance",
			RequiredComponentTags: []string{"chemical_risk"},
			RequiredLifecycles:    []string{"maintenance", "cleaning"},
			GeneratedHazardCats:   []string{"material_environmental"},
			SuggestedMeasureIDs:   []string{"M141"},
			Priority:        75,
			ScenarioDE:      "Wartungspersonal oeffnet Behaelter oder Leitungen mit Gefahrstoffen ohne PSA",
			TriggerDE:       "Austritt von Kuehlschmierstoff, Hydraulikoel oder Loesungsmittel bei Demontage",
			HarmDE:          "Hautveraetzung, Atemwegsreizung oder allergische Reaktion durch Gefahrstoffkontakt",
			AffectedDE:      "Instandhaltungspersonal, Reinigungspersonal",
			ZoneDE:          "Kuehlmitteltank, Hydraulikleitungen, Schmierstoffbehaelter",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP077", OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, NameDE: "Elektrischer Schlag an offenen Baugruppen", NameEN: "Electric shock during maintenance",
			RequiredComponentTags: []string{"high_voltage"},
			RequiredLifecycles:    []string{"maintenance", "fault_clearing"},
			GeneratedHazardCats:   []string{"electrical_hazard"},
			SuggestedMeasureIDs:   []string{"M482", "M481", "M522", "M141"},
			Priority: 95,
			RequiresExpertCalculation: true,
			ExpertHintDE:       "Freischaltung, Sicherung gegen Wiedereinschalten, Spannungsfreiheit feststellen.",
			ScenarioDE:         "Elektrofachkraft arbeitet im Schaltschrank ohne vollstaendige Freischaltung",
			TriggerDE:          "Beruehrung spannungsfuehrender Teile mangels Spannungsfreiheitspruefung",
			HarmDE:             "Stromschlag mit Herzkammerflimmern, Verbrennungen durch Lichtbogen",
			AffectedDE:         "Elektrofachkraefte, Instandhaltungspersonal",
			ZoneDE:             "Schaltschrank, Klemmenkasten, Frequenzumrichter, Motoranschluesse",
			DefaultSeverity: 5, DefaultExposure: 3,
		},
		{
			ID: "HP078", OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, NameDE: "Ergonomische Belastung durch schwierigen Zugang", NameEN: "Ergonomic strain at maintenance access",
			RequiredComponentTags: []string{"structural_part"},
			RequiredLifecycles:    []string{"maintenance"},
			GeneratedHazardCats:   []string{"ergonomic"},
			SuggestedMeasureIDs:   []string{"M141"},
			Priority:        55,
			ScenarioDE:      "Wartungspersonal muss in Zwangshaltung an schwer zugaenglicher Stelle arbeiten",
			TriggerDE:       "Langandauernde gebeugte oder kniende Koerperhaltung bei wiederholter Wartung",
			HarmDE:          "Muskel-Skelett-Erkrankung, Rueckenbeschwerden durch Fehlhaltung",
			AffectedDE:      "Instandhaltungspersonal",
			ZoneDE:          "Enge Wartungsoeffnungen, Maschinenunterseite, schwer zugaengliche Baugruppen",
			DefaultSeverity: 2, DefaultExposure: 4,
		},
		{
			ID: "HP079", NameDE: "Unkontrolliertes Absenken hydraulischer Last", NameEN: "Uncontrolled lowering of hydraulic load",
			RequiredComponentTags: []string{"hydraulic_part", "gravity_risk"},
			RequiredLifecycles:    []string{"maintenance", "fault_clearing"},
			GeneratedHazardCats:   []string{"pneumatic_hydraulic", "mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M131", "M054"},
			Priority: 94,
			ExpertHintDE:       "Mechanische Absturzsicherung oder Abstuetzung vor Beginn der Arbeiten.",
			ScenarioDE:         "Wartungspersonal arbeitet unter hydraulisch angehobener Last ohne mechanische Sicherung",
			TriggerDE:          "Hydraulikleitung versagt oder Ventil oeffnet sich, Last senkt sich unkontrolliert ab",
			HarmDE:             "Toedliches Quetschen oder schwere Fraktur durch absinkende Maschinenbaugruppe",
			AffectedDE:         "Instandhaltungspersonal",
			ZoneDE:             "Unter Hydraulikzylindern, Pressenstoessel, angehobene Werkzeuge",
			DefaultSeverity: 5, DefaultExposure: 3,
		},

		// ================================================================
		// Einrichten / Umruesten / Werkzeugwechsel (HP080-HP085)
		// ================================================================
		{
			ID: "HP080", NameDE: "Quetschen bei Werkzeugwechsel", OperationalStates: []string{"maintenance", "teach_mode"}, HumanRoles: []string{"maintenance_tech", "programmer"}, NameEN: "Crushing during tool change",
			RequiredComponentTags: []string{"crush_point", "high_force"},
			RequiredLifecycles:    []string{"changeover", "setup"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M001", "M054"},
			Priority: 92,
			ExpertHintDE:       "Werkzeugwechsel nur bei gesichertem Stossel/Stempel. LOTO erforderlich.",
			ScenarioDE:         "Einrichter wechselt Werkzeug im Werkzeugraum bei nicht gesichertem Stoesselantrieb",
			TriggerDE:          "Stossel oder Stempel faehrt unbeabsichtigt herunter waehrend Haende im Quetschbereich",
			HarmDE:             "Amputation oder schwere Quetschung der Finger/Haende zwischen Werkzeughaelften",
			AffectedDE:         "Einrichter, Werkzeugmacher",
			ZoneDE:             "Werkzeugraum, Pressenstoessel, Spannbereich",
			DefaultSeverity: 5, DefaultExposure: 3,
		},
		{
			ID: "HP081", NameDE: "Verbrennung bei Werkzeugausbau (heiss)", NameEN: "Burns during hot tool removal",
			RequiredComponentTags: []string{"high_temperature"},
			RequiredLifecycles:    []string{"changeover"},
			GeneratedHazardCats:   []string{"thermal_hazard"},
			SuggestedMeasureIDs:   []string{"M141"},
			Priority: 78,
			ExpertHintDE:       "Abkuehlzeit einhalten. Schutzhandschuhe verwenden.",
			ScenarioDE:         "Einrichter baut heisses Werkzeug direkt nach Produktionsende ohne Abkuehlphase aus",
			TriggerDE:          "Kontakt mit ueber 60 Grad heisser Werkzeugoberflaeche beim manuellen Ausbau",
			HarmDE:             "Kontaktverbrennung an Haenden und Unterarmen, Blasenbildung",
			AffectedDE:         "Einrichter, Werkzeugmacher",
			ZoneDE:             "Werkzeugspannbereich, Heisskanalsystem, Formwerkzeug",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP082", NameDE: "Schweres Werkzeug faellt bei Wechsel", NameEN: "Heavy tool drops during change",
			RequiredComponentTags: []string{"gravity_risk", "high_force"},
			RequiredLifecycles:    []string{"changeover"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M530", "M007", "M008", "M141"},
			Priority: 85,
			ExpertHintDE:       "Hebezeug fuer Werkzeuge ueber 25 kg verwenden.",
			ScenarioDE:         "Einrichter hebt schweres Werkzeug manuell ohne Hebezeug bei Werkzeugwechsel",
			TriggerDE:          "Werkzeug rutscht aus der Halterung oder Hebezeug versagt beim Anheben",
			HarmDE:             "Quetschung oder Fraktur der Fuesse/Beine durch herabfallendes Werkzeug",
			AffectedDE:         "Einrichter, Werkzeugmacher",
			ZoneDE:             "Werkzeugwechselbereich, Boden vor der Maschine, Werkzeuglager",
			DefaultSeverity: 4, DefaultExposure: 3,
		},
		{
			ID: "HP083", NameDE: "Unbeabsichtigter Hub im manuellen Betrieb", NameEN: "Unintended stroke in setup mode",
			RequiredComponentTags: []string{"moving_part", "crush_point"},
			RequiredLifecycles:    []string{"setup"},
			GeneratedHazardCats:   []string{"mechanical_hazard", "safety_function_failure"},
			SuggestedMeasureIDs:   []string{"M491", "M493", "M492", "M141"},
			Priority: 94,
			RequiresExpertCalculation: true,
			ExpertHintDE:       "Einrichtbetrieb nur mit reduzierter Geschwindigkeit und Zweihandschaltung.",
			ScenarioDE:         "Person befindet sich im Werkzeugraum waehrend Testlauf",
			TriggerDE:          "Stossel fuehrt vollen Hub statt Tipphub aus wegen Softwarefehler oder Fehlbedienung",
			HarmDE:             "Toedliches Quetschen oder Amputation durch vollen Pressenhub bei Anwesenheit",
			AffectedDE:         "Einrichter",
			ZoneDE:             "Werkzeugraum, Pressenhubraum, Stanzbereich",
			DefaultSeverity: 5, DefaultExposure: 3,
		},
		{
			ID: "HP084", NameDE: "Falsche Parametereinstellung nach Produktwechsel", NameEN: "Wrong parameters after changeover",
			RequiredComponentTags: []string{"programmable"},
			RequiredLifecycles:    []string{"changeover", "setup"},
			GeneratedHazardCats:   []string{"safety_function_failure"},
			SuggestedMeasureIDs:   []string{"M106"},
			Priority: 82,
			ExpertHintDE:       "Parameterverifikation nach jedem Werkzeugwechsel. Checkliste verwenden.",
			ScenarioDE:         "Einrichter uebernimmt falsche Steuerungsparameter nach Werkzeugwechsel",
			TriggerDE:          "Maschine faehrt mit falscher Kraft, Geschwindigkeit oder Position nach Umruestung",
			HarmDE:             "Werkzeugbruch mit Splitterflug, Quetschung durch ueberhoehlte Schliesskraft",
			AffectedDE:         "Einrichter, Bedienpersonal im Erstanlauf",
			ZoneDE:             "Werkzeugraum, Auswurfbereich, Steuerungspult",
			DefaultSeverity: 4, DefaultExposure: 3,
		},
		{
			ID: "HP085", NameDE: "Testzyklus trifft Einrichter", NameEN: "Test cycle hits setup personnel",
			RequiredComponentTags: []string{"moving_part", "crush_point"},
			RequiredLifecycles:    []string{"setup", "commissioning"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M005", "M106"},
			Priority: 90,
			ExpertHintDE:       "Schutztuer geschlossen bei Testzyklen. Alternativ: Tippbetrieb mit Zustimmtaster.",
			ScenarioDE:         "Einrichter steht im Gefahrenbereich waehrend automatischer Testzyklus gestartet wird",
			TriggerDE:          "Kollege startet Testzyklus ohne Ruecksprache, Schutztuer nicht verriegelt",
			HarmDE:             "Erfassen oder Quetschen durch Maschinenbewegung im automatischen Testlauf",
			AffectedDE:         "Einrichter, Inbetriebnahmepersonal",
			ZoneDE:             "Werkzeugraum, Roboterzelle, Bearbeitungsraum",
			DefaultSeverity: 5, DefaultExposure: 3,
		},

		// ================================================================
		// Transport / Montage / Demontage (HP086-HP090)
		// ================================================================
		{
			ID: "HP086", NameDE: "Kippen der Maschine", NameEN: "Machine tipping during transport",
			RequiredComponentTags: []string{"structural_part"},
			RequiredLifecycles:    []string{"transport"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M507", "M002", "M141"},
			Priority:        85,
			ScenarioDE:      "Maschine wird mittels Kran oder Gabelstapler transportiert, Schwerpunkt nicht korrekt",
			TriggerDE:       "Maschine kippt wegen falsch gesetzter Anschlagpunkte oder asymmetrischer Last",
			HarmDE:          "Toedliches Quetschen oder schwere Fraktur durch kippende Maschinenstruktur",
			AffectedDE:      "Transportpersonal, Montagepersonal, umstehende Personen",
			ZoneDE:          "Transportweg, Aufstellbereich, Kranradius",
			DefaultSeverity: 5, DefaultExposure: 2,
		},
		{
			ID: "HP087", NameDE: "Quetschen/Aufstellung", NameEN: "Crushing during installation",
			RequiredComponentTags: []string{"high_force", "gravity_risk"},
			RequiredLifecycles:    []string{"assembly"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M530", "M002", "M061", "M141"},
			Priority:        82,
			ScenarioDE:      "Montagepersonal positioniert schwere Maschinenkomponente bei Erstaufstellung",
			TriggerDE:       "Bauteil rutscht von Unterlage oder Hebezeug versagt beim Absetzen",
			HarmDE:          "Quetschung von Haenden/Fuessen zwischen Maschinenteil und Fundament",
			AffectedDE:      "Montagepersonal, Inbetriebnahmepersonal",
			ZoneDE:          "Aufstellflaeche, Fundamentbereich, Montagezone",
			DefaultSeverity: 4, DefaultExposure: 2,
		},
		{
			ID: "HP088", NameDE: "Unkontrollierte Bewegung beim Erststart", NameEN: "Uncontrolled movement during commissioning",
			RequiredComponentTags: []string{"moving_part", "programmable"},
			RequiredLifecycles:    []string{"commissioning"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M005", "M106"},
			Priority:        90,
			ScenarioDE:      "Inbetriebnahmepersonal testet erstmals Bewegungsablaeufe der programmierten Maschine",
			TriggerDE:       "Programmierfehler oder falsche Endlagen fuehren zu unkontrollierter Achsbewegung",
			HarmDE:          "Quetschen oder Erfassen durch unerwartet schnelle oder weite Maschinenbewegung",
			AffectedDE:      "Inbetriebnahmepersonal, Programmierer",
			ZoneDE:          "Gesamter Bewegungsraum der Achsen, Roboterzelle, Arbeitsraum",
			DefaultSeverity: 4, DefaultExposure: 2,
		},
		{
			ID: "HP089", NameDE: "Restmedien (Oel, Gas, Druck)", NameEN: "Residual media during dismantling",
			RequiredComponentTags: []string{"hydraulic_part"},
			RequiredLifecycles:    []string{"decommissioning", "disposal"},
			GeneratedHazardCats:   []string{"material_environmental", "pneumatic_hydraulic"},
			SuggestedMeasureIDs:   []string{"M533", "M141"},
			Priority:        75,
			ScenarioDE:      "Demontagepersonal loest Leitungen oder Behaelter mit Restmedien bei Ausserbetriebnahme",
			TriggerDE:       "Austritt von Restoel, Druckluft oder Gas beim Loesen von Verschraubungen",
			HarmDE:          "Veraetzung durch Hydraulikoel, Verletzung durch Druckentladung, Vergiftung durch Gas",
			AffectedDE:      "Demontagepersonal, Entsorger",
			ZoneDE:          "Hydraulikleitungen, Druckspeicher, Kuehlmittelkreislauf",
			DefaultSeverity: 3, DefaultExposure: 2,
		},
		{
			ID: "HP090", NameDE: "Scharfe Kanten an demontierten Teilen", NameEN: "Sharp edges during dismantling",
			RequiredComponentTags: []string{"cutting_part"},
			RequiredLifecycles:    []string{"decommissioning", "disposal"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M141"},
			Priority:        60,
			ScenarioDE:      "Demontagepersonal handhabt zerlegte Maschinenteile mit scharfen Schneidkanten",
			TriggerDE:       "Greifen oder Transportieren von Bauteilen ohne Schnittschutzhandschuhe",
			HarmDE:          "Schnittverletzungen an Haenden und Unterarmen durch scharfe Metallkanten",
			AffectedDE:      "Demontagepersonal, Entsorger",
			ZoneDE:          "Demontagebereich, Zwischenlager fuer zerlegte Bauteile",
			DefaultSeverity: 2, DefaultExposure: 2,
		},

		// ================================================================
		// Reinigung (HP091-HP093)
		// ================================================================
		{
			ID: "HP091", NameDE: "Ausrutschen auf nassem/oeligem Boden", NameEN: "Slipping on wet/oily floor",
			RequiredComponentTags: []string{"chemical_risk"},
			RequiredLifecycles:    []string{"cleaning", "normal_operation"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M141"},
			Priority:        65,
			ScenarioDE:      "Reinigungspersonal bewegt sich auf nassem oder oelverschmutztem Boden um die Maschine",
			TriggerDE:       "Ausrutschen auf Kuehlschmierstoff, Hydraulikoel oder Reinigungswasser am Boden",
			HarmDE:          "Sturzverletzung mit Prellungen, Frakturen oder Kopfverletzung",
			AffectedDE:      "Reinigungspersonal, Bedienpersonal",
			ZoneDE:          "Maschinenumgebung, Bodenbereich, Ablaufrinnen",
			DefaultSeverity: 2, DefaultExposure: 4,
		},
		{
			ID: "HP092", NameDE: "Chemische Exposition durch Reinigungsmittel", NameEN: "Chemical exposure during cleaning",
			RequiredComponentTags: []string{"chemical_risk"},
			RequiredLifecycles:    []string{"cleaning"},
			GeneratedHazardCats:   []string{"material_environmental"},
			SuggestedMeasureIDs:   []string{"M141"},
			Priority:        70,
			ScenarioDE:      "Reinigungspersonal verwendet Loesungsmittel oder aggressive Reiniger ohne Absaugung",
			TriggerDE:       "Einatmen von Loesungsmitteldaempfen oder Hautkontakt mit Reinigungschemikalien",
			HarmDE:          "Atemwegsreizung, Hautveraetzung oder allergische Reaktion durch Chemikalienkontakt",
			AffectedDE:      "Reinigungspersonal",
			ZoneDE:          "Maschineninneres, Werkzeugraum, geschlossene Reinigungsbereiche",
			DefaultSeverity: 3, DefaultExposure: 3,
		},
		{
			ID: "HP093", NameDE: "Einziehen in rotierende Teile bei laufender Maschine", NameEN: "Draw-in by rotating parts during cleaning",
			RequiredComponentTags: []string{"rotating_part"},
			RequiredLifecycles:    []string{"cleaning"},
			ExcludedComponentTags: []string{"interlocked"},
			GeneratedHazardCats:   []string{"mechanical_hazard"},
			SuggestedMeasureIDs:   []string{"M001", "M054"},
			Priority:        88,
			ScenarioDE:      "Reinigungspersonal greift mit Lappen in rotierende Teile bei laufender Maschine",
			TriggerDE:       "Lappen oder Kleidung wird von rotierender Welle erfasst und zieht Hand ein",
			HarmDE:          "Amputation, Skalpierung oder schwere Quetschung durch Einzug in Drehbewegung",
			AffectedDE:      "Reinigungspersonal",
			ZoneDE:          "Offene Antriebswellen, Walzen, Spindeln ohne Verkleidung",
			DefaultSeverity: 5, DefaultExposure: 3,
		},
	}
}
