Tasks: Server-side input queue for auto-resume
还没有人认领这个 Issue。
评估
调研方向
从 coderd/aitasks.go 和针对 task_pending_inputs 的新 migration 开始,然后查看所引用的生命周期 RFC 以及现有的 job-system 集成。跟踪 /send 如何处理已暂停的 task,以及 workspace 就绪状态和投递是如何表示的。完成的标准是:排队的消息返回带有 ID 的 202,在 workspace 自动启动后完成投递,并按规定记录失败状态。
由索引模型根据 Issue 内容生成。
描述
Repo: coder/coder
Scope: Allow /send to accept messages for paused tasks, queue them, and deliver asynchronously.
Note: Consider ACP (Agent Communication Protocol) impact before implementation. ACP standardization may influence message queue design and delivery mechanism.
Changes:
- Create
task_pending_inputstable:idUUID PRIMARY KEYtask_idUUID REFERENCES tasks(id)contentTEXT NOT NULLstatusTEXT NOT NULL DEFAULT 'pending'created_atTIMESTAMPTZ NOT NULLdelivered_atTIMESTAMPTZerrorTEXT
- Modify
/sendto accept messages for paused tasks - Return 202 Accepted with message ID for queued messages
- Background worker: trigger workspace start, poll for ready, deliver message, update status
- Handle failures (build fails, delivery fails) with appropriate status updates
Benefits beyond auto-resume (per RFC):
- Solves Terraform env var length limits for long prompts
- Unifies initial prompt + follow-up delivery path
- Enables prompt modification until task starts
- Enables prebuilds for tasks
Files:
- New migration for
task_pending_inputstable coderd/aitasks.go(modified send handler)- New background worker or integration with existing job system
Acceptance criteria:
-
/sendto paused task returns 202 and queues message - Workspace automatically starts
- Message delivered when workspace ready
- Failure states handled gracefully with status tracking
- Direct API consumers no longer need orchestration logic
Dependencies:
- GA phase complete
- ACP (Agent Communication Protocol) evaluation (does not block, but may influence design)
References:
- PRD: Start/Pause/Resume the Task Workspace
- RFC: Tasks: Start/Pause/Resume Lifecycle: Auto-Resume Option B
- 主要语言
- 没有语言数据
- 星标
- 3
- 派生
- 0
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
coder/internal 的其他 Issue
-
flake
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 4/5 3-5 天 新手友好度 45/100
-
flake
-
flake
相似的 Issue
-
Bug
难度 2/5 1-3 小时 新手友好度 75/100
Automattic/safe-publish#593 ·
-
area/plugin
难度 2/5 1-3 小时 新手友好度 75/100
kestra-io/plugin-kestra#190 ·
-
bug
难度 2/5 1-3 小时 新手友好度 75/100
xinnan-tech/xiaozhi-fde-talk#263 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
-
pending-maintainer-response pending-triage
难度 2/5 1-3 小时 新手友好度 75/100