From d22b935d2900acb7f4f55190fb57a44b38fe57ce Mon Sep 17 00:00:00 2001 From: Dotta Date: Sat, 10 Oct 2026 15:17:11 -0500 Subject: [PATCH] fix(computers): select latest task admission for previews Integrate the production route correction from 5af1eb0762; its full route regression suite remains in the stacked acceptance PR. Co-Authored-By: Paperclip --- server/src/routes/computers.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/server/src/routes/computers.ts b/server/src/routes/computers.ts index 719848f69a..591db369f0 100644 --- a/server/src/routes/computers.ts +++ b/server/src/routes/computers.ts @@ -34,7 +34,9 @@ export function computerRoutes(db: Db, computers = computerService(db)) { } const [lease] = await db.select().from(environmentLeases) .where(and(eq(environmentLeases.companyId, issue.companyId), eq(environmentLeases.issueId, issue.id), eq(environmentLeases.provider, "boat"))) - .orderBy(desc(environmentLeases.updatedAt)).limit(1); + // Every computer admission inserts a lease. Finalization can update an older + // lease later, but must not make it the task's current authority again. + .orderBy(desc(environmentLeases.createdAt), desc(environmentLeases.id)).limit(1); const [agent] = issue.assigneeAgentId ? await db.select().from(agents) .where(and(eq(agents.companyId, issue.companyId), eq(agents.id, issue.assigneeAgentId))).limit(1) : []; const environmentId = lease?.environmentId ?? agent?.defaultEnvironmentId ?? (await settings.get()).defaultEnvironmentId;