refactor(process): break after first fail instead of failed_ids workaround

This commit is contained in:
beo3000 2026-06-15 17:39:15 +02:00
parent c3d345b6a7
commit 58b515abe9
1 changed files with 1 additions and 7 deletions

View File

@ -11,16 +11,10 @@ def process_once(processor, queue: Queue, writer: VaultWriter, vault_path: Path,
return 0
ctx = collect_vault_context(vault_path, today=today)
processed = 0
failed_ids: set[int] = set()
while True:
item = queue.claim_next()
if item is None:
break
if item.update_id in failed_ids:
# Already failed this run; re-queue without incrementing and stop.
queue.enqueue(item)
(queue.working / f"{item.update_id}.json").unlink(missing_ok=True)
break
try:
received_dt = datetime.fromisoformat(item.received_at)
received_time = received_dt.strftime("%H:%M")
@ -44,5 +38,5 @@ def process_once(processor, queue: Queue, writer: VaultWriter, vault_path: Path,
processed += 1
except Exception:
queue.fail(item)
failed_ids.add(item.update_id)
break # avoid re-claiming the same item in this run
return processed