personal memory agent

fix(retention): keep talent day indexes holding recent runs master

Delete a filename-old talent day index only when it has at least one valid row and every valid row's local execution date is older than the retention cutoff. Recent-filename indexes are never opened. Unreadable or malformed old indexes are preserved and recorded via unreadable_talent_index or malformed_talent_index_row. Empty old indexes are preserved as a plain skip. Map row ts values to local dates to match _parse_epoch_ms and the existing retention cutoff convention.


+142 -5
2 changed files