From edce50fb794095af6c5c972d5b4baf07b0c87aad Mon Sep 17 00:00:00 2001 From: michael hohn Date: Mon, 20 Oct 2025 21:33:02 -0700 Subject: [PATCH] Add missing result[] handling fixes missing result errors #+BEGIN_SRC text Traceback (most recent call last): File "/mnt/common/home/hohn/work-gh/sarif-cli/.venv-ubuserv/bin/sarif-to-table", line 125, in num_results = len(S.get(sarif_struct, 'runs', runi, 'results')) File "/mnt/common/home/hohn/work-gh/sarif-cli/sarif_cli/traverse.py", line 169, in get res = res[p] KeyError: 'results' 76% 3204:1006=7s ./repos/RasaHQ/rasa/code-scanning/analyses/132221999.sarif Traceback (most recent call last): File "/mnt/common/home/hohn/work-gh/sarif-cli/.venv-ubuserv/bin/sarif-to-table", line 125, in num_results = len(S.get(sarif_struct, 'runs', runi, 'results')) File "/mnt/common/home/hohn/work-gh/sarif-cli/sarif_cli/traverse.py", line 169, in get res = res[p] KeyError: 'results' #+END_SRC --- bin/sarif-to-table | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bin/sarif-to-table b/bin/sarif-to-table index 3b3c5ae..66675da 100755 --- a/bin/sarif-to-table +++ b/bin/sarif-to-table @@ -122,9 +122,13 @@ atexit.register(_flush_buffer) # -------------------------------------------------------------------- for runi in S.indices(sarif_struct, 'runs'): unique_id = compute_unique_id(sarif_struct, runi, args.file) - num_results = len(S.get(sarif_struct, 'runs', runi, 'results')) - if num_results == 0: + run_obj = S.get(sarif_struct, 'runs', runi) + results = run_obj.get('results', []) + if not results: + S.dbg(f"Skipping {args.file} run {runi}: no results key\n") continue + num_results = len(results) + for resi in S.indices(sarif_struct, 'runs', runi, 'results'): result = S.get(sarif_struct, 'runs', runi, 'results', resi) rule_id = result.get("ruleId")