[0.15.0] - 2026-04-25
Changed
pruneContentaccepts an optionalisRecoverable(sessionId)callback and skips sidecars whose source session file still exists. The ledger package stays decoupled from adapter-specific paths — the predicate is supplied by the caller.PruneResultnow carries askippedRecoverablecount alongsidefilesDeleted/bytesFreed. WithoutisRecoverable(or with a throwing predicate), retention is applied unchanged. (#61)