Files
breakpilot-compliance/ai-compliance-sdk/internal/iace/hazard_library_iso12100_electrical_thermal.go
Sharang Parnerkar 9f96061631 refactor(go): split training/store, ucca/rules, ucca_handlers, document_export under 500 LOC
Each of the four oversized files (training/store.go 1569 LOC, ucca/rules.go 1231 LOC,
ucca_handlers.go 1135 LOC, document_export.go 1101 LOC) is split by logical group
into same-package files, all under the 500-line hard cap. Zero behavior changes,
no renamed exported symbols. Also fixed pre-existing hazard_library split (missing
functions and duplicate UUID keys from a prior session).

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

218 lines
15 KiB
Go
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package iace
import "time"
// builtinHazardsISO12100ElectricalThermal returns ISO 12100 electrical hazard
// entries (indices 7-10) and thermal hazard entries (indices 5-8).
func builtinHazardsISO12100ElectricalThermal() []HazardLibraryEntry {
now := time.Now()
return []HazardLibraryEntry{
// ====================================================================
// Category: electrical_hazard (indices 7-10, 4 entries)
// ====================================================================
{
ID: hazardUUID("electrical_hazard", 7),
Category: "electrical_hazard",
SubCategory: "lichtbogen",
Name: "Lichtbogengefahr bei Schalthandlungen",
Description: "Beim Schalten unter Last kann ein Lichtbogen entstehen, der zu Verbrennungen und Augenschaeden fuehrt.",
DefaultSeverity: 5,
DefaultProbability: 2,
DefaultExposure: 2,
DefaultAvoidance: 2,
ApplicableComponentTypes: []string{"electrical"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Lichtbogenschutzkleidung (PSA)", "Fernbediente Schaltgeraete"}),
TypicalCauses: []string{"Schalten unter Last", "Verschmutzte Kontakte", "Fehlbedienung bei Wartung"},
TypicalHarm: "Verbrennungen durch Lichtbogen, Augenschaeden, Druckwelle",
RelevantLifecyclePhases: []string{"maintenance", "fault_finding"},
RecommendedMeasuresDesign: []string{"Lasttrennschalter mit Lichtbogenkammer", "Beruerungs­sichere Klemmleisten"},
RecommendedMeasuresTechnical: []string{"Lichtbogen-Erkennungssystem", "Fernausloesemoeglich­keit"},
RecommendedMeasuresInformation: []string{"PSA-Pflicht bei Schalthandlungen", "Schaltbefugnisregelung"},
SuggestedEvidence: []string{"Lichtbogenberechnung", "PSA-Ausstattungsnachweis"},
RelatedKeywords: []string{"Lichtbogen", "Schalthandlung", "Arc Flash"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
{
ID: hazardUUID("electrical_hazard", 8),
Category: "electrical_hazard",
SubCategory: "ueberstrom",
Name: "Ueberstrom durch Kurzschluss",
Description: "Ein Kurzschluss kann zu extrem hohen Stroemen fuehren, die Leitungen ueberhitzen, Braende ausloesen und Bauteile zerstoeren.",
DefaultSeverity: 4,
DefaultProbability: 2,
DefaultExposure: 2,
DefaultAvoidance: 3,
ApplicableComponentTypes: []string{"electrical"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Selektive Absicherung mit Schmelzsicherungen", "Kurzschlussberechnung und Abschaltzeit­nachweis"}),
TypicalCauses: []string{"Beschaedigte Leitungsisolierung", "Feuchtigkeitseintritt", "Fehlerhafte Verdrahtung"},
TypicalHarm: "Brandgefahr, Zerstoerung elektrischer Betriebsmittel",
RelevantLifecyclePhases: []string{"normal_operation", "maintenance", "installation"},
RecommendedMeasuresDesign: []string{"Kurzschlussfeste Dimensionierung der Leitungen", "Selektive Schutzkoordination"},
RecommendedMeasuresTechnical: []string{"Leitungsschutzschalter", "Fehlerstrom-Schutzeinrichtung"},
RecommendedMeasuresInformation: []string{"Stromlaufplan aktuell halten", "Prueffristen fuer elektrische Anlage"},
SuggestedEvidence: []string{"Kurzschlussberechnung", "Pruefprotokoll nach DGUV V3"},
RelatedKeywords: []string{"Kurzschluss", "Ueberstrom", "Leitungsschutz"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
{
ID: hazardUUID("electrical_hazard", 9),
Category: "electrical_hazard",
SubCategory: "erdungsfehler",
Name: "Erdungsfehler im Schutzleitersystem",
Description: "Ein unterbrochener oder fehlerhafter Schutzleiter verhindert die sichere Ableitung von Fehlerstroemen und macht Gehaeuse spannungsfuehrend.",
DefaultSeverity: 5,
DefaultProbability: 2,
DefaultExposure: 3,
DefaultAvoidance: 2,
ApplicableComponentTypes: []string{"electrical"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Regelmaessige Schutzleiterpruefung", "Fehlerstrom-Schutzschalter als Zusatzmassnahme"}),
TypicalCauses: []string{"Lose Schutzleiterklemme", "Korrosion an Erdungspunkten", "Vergessener Schutzleiteranschluss nach Wartung"},
TypicalHarm: "Elektrischer Schlag bei Beruehrung des Maschinengehaeuses",
RelevantLifecyclePhases: []string{"normal_operation", "maintenance", "installation"},
RecommendedMeasuresDesign: []string{"Redundante Schutzleiteranschluesse", "Schutzleiter-Monitoring"},
RecommendedMeasuresTechnical: []string{"RCD-Schutzschalter 30 mA", "Isolationsueberwachung"},
RecommendedMeasuresInformation: []string{"Pruefplaketten an Schutzleiterpunkten", "Prueffrist 12 Monate"},
SuggestedEvidence: []string{"Schutzleitermessung", "Pruefprotokoll DGUV V3"},
RelatedKeywords: []string{"Schutzleiter", "Erdung", "Fehlerstrom"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
{
ID: hazardUUID("electrical_hazard", 10),
Category: "electrical_hazard",
SubCategory: "isolationsversagen",
Name: "Isolationsversagen in Hochspannungsbereich",
Description: "Alterung, Verschmutzung oder mechanische Beschaedigung der Isolierung in Hochspannungsbereichen kann zu Spannungsueberschlaegen und Koerperdurchstroemung fuehren.",
DefaultSeverity: 5,
DefaultProbability: 2,
DefaultExposure: 2,
DefaultAvoidance: 2,
ApplicableComponentTypes: []string{"electrical"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Isolationswiderstandsmessung", "Spannungsfeste Einhausung"}),
TypicalCauses: []string{"Alterung der Isolierstoffe", "Mechanische Beschaedigung", "Verschmutzung und Feuchtigkeit"},
TypicalHarm: "Toedlicher Stromschlag, Verbrennungen durch Spannungsueberschlag",
RelevantLifecyclePhases: []string{"normal_operation", "maintenance"},
RecommendedMeasuresDesign: []string{"Verstaerkte Isolierung in kritischen Bereichen", "Luftstrecken und Kriechstrecken einhalten"},
RecommendedMeasuresTechnical: []string{"Isolationsueberwachungsgeraet", "Verriegelter Zugang zum Hochspannungsbereich"},
RecommendedMeasuresInformation: []string{"Hochspannungswarnung", "Zutrittsregelung fuer Elektrofachkraefte"},
SuggestedEvidence: []string{"Isolationsmessprotokoll", "Pruefbericht Hochspannungsbereich"},
RelatedKeywords: []string{"Isolation", "Hochspannung", "Durchschlag"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
// ====================================================================
// Category: thermal_hazard (indices 5-8, 4 entries)
// ====================================================================
{
ID: hazardUUID("thermal_hazard", 5),
Category: "thermal_hazard",
SubCategory: "kaeltekontakt",
Name: "Kontakt mit kalten Oberflaechen (Kryotechnik)",
Description: "In kryotechnischen Anlagen oder Kuehlsystemen koennen extrem kalte Oberflaechen bei Beruehrung Kaelteverbrennungen verursachen.",
DefaultSeverity: 4,
DefaultProbability: 2,
DefaultExposure: 2,
DefaultAvoidance: 3,
ApplicableComponentTypes: []string{"mechanical", "other"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Isolierung kalter Oberflaechen", "Kaelteschutzhandschuhe"}),
TypicalCauses: []string{"Fehlende Isolierung an Kryoleitungen", "Beruehrung tiefgekuehlter Bauteile", "Defekte Kaelteisolierung"},
TypicalHarm: "Kaelteverbrennungen an Haenden und Fingern",
RelevantLifecyclePhases: []string{"normal_operation", "maintenance"},
RecommendedMeasuresDesign: []string{"Isolierung aller kalten Oberflaechen im Zugriffsbereich", "Abstandshalter zu Kryoleitungen"},
RecommendedMeasuresTechnical: []string{"Temperaturwarnung bei kritischen Oberflaechentemperaturen"},
RecommendedMeasuresInformation: []string{"Warnhinweis Kaeltegefahr", "PSA-Pflicht Kaelteschutz"},
SuggestedEvidence: []string{"Oberflaechentemperaturmessung", "Risikobeurteilung"},
RelatedKeywords: []string{"Kryotechnik", "Kaelte", "Kaelteverbrennung"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
{
ID: hazardUUID("thermal_hazard", 6),
Category: "thermal_hazard",
SubCategory: "waermestrahlung",
Name: "Waermestrahlung von Hochtemperaturprozessen",
Description: "Oefen, Giessereianlagen oder Waermebehandlungsprozesse emittieren intensive Waermestrahlung, die auch ohne direkten Kontakt zu Verbrennungen fuehren kann.",
DefaultSeverity: 4,
DefaultProbability: 3,
DefaultExposure: 3,
DefaultAvoidance: 3,
ApplicableComponentTypes: []string{"mechanical", "other"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Waermeschutzschilder", "Hitzeschutzkleidung"}),
TypicalCauses: []string{"Offene Ofentuer bei Beschickung", "Fehlende Abschirmung", "Langzeitexposition in der Naehe von Waermequellen"},
TypicalHarm: "Hautverbrennungen durch Waermestrahlung, Hitzschlag",
RelevantLifecyclePhases: []string{"normal_operation", "setup"},
RecommendedMeasuresDesign: []string{"Waermedaemmung und Strahlungsschilde", "Automatische Beschickung statt manueller"},
RecommendedMeasuresTechnical: []string{"Waermestrahlung-Sensor mit Warnung", "Luftschleier vor Ofenoeeffnungen"},
RecommendedMeasuresInformation: []string{"Maximalaufenthaltsdauer festlegen", "Hitzeschutz-PSA vorschreiben"},
SuggestedEvidence: []string{"Waermestrahlungsmessung am Arbeitsplatz", "Risikobeurteilung"},
RelatedKeywords: []string{"Waermestrahlung", "Ofen", "Hitzeschutz"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
{
ID: hazardUUID("thermal_hazard", 7),
Category: "thermal_hazard",
SubCategory: "brandgefahr",
Name: "Brandgefahr durch ueberhitzte Antriebe",
Description: "Ueberlastete oder schlecht gekuehlte Elektromotoren und Antriebe koennen sich so stark erhitzen, dass umgebende Materialien entzuendet werden.",
DefaultSeverity: 5,
DefaultProbability: 2,
DefaultExposure: 3,
DefaultAvoidance: 3,
ApplicableComponentTypes: []string{"actuator", "electrical"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Temperatursensor am Motor", "Thermischer Motorschutz"}),
TypicalCauses: []string{"Dauerbetrieb ueber Nennlast", "Blockierter Kuehlluftstrom", "Defektes Motorlager erhoecht Reibung"},
TypicalHarm: "Brand mit Sachschaeden und Personengefaehrdung durch Rauchentwicklung",
RelevantLifecyclePhases: []string{"normal_operation"},
RecommendedMeasuresDesign: []string{"Thermische Motorschutzdimensionierung", "Brandschottung um Antriebsbereich"},
RecommendedMeasuresTechnical: []string{"PTC-Temperaturfuehler im Motor", "Rauchmelder im Antriebsbereich"},
RecommendedMeasuresInformation: []string{"Wartungsintervalle fuer Kuehlluftwege", "Brandschutzordnung"},
SuggestedEvidence: []string{"Temperaturmessung unter Last", "Brandschutzkonzept"},
RelatedKeywords: []string{"Motorueberhitzung", "Brand", "Thermischer Schutz"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
{
ID: hazardUUID("thermal_hazard", 8),
Category: "thermal_hazard",
SubCategory: "heisse_fluessigkeiten",
Name: "Verbrennungsgefahr durch heisse Fluessigkeiten",
Description: "Heisse Prozessfluessigkeiten, Kuehlmittel oder Dampf koennen bei Leckage oder beim Oeffnen von Verschluessen Verbruehungen verursachen.",
DefaultSeverity: 4,
DefaultProbability: 3,
DefaultExposure: 3,
DefaultAvoidance: 3,
ApplicableComponentTypes: []string{"mechanical", "other"},
RegulationReferences: []string{"Maschinenverordnung 2023/1230 Anhang I"},
SuggestedMitigations: mustMarshalJSON([]string{"Druckentlastung vor dem Oeffnen", "Spritzschutz an Leitungsverbindungen"}),
TypicalCauses: []string{"Oeffnen von Verschluessen unter Druck", "Schlauchbruch bei heissem Medium", "Spritzer beim Nachfuellen"},
TypicalHarm: "Verbruehungen an Haut und Augen",
RelevantLifecyclePhases: []string{"normal_operation", "maintenance"},
RecommendedMeasuresDesign: []string{"Druckentlastungsventil vor Verschluss", "Isolierte Leitungsfuehrung"},
RecommendedMeasuresTechnical: []string{"Temperaturanzeige an kritischen Punkten", "Auffangwannen unter Leitungsverbindungen"},
RecommendedMeasuresInformation: []string{"Warnhinweis heisse Fluessigkeit", "Abkuehlprozedur in Betriebsanweisung"},
SuggestedEvidence: []string{"Temperaturmessung am Austritt", "Risikobeurteilung"},
RelatedKeywords: []string{"Verbruehung", "Heisse Fluessigkeit", "Dampf"},
IsBuiltin: true,
TenantID: nil,
CreatedAt: now,
},
}
}