Report datasets present in the manifest but absent from the destination repo,
grouped by their migration action (ERROR/skipped/...), to explain the src-vs-dst
count gap. Also de-duplicate manifest rows by root (resumed runs append).
Reads the run manifest(s), selects datasets that errored during migration and/or
were labelled SO but aren't a real 6-DOF SO arm, intersects with what's actually
present in the destination repo, and deletes their folders. Dry-run by default.