From 4acfb978a37c1b4388314121e1097b00da08a7ef Mon Sep 17 00:00:00 2001 From: Rex P Date: Fri, 15 Aug 2025 11:54:46 +1000 Subject: [PATCH 1/3] feat: Skip writing import findings at import time, just do it during cron job run --- gcp/workers/importer/importer.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gcp/workers/importer/importer.py b/gcp/workers/importer/importer.py index b5b54475691..0de1313ea67 100755 --- a/gcp/workers/importer/importer.py +++ b/gcp/workers/importer/importer.py @@ -265,6 +265,10 @@ def _record_quality_finding( findings for the record (if any already exist) """ + # TODO: Do not write import findings at import time, as it could cause + # confusing results. + # We run osv-linter daily on all records and populate the linting bucket. + return # Get any current findings for this record. findingtimenow = utcnow() if existing_finding := osv.ImportFinding.get_by_id(bug_id): From 06247a53bcdead002b303ba92bfd191d7458005d Mon Sep 17 00:00:00 2001 From: Rex P Date: Fri, 15 Aug 2025 14:14:21 +1000 Subject: [PATCH 2/3] Comment out findings to avoid lint --- gcp/workers/importer/importer.py | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/gcp/workers/importer/importer.py b/gcp/workers/importer/importer.py index 0de1313ea67..990f3a34126 100755 --- a/gcp/workers/importer/importer.py +++ b/gcp/workers/importer/importer.py @@ -267,22 +267,23 @@ def _record_quality_finding( # TODO: Do not write import findings at import time, as it could cause # confusing results. - # We run osv-linter daily on all records and populate the linting bucket. + # We run osv-linter daily on all records and populate + # the linting bucket. return - # Get any current findings for this record. - findingtimenow = utcnow() - if existing_finding := osv.ImportFinding.get_by_id(bug_id): - if maybe_new_finding not in existing_finding.findings: - existing_finding.findings.append(maybe_new_finding) - existing_finding.last_attempt: findingtimenow - existing_finding.put() - else: - osv.ImportFinding( - bug_id=bug_id, - source=source, - findings=[maybe_new_finding], - first_seen=findingtimenow, - last_attempt=findingtimenow).put() + # # Get any current findings for this record. + # findingtimenow = utcnow() + # if existing_finding := osv.ImportFinding.get_by_id(bug_id): + # if maybe_new_finding not in existing_finding.findings: + # existing_finding.findings.append(maybe_new_finding) + # existing_finding.last_attempt: findingtimenow + # existing_finding.put() + # else: + # osv.ImportFinding( + # bug_id=bug_id, + # source=source, + # findings=[maybe_new_finding], + # first_seen=findingtimenow, + # last_attempt=findingtimenow).put() def run(self): """Run importer.""" From 69bb4706258809d92805bcc8034afaab6f7e835e Mon Sep 17 00:00:00 2001 From: Rex P Date: Fri, 15 Aug 2025 14:25:28 +1000 Subject: [PATCH 3/3] Use a global variable instead --- gcp/workers/importer/importer.py | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/gcp/workers/importer/importer.py b/gcp/workers/importer/importer.py index 990f3a34126..aed53257880 100755 --- a/gcp/workers/importer/importer.py +++ b/gcp/workers/importer/importer.py @@ -54,6 +54,7 @@ _BUCKET_THREAD_COUNT = 20 _HTTP_LAST_MODIFIED_FORMAT = '%a, %d %b %Y %H:%M:%S %Z' _TIMEOUT_SECONDS = 60 +_STORE_QUALITY_FINDINGS = False _client_store = threading.local() @@ -269,21 +270,22 @@ def _record_quality_finding( # confusing results. # We run osv-linter daily on all records and populate # the linting bucket. - return - # # Get any current findings for this record. - # findingtimenow = utcnow() - # if existing_finding := osv.ImportFinding.get_by_id(bug_id): - # if maybe_new_finding not in existing_finding.findings: - # existing_finding.findings.append(maybe_new_finding) - # existing_finding.last_attempt: findingtimenow - # existing_finding.put() - # else: - # osv.ImportFinding( - # bug_id=bug_id, - # source=source, - # findings=[maybe_new_finding], - # first_seen=findingtimenow, - # last_attempt=findingtimenow).put() + if not _STORE_QUALITY_FINDINGS: + return + # Get any current findings for this record. + findingtimenow = utcnow() + if existing_finding := osv.ImportFinding.get_by_id(bug_id): + if maybe_new_finding not in existing_finding.findings: + existing_finding.findings.append(maybe_new_finding) + existing_finding.last_attempt: findingtimenow + existing_finding.put() + else: + osv.ImportFinding( + bug_id=bug_id, + source=source, + findings=[maybe_new_finding], + first_seen=findingtimenow, + last_attempt=findingtimenow).put() def run(self): """Run importer."""