From de2b593b25a7de4e53c07d79791338377b332f03 Mon Sep 17 00:00:00 2001 From: tristantr Date: Mon, 15 Jun 2026 14:25:27 +0200 Subject: [PATCH] Nit fixes --- .../components/workspaceSettings/DeployToHub.svelte | 13 +++++++++++-- .../src/routes/(root)/(logged)/folders/+page.svelte | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/frontend/src/lib/components/workspaceSettings/DeployToHub.svelte b/frontend/src/lib/components/workspaceSettings/DeployToHub.svelte index 624199e789..0eb545ca60 100644 --- a/frontend/src/lib/components/workspaceSettings/DeployToHub.svelte +++ b/frontend/src/lib/components/workspaceSettings/DeployToHub.svelte @@ -450,6 +450,12 @@ hubReadme = '' previewItemCache.clear() previewTypeCache.clear() + // Close any open drawers and clear their targets so stale item paths + // from the previous workspace don't linger. + recordDrawer?.closeDrawer() + publishDrawer?.closeDrawer() + recordTarget = undefined + publishTarget = undefined loadWorkspace($workspaceStore, seq) loadTriggers($workspaceStore, seq) // Resume the folder's project if one exists. @@ -1070,10 +1076,12 @@ const workspace = $workspaceStore if (!workspace) return const slug = hubSlug - // Snapshot the selection up-front so a folder switch mid-deploy can't - // rewrite draftItems on success. + // Snapshot the selection and workspace sequence up-front so a workspace + // switch mid-deploy can't write stale state into the new workspace. + const deploySeq = workspaceLoadSeq const itemsSnapshot = selectedItems.slice() const triggersSnapshot = relevantTriggers.slice() + hubItemIds = {} deploying = true let failures = 0 try { @@ -1175,6 +1183,7 @@ } await sleep(150) + if (deploySeq !== workspaceLoadSeq) return deploymentStatus = {} draftItems = itemsSnapshot.map((i) => ({ ...i, rec: 'none' })) recordings = {} diff --git a/frontend/src/routes/(root)/(logged)/folders/+page.svelte b/frontend/src/routes/(root)/(logged)/folders/+page.svelte index 3569ff12af..c13dbeb613 100644 --- a/frontend/src/routes/(root)/(logged)/folders/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/folders/+page.svelte @@ -217,7 +217,7 @@ { displayName: 'Publish to Hub', icon: UploadCloud, - disabled: !canWrite, + disabled: !($userStore?.is_admin || $userStore?.is_super_admin), action: () => { publishFolderName = name hubDrawer?.openDrawer()