From 5059c23b434348806605f11b92c4d3bc13a21c72 Mon Sep 17 00:00:00 2001 From: "gcp-cherry-pick-bot[bot]" <98988430+gcp-cherry-pick-bot[bot]@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:47:50 -0500 Subject: [PATCH 1/2] fix: handle null response from the template presets endpoint (cherry-pick #18723) (#18724) Co-authored-by: Hugo Dutka --- site/src/api/api.ts | 2 +- site/src/pages/TasksPage/TasksPage.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/site/src/api/api.ts b/site/src/api/api.ts index 458e93b32cdbe..2b13c77faffa1 100644 --- a/site/src/api/api.ts +++ b/site/src/api/api.ts @@ -1237,7 +1237,7 @@ class ApiMethods { getTemplateVersionPresets = async ( templateVersionId: string, - ): Promise => { + ): Promise => { const response = await this.axios.get( `/api/v2/templateversions/${templateVersionId}/presets`, ); diff --git a/site/src/pages/TasksPage/TasksPage.tsx b/site/src/pages/TasksPage/TasksPage.tsx index 3f2bb019ea204..d678098affd17 100644 --- a/site/src/pages/TasksPage/TasksPage.tsx +++ b/site/src/pages/TasksPage/TasksPage.tsx @@ -610,7 +610,7 @@ export const data = { templateVersionId: string, ): Promise { const presets = await API.getTemplateVersionPresets(templateVersionId); - const defaultPreset = presets.find((p) => p.Default); + const defaultPreset = presets?.find((p) => p.Default); const workspace = await API.createWorkspace(userId, { name: `task-${generateWorkspaceName()}`, template_version_id: templateVersionId, From f97bd76bb53b07093d7ecb62d731e7bf0adb4120 Mon Sep 17 00:00:00 2001 From: "gcp-cherry-pick-bot[bot]" <98988430+gcp-cherry-pick-bot[bot]@users.noreply.github.com> Date: Wed, 2 Jul 2025 13:14:55 -0500 Subject: [PATCH 2/2] fix: handle task sidebar app health check disabled correctly (cherry-pick #18687) (#18726) Co-authored-by: Hugo Dutka --- site/src/pages/TaskPage/TaskPage.stories.tsx | 2 +- site/src/pages/TaskPage/TaskSidebar.tsx | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/site/src/pages/TaskPage/TaskPage.stories.tsx b/site/src/pages/TaskPage/TaskPage.stories.tsx index b025c9994f3d0..0799f4625c95f 100644 --- a/site/src/pages/TaskPage/TaskPage.stories.tsx +++ b/site/src/pages/TaskPage/TaskPage.stories.tsx @@ -113,7 +113,7 @@ export const TerminatedBuildWithStatus: Story = { }, }; -export const SidebarAppDisabled: Story = { +export const SidebarAppHealthDisabled: Story = { beforeEach: () => { spyOn(data, "fetchTask").mockResolvedValue({ prompt: "Create competitors page", diff --git a/site/src/pages/TaskPage/TaskSidebar.tsx b/site/src/pages/TaskPage/TaskSidebar.tsx index e90261eb7960d..ca691bea08788 100644 --- a/site/src/pages/TaskPage/TaskSidebar.tsx +++ b/site/src/pages/TaskPage/TaskSidebar.tsx @@ -54,8 +54,10 @@ const getSidebarApp = (task: Task): [WorkspaceApp | null, SidebarAppStatus] => { // indefinitely if there's a genuine issue, but this is preferable to false error alerts. return [null, "loading"]; } + // "disabled" means that the health check is disabled, so we assume + // that the app is healthy if (sidebarApp.health === "disabled") { - return [sidebarApp, "error"]; + return [sidebarApp, "healthy"]; } if (sidebarApp.health === "healthy") { return [sidebarApp, "healthy"]; pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy