From 913e93960603fc6d2209dfea8c29d66cc87977a4 Mon Sep 17 00:00:00 2001 From: Paul Makles Date: Wed, 28 Jan 2026 12:55:18 +0000 Subject: [PATCH] fix(server): don't assume maintenance action is set (#25622) --- server/src/maintenance/maintenance-worker.service.ts | 7 +++++-- server/src/types.ts | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/server/src/maintenance/maintenance-worker.service.ts b/server/src/maintenance/maintenance-worker.service.ts index 8ad92799cd..6415693733 100644 --- a/server/src/maintenance/maintenance-worker.service.ts +++ b/server/src/maintenance/maintenance-worker.service.ts @@ -79,7 +79,7 @@ export class MaintenanceWorkerService { this.#secret = state.secret; this.#status = { active: true, - action: state.action.action, + action: state.action?.action ?? MaintenanceAction.Start, }; StorageCore.setMediaLocation(this.detectMediaLocation()); @@ -88,7 +88,10 @@ export class MaintenanceWorkerService { this.maintenanceWebsocketRepository.setStatusUpdateFn((status) => (this.#status = status)); await this.logSecret(); - void this.runAction(state.action); + + if (state.action) { + void this.runAction(state.action); + } } /** diff --git a/server/src/types.ts b/server/src/types.ts index f851ebd994..3e9ea25957 100644 --- a/server/src/types.ts +++ b/server/src/types.ts @@ -490,7 +490,7 @@ export interface MemoryData { export type VersionCheckMetadata = { checkedAt: string; releaseVersion: string }; export type SystemFlags = { mountChecks: Record }; export type MaintenanceModeState = - | { isMaintenanceMode: true; secret: string; action: SetMaintenanceModeDto } + | { isMaintenanceMode: true; secret: string; action?: SetMaintenanceModeDto } | { isMaintenanceMode: false }; export type MemoriesState = { /** memories have already been created through this date */