cleanup: track archived sessions in multi-session checkpoints
main·
Commit

ListOrphanedSessionStates previously indexed only cp.SessionID (the most-recent session of a multi-session checkpoint). Archived sessions whose IDs appear in cp.SessionIDs but not cp.SessionID were treated as having no checkpoints and could be flagged for deletion if their shadow branch had already been condensed.
Track every session ID the checkpoint contributed to, so condensed sessions stay reachable to the orphan check.
Entire-Checkpoint: df56ed33e7ec
Checkpoints
Checkpoint 1