Add PIT rollback

This commit is contained in:
carlosmonastyrski
2025-05-09 16:03:50 -03:00
parent 78d5bc823d
commit 9e1d38a27b
7 changed files with 484 additions and 12 deletions
+34
View File
@@ -24,4 +24,38 @@ export const registerPITRouter = async (server: FastifyZodProvider) => {
return backup;
}
});
server.route({
method: "POST",
url: "/rollback",
config: {
rateLimit: readLimit
},
schema: {
body: z.object({
fromCommit: z.string().trim(),
toCommit: z.string().trim(),
folderId: z.string().trim(),
projectId: z.string().trim()
}),
response: {
200: z.any()
}
},
handler: async (req) => {
const diff = await server.services.folderCommit.compareFolderStates(req.body.fromCommit, req.body.toCommit);
const response = await server.services.folderCommit.applyFolderStateDifferences(
diff,
{
actorType: req.permission?.type || "PLATFORM",
actorId: req.permission?.id,
message: "Rollback to previous commit"
},
req.body.folderId,
req.body.projectId
);
return response;
}
});
};