
openqjandhost
f4443dca4f
feat: 计划模式 + 后续消息 + 会话分支接云端 (#65)
- 计划模式:tasks 加 plan 列;plan 与 approval=full / goal 冲突时
400;执行器在 approval 参数后追加 --sandbox read-only(本地
dispatch/run/goal/popen 与 Docker 内层命令全覆盖),host 任务
存下 sandbox 后续轮次自动继承只读。
- 后续消息:新表 task_followups;POST/GET /tasks/{id}/followups
(仅 queued/running 的非 goal 任务;direct 立即往链路追加
phase=followup-direct 条目,本轮跑完后优先于排队执行;排队
按 direct 优先、队内先来先服务逐条再跑一轮,同一 thread;
一条失败即停、剩余 pending 留给重试入口;取消时回 pending)。
- 会话分支:POST /tasks/{id}/fork(仅终态任务;继承 executor/
模型/强度/权限/计划,goal 字段置空);worker 先 fork 再跑首轮,
首轮失败不自动重试、不重复分叉,失败后走重试入口重跑首轮。
- 修任务级模型被覆盖:worker 此前无条件写成主模型,控制台
选的模型实际不生效;现为任务级 > worker 主模型 > 配置。
- Docker 租户准备抽成 _docker_task_context,供普通尝试与 fork 共用。
- console:新建任务计划勾选(含冲突拦截)、详情计划徽标与
分支来源、分支按钮与表单、后续消息区、列表 [计划]/[分支] 标记。
- 测试:cloud/tests/test_task_links.py 17 个(server 校验与继承、
worker 模型优先、只读命令、排空顺序与停排、goal 不排空、
fork 单次性);全量 cloud 542、host 49、deploy 14。
Co-authored-by: host <host@test.local>
2026-10-27 03:17:51 +08:00
..
2026-10-26 16:27:42 +08:00
2026-10-26 16:47:55 +08:00
2026-10-26 01:23:21 +08:00
2026-10-26 07:13:45 +08:00
2026-10-26 15:20:02 +08:00
2026-10-27 01:02:24 +08:00
2026-10-26 03:23:06 +08:00
2026-10-26 01:32:57 +08:00
2026-10-26 10:26:21 +08:00
2026-10-26 06:46:20 +08:00
2026-10-26 06:19:01 +08:00
2026-10-26 16:11:29 +08:00
2026-10-26 08:39:57 +08:00
2026-10-26 01:23:21 +08:00
2026-10-26 18:41:27 +08:00
2026-10-26 16:27:42 +08:00
2026-10-26 16:27:42 +08:00
2026-10-26 01:32:57 +08:00
2026-10-26 23:51:54 +08:00
2026-10-26 07:42:14 +08:00
2026-10-26 04:16:11 +08:00
2026-10-26 03:23:06 +08:00
2026-10-26 16:47:55 +08:00
2026-10-26 15:20:02 +08:00
2026-10-27 00:05:18 +08:00
2026-10-26 17:01:47 +08:00
2026-10-26 04:16:11 +08:00
2026-10-26 03:55:07 +08:00
2026-10-27 03:05:15 +08:00
2026-10-26 04:16:11 +08:00
2026-10-26 17:31:30 +08:00
2026-10-26 18:41:27 +08:00
2026-10-27 00:15:16 +08:00
2026-10-27 01:44:53 +08:00
2026-10-26 23:17:25 +08:00
2026-10-26 18:11:12 +08:00
2026-10-26 02:46:10 +08:00
2026-10-26 17:31:30 +08:00
2026-10-26 16:47:55 +08:00
2026-10-26 06:46:20 +08:00
2026-10-26 03:55:07 +08:00
2026-10-27 03:17:51 +08:00
2026-10-27 01:44:53 +08:00
2026-10-27 02:27:15 +08:00
2026-10-26 07:24:54 +08:00
2026-10-26 01:23:21 +08:00
2026-10-26 06:46:20 +08:00
2026-10-27 02:00:09 +08:00