diff --git a/apps/webapp/app/v3/marqs/devQueueConsumer.server.ts b/apps/webapp/app/v3/marqs/devQueueConsumer.server.ts index f459b0085..ef6086c09 100644 --- a/apps/webapp/app/v3/marqs/devQueueConsumer.server.ts +++ b/apps/webapp/app/v3/marqs/devQueueConsumer.server.ts @@ -409,6 +409,7 @@ export class DevQueueConsumer { data: { lockedAt: new Date(), lockedById: backgroundTask.id, + lockedToVersionId: backgroundWorker.id, }, include: { attempts: { diff --git a/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts b/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts index 718f91e3c..57ddafb31 100644 --- a/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts +++ b/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts @@ -260,6 +260,14 @@ export class SharedQueueConsumer { where: { id: message.messageId, }, + include: { + lockedToVersion: { + include: { + deployment: true, + tasks: true, + }, + }, + }, }); if (!existingTaskRun) { @@ -309,7 +317,12 @@ export class SharedQueueConsumer { return; } - const deployment = await findCurrentWorkerDeployment(existingTaskRun.runtimeEnvironmentId); + const deployment = existingTaskRun.lockedToVersion?.deployment + ? { + ...existingTaskRun.lockedToVersion.deployment, + worker: existingTaskRun.lockedToVersion, + } + : await findCurrentWorkerDeployment(existingTaskRun.runtimeEnvironmentId); if (!deployment || !deployment.worker) { logger.error("No matching deployment found for task run", { @@ -384,6 +397,7 @@ export class SharedQueueConsumer { data: { lockedAt: new Date(), lockedById: backgroundTask.id, + lockedToVersionId: deployment.worker.id, }, include: { runtimeEnvironment: true, diff --git a/apps/webapp/app/v3/services/triggerTask.server.ts b/apps/webapp/app/v3/services/triggerTask.server.ts index 38ec94bdd..8c535d4fc 100644 --- a/apps/webapp/app/v3/services/triggerTask.server.ts +++ b/apps/webapp/app/v3/services/triggerTask.server.ts @@ -4,7 +4,6 @@ import { TriggerTaskRequestBody, packetRequiresOffloading, } from "@trigger.dev/core/v3"; -import { nanoid } from "nanoid"; import { createHash } from "node:crypto"; import { $transaction } from "~/db.server"; import { AuthenticatedEnvironment } from "~/services/apiAuth.server";