A checkpoint records the state of a long task at key steps. In case of failure or interruption, processing resumes from the last saved point instead of starting over, which avoids losing work and paying twice for model calls.
Example
After each step, save {step: 3, results: [...]} to the database.