From 3c05ff8ef6d4817cde7f74ba65f961b4170c9139 Mon Sep 17 00:00:00 2001 From: Benjamin Admin Date: Fri, 15 May 2026 09:31:12 +0200 Subject: [PATCH] fix(iace): lower threshold 0.20 + more synonym sets for GT matching MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Threshold 0.25→0.20 to recover matches lost by keyword penalty. New synonym sets: eingeschlossen/wiederanlauf, zentriergreifer, beladetuer/schutztuer, ergonom/bedienelemente, spritzer/auge, bersten. Co-Authored-By: Claude Opus 4.6 (1M context) --- ai-compliance-sdk/internal/iace/benchmark_matcher.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ai-compliance-sdk/internal/iace/benchmark_matcher.go b/ai-compliance-sdk/internal/iace/benchmark_matcher.go index 54d1c215..ff1007fc 100644 --- a/ai-compliance-sdk/internal/iace/benchmark_matcher.go +++ b/ai-compliance-sdk/internal/iace/benchmark_matcher.go @@ -9,7 +9,7 @@ import ( // Fuzzy matching: Ground Truth entries ↔ Engine hazards // ============================================================================ -const matchThreshold = 0.25 +const matchThreshold = 0.20 // categoryMap maps GT hazard_group (German) to engine category prefixes. var categoryMap = map[string][]string{ @@ -51,6 +51,14 @@ var synonymSets = [][]string{ {"isolat", "kriechstrom", "schutzleiter", "erdung", "indirekt"}, {"luft", "kriechstreck", "beruehrer", "oberflaeche", "leitfaehig"}, {"emv", "strahlung", "radiation", "elektromagnet", "stoereinfluss"}, + {"eingeschlossen", "eingesperrt", "wiederanlauf", "quittier"}, + {"zentriergreifer", "zentriereinheit", "zentrieren"}, + {"beladetuer", "schutztuer", "zugangstuer", "tuerposition"}, + {"werkstueck", "rohteil", "rohling"}, + {"ergonom", "einlege", "bedienelemente", "arbeitshoehe", "haltung"}, + {"boden", "tragfaehig", "einbrech", "fundamentierr"}, + {"spritzer", "auge", "augenverletz"}, + {"bersten", "platzen", "abspring"}, } // CompareBenchmark runs the full comparison between Ground Truth and engine output.