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>
218 lines
15 KiB
Go
218 lines
15 KiB
Go
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", "Beruerungssichere Klemmleisten"},
|
||
RecommendedMeasuresTechnical: []string{"Lichtbogen-Erkennungssystem", "Fernausloesemoeglichkeit"},
|
||
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 Abschaltzeitnachweis"}),
|
||
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,
|
||
},
|
||
}
|
||
}
|