Lesson 4: Long-running work that survives crashes and retries
30 min read·
Module 8 · Lesson 4 · About 55 minutes · Needs: Module 4 lesson 3 (synchronous or asynchronous), Module 5 lesson 1 (idempotent ingestion, the dead-letter list), Module 1 lesson 2 (retries and idempotency keys). No key and no model calls
The situation
Week 8. Nobody has said what happens when Intake's work is interrupted. Funmi asks: "A deploy restarts the workers. What happens to a sync that was half done?"
The running example is one job, sync-t-marlow-2026-10-05: Marlow County Council's drive sync on 5 October, 79 files. 76 index; three uploads are broken (t-marlow-d077, d078, d079). The job ends by opening one helpdesk ticket for Marlow's IT team with tickets.create. Leila wants one ticket, not two.