From 5e5dd27e1cd3258c1d602e548304f398ccba0899 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sat, 6 Jun 2026 01:49:22 +0000 Subject: [PATCH] perf: optimize json parsing in idstack-learnings-delete Iterate backward and break early to avoid unnecessary JSON parsing of preceding lines. Also fixes bash interpolation of python variable per project guidelines. Co-authored-by: savvides <1580637+savvides@users.noreply.github.com> --- bin/idstack-learnings-delete | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/bin/idstack-learnings-delete b/bin/idstack-learnings-delete index 129e084..d84a768 100755 --- a/bin/idstack-learnings-delete +++ b/bin/idstack-learnings-delete @@ -16,20 +16,22 @@ if ! command -v python3 &>/dev/null; then exit 1 fi +export LEARNINGS python3 -c " -import json, sys +import json, sys, os key = sys.argv[1] -learnings_file = '$LEARNINGS' +learnings_file = os.environ.get('LEARNINGS') lines = open(learnings_file).readlines() # Find the last line with this key and remove it found_idx = -1 -for i, line in enumerate(lines): +for i, line in reversed(list(enumerate(lines))): try: d = json.loads(line) if d.get('key') == key: found_idx = i + break except: pass