Skip to content

Commit 59c9c7e

Browse files
committed
improve task status
1 parent f301ba0 commit 59c9c7e

File tree

2 files changed

+33
-20
lines changed

2 files changed

+33
-20
lines changed

coderd/aitasks.go

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -199,28 +199,39 @@ type tasksListResponse struct {
199199
}
200200

201201
func mapTaskStatus(ws codersdk.Workspace) codersdk.TaskStatus {
202-
if ws.LatestAppStatus != nil {
203-
switch ws.LatestAppStatus.State {
204-
case codersdk.WorkspaceAppStatusStateWorking:
205-
return codersdk.TaskStatusWorking
206-
case codersdk.WorkspaceAppStatusStateIdle:
207-
return codersdk.TaskStatusIdle
208-
case codersdk.WorkspaceAppStatusStateComplete:
209-
return codersdk.TaskStatusCompleted
210-
case codersdk.WorkspaceAppStatusStateFailure:
211-
return codersdk.TaskStatusFailed
202+
switch ws.LatestBuild.Status {
203+
case codersdk.WorkspaceStatusPending:
204+
return codersdk.TaskStatusPending
205+
206+
case codersdk.WorkspaceStatusStarting:
207+
return codersdk.TaskStatusStarting
208+
209+
case codersdk.WorkspaceStatusRunning:
210+
if ws.LatestAppStatus != nil {
211+
switch ws.LatestAppStatus.State {
212+
case codersdk.WorkspaceAppStatusStateWorking:
213+
return codersdk.TaskStatusWorking
214+
case codersdk.WorkspaceAppStatusStateIdle:
215+
return codersdk.TaskStatusIdle
216+
case codersdk.WorkspaceAppStatusStateComplete:
217+
return codersdk.TaskStatusCompleted
218+
case codersdk.WorkspaceAppStatusStateFailure:
219+
return codersdk.TaskStatusFailed
220+
}
212221
}
213-
}
222+
return codersdk.TaskStatusStarting
223+
224+
case codersdk.WorkspaceStatusStopping, codersdk.WorkspaceStatusStopped:
225+
return codersdk.TaskStatusStopping
226+
227+
case codersdk.WorkspaceStatusDeleting, codersdk.WorkspaceStatusDeleted:
228+
return codersdk.TaskStatusDeleting
214229

215-
switch ws.LatestBuild.Status {
216-
case codersdk.WorkspaceStatusPending, codersdk.WorkspaceStatusStarting, codersdk.WorkspaceStatusRunning:
217-
return codersdk.TaskStatusWorking
218-
case codersdk.WorkspaceStatusStopping, codersdk.WorkspaceStatusStopped, codersdk.WorkspaceStatusDeleting, codersdk.WorkspaceStatusDeleted:
219-
return codersdk.TaskStatusCompleted
220230
case codersdk.WorkspaceStatusFailed, codersdk.WorkspaceStatusCanceling, codersdk.WorkspaceStatusCanceled:
221231
return codersdk.TaskStatusFailed
232+
222233
default:
223-
return codersdk.TaskStatusWorking
234+
return codersdk.TaskStatusPending
224235
}
225236
}
226237

codersdk/aitasks.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,12 @@ func (c *ExperimentalClient) CreateTask(ctx context.Context, user string, reques
7878
type TaskStatus string
7979

8080
const (
81-
TaskStatusQueued TaskStatus = "queued"
81+
TaskStatusPending TaskStatus = "pending"
82+
TaskStatusStarting TaskStatus = "starting"
83+
TaskStatusStopping TaskStatus = "stopping"
84+
TaskStatusDeleting TaskStatus = "deleting"
8285
TaskStatusWorking TaskStatus = "working"
8386
TaskStatusIdle TaskStatus = "idle"
84-
TaskStatusPaused TaskStatus = "paused"
8587
TaskStatusCompleted TaskStatus = "completed"
8688
TaskStatusFailed TaskStatus = "failed"
8789
)
@@ -105,7 +107,7 @@ type Task struct {
105107
TemplateID uuid.UUID `json:"template_id" format:"uuid"`
106108
WorkspaceID uuid.NullUUID `json:"workspace_id" format:"uuid"`
107109
Prompt string `json:"prompt"`
108-
Status TaskStatus `json:"status" enum:"queued,working,idle,paused,completed,failed"`
110+
Status TaskStatus `json:"status" enum:"pending,starting,stopping,deleting,working,idle,completed,failed"`
109111
CreatedAt time.Time `json:"created_at" format:"date-time"`
110112
UpdatedAt time.Time `json:"updated_at" format:"date-time"`
111113
}

0 commit comments

Comments
 (0)