Merge origin/main into iace precision/component-review work

Resolved .claude/rules/loc-exceptions.txt: removed the temporary
iace_handler_init_helpers.go exception — the file is now split to 455 lines
(< 500) in commit afb3f83, so the exception is no longer needed (per the note
the other session left on that entry).

[guardrail-change]
This commit is contained in:
Benjamin Admin
2026-06-10 17:24:49 +02:00
5 changed files with 123 additions and 73 deletions
+6 -6
View File
@@ -54,11 +54,11 @@ func cmdReachability(_ []string) {
"universe_tags": len(r.UniverseTags),
})
if len(r.UnreachablePatterns) > 0 {
fmt.Println("\n## Unreachable patterns (top 30 by priority):\n")
fmt.Println("\n## Unreachable patterns (top 30 by priority):")
printPatternRows(r.UnreachablePatterns, 30)
}
if len(r.WeakPatterns) > 0 {
fmt.Println("\n## Weakly reachable (top 20 by priority):\n")
fmt.Println("\n## Weakly reachable (top 20 by priority):")
printPatternRows(r.WeakPatterns, 20)
}
writeJSON("audit-reports/reachability.json", r)
@@ -72,7 +72,7 @@ func cmdConsistency(_ []string) {
"incomplete": r.Incomplete,
})
if len(r.IncompleteComponents) > 0 {
fmt.Println("\n## Components missing tags for declared hazard categories:\n")
fmt.Println("\n## Components missing tags for declared hazard categories:")
for _, c := range r.IncompleteComponents {
fmt.Printf("- %s (%s)\n", c.ComponentID, c.NameDE)
for _, miss := range c.MissingForCategories {
@@ -99,7 +99,7 @@ func cmdVocabulary(args []string) {
"unknown_with_pattern_hit": len(r.SuggestedDictionaryEntries),
})
if len(r.SuggestedDictionaryEntries) > 0 {
fmt.Println("\n## Suggested dictionary additions (token appears in pattern scenarios but not in dict):\n")
fmt.Println("\n## Suggested dictionary additions (token appears in pattern scenarios but not in dict):")
for _, s := range r.SuggestedDictionaryEntries {
fmt.Printf("- '%s' → seen in %d patterns. Examples: %s\n", s.Token, len(s.PatternIDs), joinFirst(s.PatternIDs, 5))
}
@@ -129,7 +129,7 @@ func cmdEcho(args []string) {
"orphaned": r.Orphaned,
})
if len(r.OrphanedPhrases) > 0 {
fmt.Println("\n## Orphaned phrases (no hazard echoes them):\n")
fmt.Println("\n## Orphaned phrases (no hazard echoes them):")
for _, o := range r.OrphanedPhrases {
fmt.Printf("- [%s] %s\n", o.Field, truncate(o.Phrase, 120))
}
@@ -163,7 +163,7 @@ func cmdHierarchy(args []string) {
"missing_info": r.MissingInfo,
})
if len(r.IncompleteHazards) > 0 {
fmt.Println("\n## Hazards with incomplete hierarchy:\n")
fmt.Println("\n## Hazards with incomplete hierarchy:")
for _, h := range r.IncompleteHazards {
fmt.Printf("- [%s] %s — missing: %s\n", h.Category, truncate(h.Name, 70), joinFirst(h.MissingLevels, 3))
}