nondeterministic-key
errorA dedupe or idempotency key is derived from Date.now(), Math.random(), uuid(), or similar.
Why it goes wrong
The key is different on every delivery, so neither the guard nor the provider recognizes the retry as a duplicate.
Safe pattern
Build keys only from values that are identical on every delivery: the provider's event id, the job id, or a business id from the payload.
Configure
// retrysafe.config.ts
export default defineConfig({
rules: { "nondeterministic-key": "error" }, // or "off"
});
// or, for one line (a reason is required):
// retrysafe-ignore nondeterministic-key -- <why this is safe>