retrysafe
← All rules

queue-add-without-job-id

info

A job or message is enqueued without the queue's deduplication id (jobId, MessageDeduplicationId, event id).

Why it goes wrong

When the handler is redelivered it enqueues the work again, and the downstream job runs twice.

Safe pattern

Set the queue's deduplication id from the event id so a redelivery enqueues nothing new.

Configure

// retrysafe.config.ts
export default defineConfig({
  rules: { "queue-add-without-job-id": "info" }, // or "off"
});

// or, for one line (a reason is required):
// retrysafe-ignore queue-add-without-job-id -- <why this is safe>