fix(iace): MachineTypes-Filter auf 136 branchenspezifische Patterns
Build + Deploy / build-admin-compliance (push) Successful in 2m3s
Build + Deploy / build-backend-compliance (push) Successful in 12s
Build + Deploy / build-ai-sdk (push) Successful in 11s
Build + Deploy / build-developer-portal (push) Successful in 11s
Build + Deploy / build-tts (push) Successful in 11s
Build + Deploy / build-document-crawler (push) Successful in 11s
Build + Deploy / build-dsms-gateway (push) Successful in 11s
Build + Deploy / build-dsms-node (push) Successful in 13s
CI / branch-name (push) Has been skipped
CI / guardrail-integrity (push) Has been skipped
CI / loc-budget (push) Failing after 18s
CI / secret-scan (push) Has been skipped
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / nodejs-build (push) Successful in 3m9s
CI / dep-audit (push) Has been skipped
CI / sbom-scan (push) Has been skipped
CI / test-go (push) Successful in 58s
CI / test-python-backend (push) Successful in 42s
CI / test-python-document-crawler (push) Successful in 27s
CI / test-python-dsms-gateway (push) Successful in 23s
CI / validate-canonical-controls (push) Successful in 15s
Build + Deploy / trigger-orca (push) Successful in 2m15s

Medizin (25), Laser-Medizin (15), Aufzuege (25), Lebensmittel (20),
Bau (20), Forst/Foerderband (31) — alle Patterns feuern jetzt NUR
wenn der Maschinentyp passt. Verhindert Infusionspumpen-Szenarien
bei einem Cobot-Projekt.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-05-12 08:50:14 +02:00
parent 12f2503873
commit 134b7e7709
6 changed files with 136 additions and 0 deletions
@@ -6,6 +6,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
return []HazardPattern{
{
ID: "HP350", NameDE: "Elektrischer Schlag am Patienten (Ableitstrom)", NameEN: "Electric shock to patient (leakage current)",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"electrical_part"},
RequiredEnergyTags: []string{"electrical_energy"},
GeneratedHazardCats: []string{"electrical_hazard"},
@@ -24,6 +25,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP351", NameDE: "Fehlfunktion des Defibrillators", NameEN: "Defibrillator malfunction",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"electrical_part", "has_software"},
RequiredEnergyTags: []string{"electrical_energy", "stored_energy"},
GeneratedHazardCats: []string{"electrical_hazard", "safety_function_failure"},
@@ -42,6 +44,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP352", NameDE: "Ueberhitzung durch HF-Chirurgiegeraet", NameEN: "Overheating by HF surgical device",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"electrical_part", "high_temperature"},
RequiredEnergyTags: []string{"electrical_energy", "thermal"},
GeneratedHazardCats: []string{"thermal_hazard", "electrical_hazard"},
@@ -57,6 +60,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP353", NameDE: "Strahlenexposition am CT-Scanner", NameEN: "Radiation exposure at CT scanner",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"radiation_risk"},
RequiredEnergyTags: []string{"radiation"},
GeneratedHazardCats: []string{"material_environmental"},
@@ -75,6 +79,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP354", NameDE: "Fehlalarm fuehrt zu falscher Behandlung", NameEN: "False alarm leads to wrong treatment",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"sensor_part", "has_software"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"sensor_fault", "software_fault"},
@@ -90,6 +95,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP355", NameDE: "Infektionsgefahr durch mangelhafte Sterilisation", NameEN: "Infection risk from insufficient sterilization",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -105,6 +111,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP356", NameDE: "Mechanisches Versagen des OP-Tischs", NameEN: "Mechanical failure of operating table",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"moving_part", "hydraulic_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -120,6 +127,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP357", NameDE: "EMV-Stoerung anderer Geraete", NameEN: "EMC interference with other devices",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"electrical_part", "networked"},
RequiredEnergyTags: []string{"electromagnetic"},
GeneratedHazardCats: []string{"emc_hazard", "safety_function_failure"},
@@ -135,6 +143,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP358", NameDE: "Softwarefehler in Dosierungssystem", NameEN: "Software error in dosing system",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"has_software", "programmable"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"software_fault", "safety_function_failure"},
@@ -153,6 +162,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP359", NameDE: "Patientenfall vom Krankenbett", NameEN: "Patient fall from hospital bed",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"gravity_risk", "moving_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -168,6 +178,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP360", NameDE: "Ueberhitzung tragbarer Geraetebatterie", NameEN: "Overheating of portable device battery",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"electrical_part"},
RequiredEnergyTags: []string{"stored_energy", "thermal"},
GeneratedHazardCats: []string{"thermal_hazard", "electrical_hazard"},
@@ -183,6 +194,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP361", NameDE: "Fehlerhafte Anzeige am Patientenmonitor", NameEN: "Erroneous display on patient monitor",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"user_interface", "has_software"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"hmi_error", "software_fault"},
@@ -198,6 +210,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP362", NameDE: "Bewegungseinschraenkung in MRT-Roehre", NameEN: "Movement restriction in MRI bore",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{"electromagnetic"},
GeneratedHazardCats: []string{"ergonomic", "material_environmental"},
@@ -213,6 +226,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP363", NameDE: "Ferromagnetischer Gegenstand als MRT-Projektil", NameEN: "Ferromagnetic object as MRI projectile",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{"electromagnetic"},
GeneratedHazardCats: []string{"mechanical_hazard", "material_environmental"},
@@ -228,6 +242,7 @@ func GetMedicalDevicePatterns() []HazardPattern {
},
{
ID: "HP364", NameDE: "Quenchgefahr bei supraleitendem MRT-Magnet", NameEN: "Quench hazard at superconducting MRI magnet",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{"electromagnetic", "stored_energy"},
GeneratedHazardCats: []string{"material_environmental"},
@@ -250,6 +265,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
return []HazardPattern{
{
ID: "HP365", NameDE: "Bersten eines Druckbehaelters", NameEN: "Bursting of a pressure vessel",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure", "structural_part"},
RequiredEnergyTags: []string{"stored_energy"},
GeneratedHazardCats: []string{"pneumatic_hydraulic"},
@@ -268,6 +284,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP366", NameDE: "Dampfaustritt an undichter Flanschverbindung", NameEN: "Steam leak at flanged joint",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure", "high_temperature"},
RequiredEnergyTags: []string{"thermal", "stored_energy"},
GeneratedHazardCats: []string{"thermal_hazard", "pneumatic_hydraulic"},
@@ -283,6 +300,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP367", NameDE: "Sicherheitsventil oeffnet nicht", NameEN: "Safety valve fails to open",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure"},
RequiredEnergyTags: []string{"stored_energy"},
GeneratedHazardCats: []string{"safety_function_failure", "pneumatic_hydraulic"},
@@ -301,6 +319,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP368", NameDE: "Druckstoss (Wasserschlag) in Rohrleitung", NameEN: "Pressure surge (water hammer) in pipeline",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure"},
RequiredEnergyTags: []string{"stored_energy"},
GeneratedHazardCats: []string{"pneumatic_hydraulic", "mechanical_hazard"},
@@ -316,6 +335,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP369", NameDE: "Korrosionsversagen unter Isolierung", NameEN: "Corrosion under insulation failure",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure", "structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental", "pneumatic_hydraulic"},
@@ -331,6 +351,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP370", NameDE: "Verbrennungsgefahr an heisser Dampfleitung", NameEN: "Burn hazard at hot steam pipe",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_temperature", "structural_part"},
RequiredEnergyTags: []string{"thermal"},
GeneratedHazardCats: []string{"thermal_hazard"},
@@ -346,6 +367,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP371", NameDE: "Erstickungsgefahr durch Inertgas-Austritt", NameEN: "Asphyxiation from inert gas release",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"chemical_risk", "structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -361,6 +383,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP372", NameDE: "Ueberdruckversagen Waermetauscher", NameEN: "Overpressure failure of heat exchanger",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure", "high_temperature"},
RequiredEnergyTags: []string{"thermal", "stored_energy"},
GeneratedHazardCats: []string{"pneumatic_hydraulic", "thermal_hazard"},
@@ -379,6 +402,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP373", NameDE: "Druckluft-Hautinjektion", NameEN: "Compressed air skin injection",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"pneumatic_part", "high_pressure"},
RequiredEnergyTags: []string{"pneumatic_pressure"},
GeneratedHazardCats: []string{"pneumatic_hydraulic"},
@@ -394,6 +418,7 @@ func GetPressureEquipmentPatterns() []HazardPattern {
},
{
ID: "HP374", NameDE: "Schnellschluss-Ventilversagen bei Druckentlastung", NameEN: "Fast-closing valve failure during pressure relief",
MachineTypes: []string{"medical_device", "infusion_pump", "ventilator", "patient_monitor"},
RequiredComponentTags: []string{"high_pressure", "actuator_part"},
RequiredEnergyTags: []string{"stored_energy"},
GeneratedHazardCats: []string{"safety_function_failure", "pneumatic_hydraulic"},