- Checkpoint is associated with a graph
- Graph is associated with an agent
- Agent is associated with a run
- Run is associated with a thread
The concept of checkpoint doesn't make any sense to be stored in the context of a Thread. Instead it should be stored within a Run.
I propose to update the Get Thread History API to return a list of {values, messages}(s) instead of a list of checkpoints