From 7e5ef0db1b494be62e9ce576def70f6f485646d0 Mon Sep 17 00:00:00 2001 From: syt Date: Fri, 20 Mar 2026 15:04:24 +0800 Subject: [PATCH] Retry cached releases that failed due to download errors Previously, releases cached with parse_success=False were never re-attempted. Now "Download failed" entries are excluded from checked tags so they get retried on the next run. Co-Authored-By: Claude Opus 4.6 (1M context) --- src/zotero_scraper/cache/release_cache.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/zotero_scraper/cache/release_cache.py b/src/zotero_scraper/cache/release_cache.py index 9b12d97..27f30d4 100644 --- a/src/zotero_scraper/cache/release_cache.py +++ b/src/zotero_scraper/cache/release_cache.py @@ -125,8 +125,15 @@ class RepoCache: ) def get_checked_tags(self) -> set[str]: - """Get set of already checked tags.""" - return {r.tag for r in self.checked_releases} + """Get set of already checked tags. + + Excludes releases that failed due to download errors, + so they can be retried. + """ + return { + r.tag for r in self.checked_releases + if not (not r.parse_success and r.parse_error == "Download failed") + } def get_release_by_tag(self, tag: str) -> Optional[CachedRelease]: """Get cached release by tag."""