Treat empty memo selections as no-ops so a repeated trash cleanup cannot delete the entire local mirror. Add regression coverage for repeated cleanup and empty batch mutations.\n\nFixes #420
Treat empty memo selections as no-ops so a repeated trash cleanup cannot delete the entire local mirror. Add regression coverage for repeated cleanup and empty batch mutations.\n\nFixes #420