Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

feat: persist AI task state in template imports & workspace builds#18449

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
dannykopping merged 22 commits intomainfromdk/coder-ai-task-res
Jun 24, 2025

Conversation

dannykopping
Copy link
Contributor

@dannykoppingdannykopping commentedJun 19, 2025
edited
Loading

Closes#18453

Signed-off-by: Danny Kopping <dannykopping@gmail.com># Conflicts:#go.sum
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
…e changedSigned-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
…tions, add testSigned-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
…requiredSigned-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com># Conflicts:#go.sum
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
…is PRThis will be done in a separate PRSigned-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
@@ -584,8 +584,6 @@ func (r *Runner) runTemplateImport(ctx context.Context) (*proto.CompletedJob, *p
externalAuthProviderNames = append(externalAuthProviderNames, it.Id)
}

// fmt.Println("completed job: template import: graph:", startProvision.Graph)
Copy link
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Drive-by.

Signed-off-by: Danny Kopping <dannykopping@gmail.com>
@dannykoppingdannykopping marked this pull request as ready for reviewJune 23, 2025 19:19
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
Comment on lines 8 to 23
-- if has_ai_task is true, ai_task_sidebar_app_id MUST be set
-- ai_task_sidebar_app_id can ONLY be set if has_ai_task is true
--
-- has_ai_task | ai_task_sidebar_app_id | Result
-- ------------|------------------------|---------------
-- NULL | NULL | TRUE (passes)
-- NULL | NOT NULL | FALSE (fails)
-- FALSE | NULL | TRUE (passes)
-- FALSE | NOT NULL | FALSE (fails)
-- TRUE | NULL | FALSE (fails)
-- TRUE | NOT NULL | TRUE (passes)
ALTER TABLE workspace_builds
ADD CONSTRAINT workspace_builds_ai_task_sidebar_app_id_required CHECK (
((has_ai_task IS NULL OR has_ai_task = false) AND ai_task_sidebar_app_id IS NULL)
OR (has_ai_task = true AND ai_task_sidebar_app_id IS NOT NULL)
);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

I originally wondered whyhas_ai_task was nullable by default, but the provisionerdserver changes below explain why:

  • New build: has_ai_task = null (unknown yet)
  • After build completes: provisionerdserver sets has_ai_task to (true|false).

My next question would be: in which case do we need to know the difference betweenhas_ai_task = null andhas_ai_task = false?

Copy link
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

My next question would be: in which case do we need to know the difference between has_ai_task = null and has_ai_task = false?

Whilehas_ai_task isnull (AND a build's provisioner job is in progress) we use other data (build params + template versionhas_ai_task) to determine if the build might be an AI task, but if it'sfalse then we know for certain it is not. For builds at rest (i.e. no provisioner job in progress) they're functionally the same.

Signed-off-by: Danny Kopping <dannykopping@gmail.com>
@dannykoppingdannykoppingenabled auto-merge (squash)June 24, 2025 10:25
@dannykoppingdannykopping merged commit0238f29 intomainJun 24, 2025
33 of 34 checks passed
@dannykoppingdannykopping deleted the dk/coder-ai-task-res branchJune 24, 2025 10:36
@github-actionsgithub-actionsbot locked and limited conversation to collaboratorsJun 24, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account?Sign in.
Reviewers

@johnstcnjohnstcnjohnstcn approved these changes

@spikecurtisspikecurtisAwaiting requested review from spikecurtisspikecurtis is a code owner

Assignees

@dannykoppingdannykopping

Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

tasks: coder_ai_task resource support in coderd
2 participants
@dannykopping@johnstcn

[8]ページ先頭

©2009-2025 Movatter.jp