From c7d05096ab25fbc091b81ac949781f8ee030a379 Mon Sep 17 00:00:00 2001 From: dotta Date: Thu, 19 Mar 2026 17:35:30 -0500 Subject: [PATCH] Allow Run Now on paused routines MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The server rejected manual runs for any non-active routine. Now only archived routines are blocked — paused routines can still be triggered manually via "Run now". Co-Authored-By: Paperclip --- server/src/services/routines.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/services/routines.ts b/server/src/services/routines.ts index b4730c0b..41221522 100644 --- a/server/src/services/routines.ts +++ b/server/src/services/routines.ts @@ -885,7 +885,7 @@ export function routineService(db: Db) { runRoutine: async (id: string, input: RunRoutine) => { const routine = await getRoutineById(id); if (!routine) throw notFound("Routine not found"); - if (routine.status !== "active") throw conflict("Routine is not active"); + if (routine.status === "archived") throw conflict("Routine is archived"); const trigger = input.triggerId ? await getTriggerById(input.triggerId) : null; if (trigger && trigger.routineId !== routine.id) throw forbidden("Trigger does not belong to routine"); if (trigger && !trigger.enabled) throw conflict("Routine trigger is not active");