Block a user
Manifest is unencrypted — leaks blob count and sizes
ListSnapshots has destructive side effect: deletes local snapshots not in remote
ctime is in schema and model but verify scanner populates it correctly
Restore: blobCache grows unboundedly, will OOM with large backups
RemoveAllSnapshots has O(n²) duplicate detection for snapshot IDs
syncWithRemote deletes snapshot records without cleaning up related tables
PurgeSnapshots operates across all snapshot names, no per-name filtering
getTableCount uses fmt.Sprintf for SQL table name — potential SQL injection
ListSnapshots downloads manifests synchronously for unknown remote snapshots
deleteSnapshotFromLocalDB silently ignores all errors
--prune flag on snapshot create is a TODO
Restore: downloaded blob hash is not verified
Shallow verify path: deep verification is a TODO stub