From b59dcd022bf60b88ce763494f33aa1366b001290 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Tron=C3=AD=C4=8Dek?= Date: Thu, 30 Jan 2025 17:08:41 +0000 Subject: [PATCH 1/2] [server] Don't block soft deletion rewinds in `updateDeletionEligibilityTime` Tool: gitpod/catfood.gitpod.cloud --- components/server/src/workspace/workspace-service.ts | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/components/server/src/workspace/workspace-service.ts b/components/server/src/workspace/workspace-service.ts index eeb972fa34c366..ac5d76d3316b23 100644 --- a/components/server/src/workspace/workspace-service.ts +++ b/components/server/src/workspace/workspace-service.ts @@ -568,13 +568,10 @@ export class WorkspaceService { daysToLive = daysToLive * 2; } deletionEligibilityTime.setDate(deletionEligibilityTime.getDate() + daysToLive); - if ( - workspace.deletionEligibilityTime && - workspace.deletionEligibilityTime > deletionEligibilityTime.toISOString() - ) { + if (new Date() > deletionEligibilityTime) { log.warn( { userId, workspaceId, instanceId: instance?.id }, - "[updateDeletionEligibilityTime] Prevented moving deletion eligibility time backwards", + "[updateDeletionEligibilityTime] Prevented moving deletion eligibility time to the past", { hasGitChanges, timestamps: new TrustedValue({ From d8443e3b942cbf0a379206d250ed33c0a6172260 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Tron=C3=AD=C4=8Dek?= Date: Fri, 31 Jan 2025 10:02:13 +0100 Subject: [PATCH 2/2] Use ISO date strings for comparison Co-authored-by: Gero Posmyk-Leinemann --- components/server/src/workspace/workspace-service.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/server/src/workspace/workspace-service.ts b/components/server/src/workspace/workspace-service.ts index ac5d76d3316b23..b19d0088d8a12a 100644 --- a/components/server/src/workspace/workspace-service.ts +++ b/components/server/src/workspace/workspace-service.ts @@ -568,7 +568,7 @@ export class WorkspaceService { daysToLive = daysToLive * 2; } deletionEligibilityTime.setDate(deletionEligibilityTime.getDate() + daysToLive); - if (new Date() > deletionEligibilityTime) { + if (new Date().toISOString() > deletionEligibilityTime.toISOString()) { log.warn( { userId, workspaceId, instanceId: instance?.id }, "[updateDeletionEligibilityTime] Prevented moving deletion eligibility time to the past",