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) <noreply@anthropic.com>
This commit is contained in:
syt 2026-03-20 15:04:24 +08:00
parent b3c1a3b415
commit 7e5ef0db1b

View File

@ -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."""