From 169c24cef069b77f4d7f72cdd507ee627303a9a9 Mon Sep 17 00:00:00 2001 From: Hugo Dutka Date: Wed, 18 Jun 2025 17:58:21 +0000 Subject: [PATCH 1/2] add ai task specific fields to codersdk.WorkspaceBuild --- coderd/workspacebuilds.go | 10 ++++++++++ codersdk/workspacebuilds.go | 2 ++ 2 files changed, 12 insertions(+) diff --git a/coderd/workspacebuilds.go b/coderd/workspacebuilds.go index 4d90948a8f9a1..b05f69bb0ad9a 100644 --- a/coderd/workspacebuilds.go +++ b/coderd/workspacebuilds.go @@ -1078,6 +1078,14 @@ func (api *API) convertWorkspaceBuild( if build.TemplateVersionPresetID.Valid { presetID = &build.TemplateVersionPresetID.UUID } + var hasAITask *bool + if build.HasAITask.Valid { + hasAITask = &build.HasAITask.Bool + } + var aiTasksSidebarAppID *uuid.UUID + if build.AITasksSidebarAppID.Valid { + aiTasksSidebarAppID = &build.AITasksSidebarAppID.UUID + } apiJob := convertProvisionerJob(job) transition := codersdk.WorkspaceTransition(build.Transition) @@ -1105,6 +1113,8 @@ func (api *API) convertWorkspaceBuild( DailyCost: build.DailyCost, MatchedProvisioners: &matchedProvisioners, TemplateVersionPresetID: presetID, + HasAITask: hasAITask, + AITaskSidebarAppID: aiTasksSidebarAppID, }, nil } diff --git a/codersdk/workspacebuilds.go b/codersdk/workspacebuilds.go index d3372b272548f..328b8bc26566f 100644 --- a/codersdk/workspacebuilds.go +++ b/codersdk/workspacebuilds.go @@ -75,6 +75,8 @@ type WorkspaceBuild struct { DailyCost int32 `json:"daily_cost"` MatchedProvisioners *MatchedProvisioners `json:"matched_provisioners,omitempty"` TemplateVersionPresetID *uuid.UUID `json:"template_version_preset_id" format:"uuid"` + HasAITask *bool `json:"has_ai_task,omitempty"` + AITaskSidebarAppID *uuid.UUID `json:"ai_task_sidebar_app_id,omitempty" format:"uuid"` } // WorkspaceResource describes resources used to create a workspace, for instance: From 5b7cae35fcb73a85d6f94804abccb93918d49115 Mon Sep 17 00:00:00 2001 From: Hugo Dutka Date: Wed, 18 Jun 2025 18:54:11 +0000 Subject: [PATCH 2/2] make gen --- coderd/apidoc/docs.go | 7 +++++++ coderd/apidoc/swagger.json | 7 +++++++ docs/reference/api/builds.md | 12 ++++++++++++ docs/reference/api/schemas.md | 8 ++++++++ docs/reference/api/workspaces.md | 12 ++++++++++++ site/src/api/typesGenerated.ts | 2 ++ 6 files changed, 48 insertions(+) diff --git a/coderd/apidoc/docs.go b/coderd/apidoc/docs.go index 062c70c2bed5c..05e61dbec9296 100644 --- a/coderd/apidoc/docs.go +++ b/coderd/apidoc/docs.go @@ -18091,6 +18091,10 @@ const docTemplate = `{ "codersdk.WorkspaceBuild": { "type": "object", "properties": { + "ai_task_sidebar_app_id": { + "type": "string", + "format": "uuid" + }, "build_number": { "type": "integer" }, @@ -18105,6 +18109,9 @@ const docTemplate = `{ "type": "string", "format": "date-time" }, + "has_ai_task": { + "type": "boolean" + }, "id": { "type": "string", "format": "uuid" diff --git a/coderd/apidoc/swagger.json b/coderd/apidoc/swagger.json index 7199c122e9e87..8577c080a7ecf 100644 --- a/coderd/apidoc/swagger.json +++ b/coderd/apidoc/swagger.json @@ -16530,6 +16530,10 @@ "codersdk.WorkspaceBuild": { "type": "object", "properties": { + "ai_task_sidebar_app_id": { + "type": "string", + "format": "uuid" + }, "build_number": { "type": "integer" }, @@ -16544,6 +16548,9 @@ "type": "string", "format": "date-time" }, + "has_ai_task": { + "type": "boolean" + }, "id": { "type": "string", "format": "uuid" diff --git a/docs/reference/api/builds.md b/docs/reference/api/builds.md index 7df27dca8fd4d..2a0e4b2ede1a0 100644 --- a/docs/reference/api/builds.md +++ b/docs/reference/api/builds.md @@ -27,10 +27,12 @@ curl -X GET http://coder-server:8080/api/v2/users/{user}/workspace/{workspacenam ```json { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -262,10 +264,12 @@ curl -X GET http://coder-server:8080/api/v2/workspacebuilds/{workspacebuild} \ ```json { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -977,10 +981,12 @@ curl -X GET http://coder-server:8080/api/v2/workspacebuilds/{workspacebuild}/sta ```json { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -1285,10 +1291,12 @@ curl -X GET http://coder-server:8080/api/v2/workspaces/{workspace}/builds \ ```json [ { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -1501,10 +1509,12 @@ Status Code **200** | Name | Type | Required | Restrictions | Description | |----------------------------------|--------------------------------------------------------------------------------------------------------|----------|--------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `[array item]` | array | false | | | +| `» ai_task_sidebar_app_id` | string(uuid) | false | | | | `» build_number` | integer | false | | | | `» created_at` | string(date-time) | false | | | | `» daily_cost` | integer | false | | | | `» deadline` | string(date-time) | false | | | +| `» has_ai_task` | boolean | false | | | | `» id` | string(uuid) | false | | | | `» initiator_id` | string(uuid) | false | | | | `» initiator_name` | string | false | | | @@ -1771,10 +1781,12 @@ curl -X POST http://coder-server:8080/api/v2/workspaces/{workspace}/builds \ ```json { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", diff --git a/docs/reference/api/schemas.md b/docs/reference/api/schemas.md index e5ac986413d2c..44f4665ba6f49 100644 --- a/docs/reference/api/schemas.md +++ b/docs/reference/api/schemas.md @@ -8588,10 +8588,12 @@ If the schedule is empty, the user will be updated to use the default schedule.| "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -9690,10 +9692,12 @@ If the schedule is empty, the user will be updated to use the default schedule.| ```json { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -9896,10 +9900,12 @@ If the schedule is empty, the user will be updated to use the default schedule.| | Name | Type | Required | Restrictions | Description | |------------------------------|-------------------------------------------------------------------|----------|--------------|---------------------------------------------------------------------| +| `ai_task_sidebar_app_id` | string | false | | | | `build_number` | integer | false | | | | `created_at` | string | false | | | | `daily_cost` | integer | false | | | | `deadline` | string | false | | | +| `has_ai_task` | boolean | false | | | | `id` | string | false | | | | `initiator_id` | string | false | | | | `initiator_name` | string | false | | | @@ -10416,10 +10422,12 @@ If the schedule is empty, the user will be updated to use the default schedule.| "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", diff --git a/docs/reference/api/workspaces.md b/docs/reference/api/workspaces.md index a43e992fe8756..a13c61cc05ee6 100644 --- a/docs/reference/api/workspaces.md +++ b/docs/reference/api/workspaces.md @@ -82,10 +82,12 @@ of the template will be used. "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -366,10 +368,12 @@ curl -X GET http://coder-server:8080/api/v2/users/{user}/workspace/{workspacenam "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -676,10 +680,12 @@ of the template will be used. "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -963,10 +969,12 @@ curl -X GET http://coder-server:8080/api/v2/workspaces \ "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -1231,10 +1239,12 @@ curl -X GET http://coder-server:8080/api/v2/workspaces/{workspace} \ "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", @@ -1631,10 +1641,12 @@ curl -X PUT http://coder-server:8080/api/v2/workspaces/{workspace}/dormant \ "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9" }, "latest_build": { + "ai_task_sidebar_app_id": "852ddafb-2cb9-4cbf-8a8c-075389fb3d3d", "build_number": 0, "created_at": "2019-08-24T14:15:22Z", "daily_cost": 0, "deadline": "2019-08-24T14:15:22Z", + "has_ai_task": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "initiator_id": "06588898-9a84-4b35-ba8f-f9cbd64946f3", "initiator_name": "string", diff --git a/site/src/api/typesGenerated.ts b/site/src/api/typesGenerated.ts index c199729af989f..d668018976f1e 100644 --- a/site/src/api/typesGenerated.ts +++ b/site/src/api/typesGenerated.ts @@ -3653,6 +3653,8 @@ export interface WorkspaceBuild { readonly daily_cost: number; readonly matched_provisioners?: MatchedProvisioners; readonly template_version_preset_id: string | null; + readonly has_ai_task?: boolean; + readonly ai_task_sidebar_app_id?: string; } // From codersdk/workspacebuilds.go 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