← ClaudeAtlas

dlq-replaylisted

Replay messages from a dead-letter queue back to a primary handler — selective or full, idempotency-safe, rate-limited, observable, and reversible (re-DLQ on failure). Run once the poison message's root cause is resolved, on a periodic DLQ drain, or during disaster recovery. Never run before the handler bug is fixed — replay re-poisons the queue.
adnanmokhtar/refract · ★ 1 · AI & Automation · score 77
Install: claude install-skill adnanmokhtar/refract
# Skill: dlq-replay DLQ messages don't fix themselves. After fixing the root cause, the messages need replay. This skill does it safely. ## Premise Real signals only. Cite the actual DLQ name, message IDs, broker, and target queue/topic. Every claim ("root cause fixed", "idempotency held", "replay safe") cites the commit / test / log line that supports it. Sample replay's verdict comes from the live handler outcome — not "should work". Bulk replay numbers are captured from the broker (depth before, depth after, replay rate observed). No replay without a logged audit trail of who, when, and how many. ## Halt conditions - Refuse to bulk replay without a successful single-message sample run. - Refuse to replay without confirming the root-cause-fix commit is deployed. - Halt if idempotency isn't verified — replay without it duplicates side effects. - Halt if peak-traffic window — replay competes with live load. - Don't drop a message from the DLQ until the primary queue's `send` has been ACKed. ## When to use - Root cause of a poison message resolved (handler bug fixed, schema drift addressed, downstream service recovered). - Periodic DLQ drain (after audits). - Disaster recovery: events lost during outage, replay from a buffered store. ## When NOT to use - Root cause NOT fixed → replay just re-poisons. - Without idempotency in handlers → replay causes duplicate side effects. - During peak load → replay competes with live traffic; do off-peak. ## Procedure ### 1. Confi