cleanup: track archived sessions in multi-session checkpoints

main

Commit

pfleidi3mo ago

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

Finish Checkpoints v1.1 Topology Coverage

Claude CodeOpus 4.7[1m]
View session
Checkpoint 1