Cause: No explicit retry policy or poison task handling.
Analysis: Failed tasks can loop indefinitely or be lost without structured retries.
Acceptance Criteria:
- Retries are bounded with backoff and dead-letter handling.
- Poison tasks are quarantined with clear error reasons.
Solution Approach:
- Add retry counters and failure states.
- Create a dead-letter queue or failure table.