[web] Add deletedReason parameter to project deletion methods (#32221)

* [web] Add deletedReason parameter to project deletion methods

* revert sinon.match.any in ProjectDuplicator negative assertion

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: d1595eefe0e36150231ee9646fe5eba0786fd1f5
This commit is contained in:
Domagoj Kriskovic
2026-03-23 09:06:04 +00:00
committed by Copybot
co-authored by Copilot Autofix powered by AI
parent c9ba2ac025
commit 6486ef3e1e
13 changed files with 53 additions and 12 deletions
@@ -13,6 +13,7 @@ import ProjectEntityMongoUpdateHandler from '../Project/ProjectEntityMongoUpdate
import ProjectRootDocManager from '../Project/ProjectRootDocManager.mjs'
import ProjectDetailsHandler from '../Project/ProjectDetailsHandler.mjs'
import ProjectDeleter from '../Project/ProjectDeleter.mjs'
import { DeletedProjectReasons } from '../Project/DeletedProjectReasons.mjs'
import TpdsProjectFlusher from '../ThirdPartyDataStore/TpdsProjectFlusher.mjs'
import logger from '@overleaf/logger'
import OError from '@overleaf/o-error'
@@ -55,7 +56,9 @@ async function createProjectFromZipArchive(ownerId, defaultName, zipPath) {
} catch (err) {
// no need to wait for the cleanup here
ProjectDeleter.promises
.deleteProject(project._id)
.deleteProject(project._id, {
deletedReason: DeletedProjectReasons.ZIP_IMPORT_FAILURE,
})
.catch(err =>
logger.error(
{ err, projectId: project._id },
@@ -97,7 +100,9 @@ async function createProjectFromZipArchiveWithName(
} catch (err) {
// no need to wait for the cleanup here
ProjectDeleter.promises
.deleteProject(project._id)
.deleteProject(project._id, {
deletedReason: DeletedProjectReasons.ZIP_IMPORT_FAILURE,
})
.catch(err =>
logger.error(
{ err, projectId: project._id },