fix: preserve issue workspace environment selection

Preserve execution workspace environmentId values through normal issue updates so explicit operator selections survive workspace setting serialization and reused workspace metadata sync.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Nicky LeachandPaperclip committed 2026-07-08 17:06:51 +00:00
1 parent e5edf34b6b
commit 381c8fc60d
2 files changed
+3 -8

No files matched your search

+1 -4
View File
@@ -11108,10 +11108,7 @@ export function heartbeatService(db: Db, options: HeartbeatServiceOptions = {})
};
}
if (Object.keys(nextIssuePatch).length > 0) {
await issuesSvc.update(issueId, {
...nextIssuePatch,
preserveExecutionWorkspaceEnvironmentId: true,
});
await issuesSvc.update(issueId, nextIssuePatch);
}
}
if (persistedExecutionWorkspace) {
+2 -4
View File
@@ -6167,7 +6167,6 @@ export function issueService(db: Db) {
blockedByIssueIds?: string[];
actorAgentId?: string | null;
actorUserId?: string | null;
preserveExecutionWorkspaceEnvironmentId?: boolean;
},
dbOrTx: any = db,
) => {
@@ -6183,7 +6182,6 @@ export function issueService(db: Db) {
blockedByIssueIds,
actorAgentId,
actorUserId,
preserveExecutionWorkspaceEnvironmentId,
...issueData
} = data;
const isolatedWorkspacesEnabled = (await instanceSettings.getExperimental()).enableIsolatedWorkspaces;
@@ -6248,11 +6246,11 @@ export function issueService(db: Db) {
issueData.executionWorkspaceSettings !== undefined
? parseIssueExecutionWorkspaceSettings(
issueData.executionWorkspaceSettings,
{ includeEnvironmentId: preserveExecutionWorkspaceEnvironmentId === true },
{ includeEnvironmentId: true },
)
: parseIssueExecutionWorkspaceSettings(
existing.executionWorkspaceSettings,
{ includeEnvironmentId: preserveExecutionWorkspaceEnvironmentId === true },
{ includeEnvironmentId: true },
);
if (issueData.executionWorkspaceSettings !== undefined) {
patch.executionWorkspaceSettings = nextExecutionWorkspaceSettings