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 / 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
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
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 GetFoodProcessingPatterns() []HazardPattern {
return []HazardPattern{
{
ID: "HP300", NameDE: "Einzug in Fleischwolf", NameEN: "Draw-in at meat grinder",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"rotating_part", "cutting_part"},
RequiredEnergyTags: []string{"rotational"},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -21,6 +22,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP301", NameDE: "Verbrennungsgefahr am Backofen/Kochkessel", NameEN: "Burn hazard at oven/cooking kettle",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"high_temperature", "structural_part"},
RequiredEnergyTags: []string{"thermal"},
GeneratedHazardCats: []string{"thermal_hazard"},
@@ -36,6 +38,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP302", NameDE: "Kontamination durch mangelnde Hygiene", NameEN: "Contamination due to insufficient hygiene",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -51,6 +54,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP303", NameDE: "Schneidverletzung an Aufschnittmaschine", NameEN: "Cut injury at slicing machine",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"cutting_part", "rotating_part"},
RequiredEnergyTags: []string{"rotational"},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -66,6 +70,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP304", NameDE: "Dampfverbrennung beim Oeffnen des Druckkessels", NameEN: "Steam burn when opening pressure vessel",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"high_pressure", "high_temperature"},
RequiredEnergyTags: []string{"thermal", "stored_energy"},
GeneratedHazardCats: []string{"thermal_hazard", "pneumatic_hydraulic"},
@@ -84,6 +89,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP305", NameDE: "Quetschen in Teigknetmaschine", NameEN: "Crushing in dough kneading machine",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"rotating_part", "crush_point", "high_force"},
RequiredEnergyTags: []string{"rotational"},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -99,6 +105,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP306", NameDE: "Einzug in Walzenmuehle", NameEN: "Draw-in at roller mill",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"rotating_part", "entanglement_risk", "high_force"},
RequiredEnergyTags: []string{"rotational"},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -114,6 +121,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP307", NameDE: "Elektrischer Schlag in Nassumgebung (IP-Schutz)", NameEN: "Electric shock in wet environment (IP rating)",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"electrical_part"},
RequiredEnergyTags: []string{"electrical_energy"},
GeneratedHazardCats: []string{"electrical_hazard"},
@@ -132,6 +140,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP308", NameDE: "Allergene Kreuzkontamination", NameEN: "Allergen cross-contamination",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part", "chemical_risk"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -147,6 +156,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP309", NameDE: "Biologische Gefaehrdung (Bakterien, Schimmel)", NameEN: "Biological hazard (bacteria, mold)",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -162,6 +172,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP310", NameDE: "Quetschen durch Abfuellstempel", NameEN: "Crushing by filling piston",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"crush_point", "moving_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"mechanical_hazard"},
@@ -177,6 +188,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP311", NameDE: "Sturz auf nassem/fettigem Boden", NameEN: "Slip on wet/greasy floor",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"mechanical_hazard", "ergonomic"},
@@ -192,6 +204,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP312", NameDE: "Erstickungsgefahr in Gaerbehaelter/Silo", NameEN: "Asphyxiation in fermentation vessel/silo",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -207,6 +220,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP313", NameDE: "Veraetzung durch Reinigungsmittel (CIP)", NameEN: "Chemical burn from CIP cleaning agents",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"chemical_risk"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -222,6 +236,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP314", NameDE: "Laerm durch Hochdruckreinigung", NameEN: "Noise from high-pressure cleaning",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"noise_source", "high_pressure"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"noise_vibration"},
@@ -237,6 +252,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP315", NameDE: "Verbrennungsgefahr an Fritteuse/Heissoelbad", NameEN: "Burn hazard at deep fryer/hot oil bath",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"high_temperature"},
RequiredEnergyTags: []string{"thermal"},
GeneratedHazardCats: []string{"thermal_hazard"},
@@ -252,6 +268,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP316", NameDE: "Schnitt beim manuellen Messerwechsel", NameEN: "Cut during manual blade change",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"cutting_part"},
RequiredEnergyTags: []string{},
ExcludedComponentTags: []string{"safety_device"},
@@ -268,6 +285,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP317", NameDE: "Explosion in Mehlstaubatmosphaere", NameEN: "Explosion in flour dust atmosphere",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"material_environmental"},
@@ -286,6 +304,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP318", NameDE: "Ergonomische Belastung bei manueller Portionierung", NameEN: "Ergonomic strain during manual portioning",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"ergonomic"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"ergonomic"},
@@ -301,6 +320,7 @@ func GetFoodProcessingPatterns() []HazardPattern {
},
{
ID: "HP319", NameDE: "Kaelteverletzung im Tiefkuehlbereich", NameEN: "Cold injury in deep-freeze area",
MachineTypes: []string{"food_processing", "packaging"},
RequiredComponentTags: []string{"structural_part"},
RequiredEnergyTags: []string{},
GeneratedHazardCats: []string{"thermal_hazard", "ergonomic"},