Checkpoint Topic state.
Default / Host path (unique: false, including __pregel_tasks): flat
values list, matching Python Topic. Previously this always returned
[seen, values], so empty TASKS became [[], []] and Host's Python
checkpointer rejected it.
When unique: true, keep [seen, values] so dedupe history that outlives
the current buffer still survives resume.
checkpoint(): Value[] | UniqueTopicCheckpoint<Value>