feat(dead-letter): add transient auto-requeue#104
Conversation
* transient dead-letter root 분류와 1회 자동 재투입 정책 추가 * NoSQL 조건부 requeue와 personal systemd timer-ready unit 추가 * CLI/runtime/storage 회귀 테스트와 리뷰 보강 케이스 추가
There was a problem hiding this comment.
Code Review
This pull request introduces a conservative, timer-ready dead-letter auto-requeue feature to automatically recover transient verifier failures. It includes new systemd user service and timer units, design and requirements documentation, a new CLI command, and NoSQL database updates to track auto-requeue counts and perform conditional updates. Feedback highlights a potential issue in the DynamoDB conditional write expression when last_error is None (which can cause valid jobs to be skipped), as well as a missing keyword-only argument separator in the storage protocol signature that causes type-checking mismatches.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
What
dead-letter auto-requeuerecovery for transient verifier dead-letter jobs.autoRequeueCountand enforce one automatic requeue per job.Why
Operators need a safe recovery path for verifier timeout, transport, and lease-expiry backlog after overload without introducing SQS, LocalStack, Kafka-style offsets, outbox storage, new tables, or new GSIs.
Safety
verifyjobs.Verification
ruff checkon changed files passed.pending, one-shot skip on a repeated dead-letter, and a one-shot user systemd service run without enabling the timer.Closes #103