- Test files deleted or not accessible mid-run
- Test recovery: interruption during tar
- Test recovery: interruption during upload
- Support restoring files (single, multiple, whole backup)
- Support configured temp dir
- Support exclusions
Support pruning archives that are no longer relevant(done via progressive refresh, see below)
Build list of files that are x% irrelevant and older than y days (y at least 180)done:db.get_archives_to_refresh(age = 180 + relevance_ratio * 180, 0 <= relevance_ratio < 1)- Remaining: factor in size too, e.g. age = 180 + relevance_ratio * (size/target_size) * 180
Update files table to flag files that are going to need new backupsdone:db.mark_archive_files_for_backup(backup/refresh.py)Run backups/delete archives pending deletion from AWS/flag archives as deleted— done, unchanged: refresh only marks files for backup, the existingBackup/Purgemachinery (upload, supersession,fix_stats, S3 delete, flagging) does the rest in the same run- Note: refresh does not flag archives "pending deletion" directly — it drives their
relevant_sizeto 0 via ordinary supersession, andPurge's existing rule picks them up