fn compact_and_save() -> Result<(), String>Expand description
Force a compaction and save what it discarded, from the daemon’s own
answer (Response::Compacted: the segment, read in the same core call as
the compaction). Reading the segment here first left a gap the daemon’s
tick could journal into, so the saved history fell short of what the
checkpoint holds (gate 41604917858, replay_equivalent).