Most tutorials show you how to send a task to Celery. None of them show you what

happens when that task runs twice.

In production, tasks run twice constantly — network retries, worker crashes,

accidental re-queues. If your task isn't idempotent, you'll process the same order

twice, send the same email twice, or charge a customer twice.