From 9b7ef87f58f33f6d5ea8f9eee7b194bc8924a617 Mon Sep 17 00:00:00 2001 From: Bart Zantingh <162321204+bartzantingh@users.noreply.github.com> Date: Tue, 10 Feb 2026 08:42:53 +0100 Subject: [PATCH] Update lint_rego.go Add type assertion and check for empty `"errors"` array returned from rule to prevent crashes when converting to `[]interface{}` --- lint/lint_rego.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lint/lint_rego.go b/lint/lint_rego.go index 7317b3f..68d0c3d 100644 --- a/lint/lint_rego.go +++ b/lint/lint_rego.go @@ -72,7 +72,12 @@ func evalTestcase_Rego(rulePath string, queryString string, inputFilePath string log.Debugf("Result: %v", rs) rsmap := rs[0].Expressions[0].Value.(map[string]interface{}) result := rsmap["allow"].(bool) - errors := rsmap["errors"].([]interface{}) + errors, ok := rsmap["errors"].([]interface{}) + + if !ok || errors == nil { + errors = []interface{}{} + } + if !result { myErrors := make([]string, 0) for _, err := range errors {