| 748 | } |
| 749 | |
| 750 | std::string CmdPruneLocalLegacyMetadata(const std::string& cloudRootArg) { |
| 751 | std::string cloudRoot = NormalizeCloudRoot(cloudRootArg); |
| 752 | if (cloudRoot.empty()) { |
| 753 | return JsonError("cloud_root is required"); |
| 754 | } |
| 755 | |
| 756 | auto stats = LegacyMetadataCleanup::PruneLocalLegacyAppMetadata(cloudRoot); |
| 757 | return JsonObject({ |
| 758 | {"success", JsonBool(stats.errors == 0)}, |
| 759 | {"files_removed", JsonInt(stats.filesRemoved)}, |
| 760 | {"dirs_removed", JsonInt(stats.dirsRemoved)}, |
| 761 | {"errors", JsonInt(stats.errors)} |
| 762 | }); |
| 763 | } |
| 764 | |
| 765 | std::string CmdPublishFullManifest(const std::string& provider, const std::string& accountId, const std::string& appId, |
| 766 | const std::string& cloudRootArg) { |
no test coverage detected