From c5c9a1d4354503331e274d6f991ff2511a2cd1c1 Mon Sep 17 00:00:00 2001 From: Dax Date: Sun, 24 May 2026 19:31:19 -0400 Subject: [PATCH] fix(opencode): preserve session update time during project migration (#29147) --- packages/opencode/src/project/project.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/opencode/src/project/project.ts b/packages/opencode/src/project/project.ts index 4b4f2cdf58..2ef299e944 100644 --- a/packages/opencode/src/project/project.ts +++ b/packages/opencode/src/project/project.ts @@ -1,6 +1,5 @@ -import { and } from "drizzle-orm" +import { and, eq, sql } from "drizzle-orm" import { Database } from "@/storage/db" -import { eq } from "drizzle-orm" import { ProjectTable } from "./project.sql" import { PermissionTable, SessionTable } from "../session/session.sql" import { WorkspaceTable } from "../control-plane/workspace.sql" @@ -220,7 +219,10 @@ export const layer = Layer.effect( d.update(PermissionTable).set({ project_id: newID }).where(eq(PermissionTable.project_id, oldID)).run() } - d.update(SessionTable).set({ project_id: newID }).where(eq(SessionTable.project_id, oldID)).run() + d.update(SessionTable) + .set({ project_id: newID, time_updated: sql`${SessionTable.time_updated}` }) + .where(eq(SessionTable.project_id, oldID)) + .run() d.update(WorkspaceTable).set({ project_id: newID }).where(eq(WorkspaceTable.project_id, oldID)).run() if (oldProject) d.delete(ProjectTable).where(eq(ProjectTable.id, oldID)).run()