Skip to content

v0.18.17

Choose a tag to compare

@github-actions github-actions released this 30 Aug 23:45
· 2174 commits to main since this release

Agent Workflow v0.18.17

本版本主线是后台维护隔离、人工评审协作与 Intent 能力全景补齐:重维护任务迁入独立 Worker,支持每小时错峰或按 IANA 时区每天定时运行(RFC-338);任务可按具体 review 节点配置只提交意见的评审人(RFC-340);Intent Builder 现在从注册表获得完整能力教学、运行时与平台资源清单,并修复 agent 分支端口在更新时丢失的问题(RFC-348)。同时,任务生命周期与评审 / 反问 / 问题协作切入可重试的已提交事件链(RFC-341),Memory scope move 与 Intent Apply 的恢复一致性得到收口(RFC-342 / RFC-343)。

本版本含 7 个数据库迁移(迁移端点 0215 → 0222),升级前请务必备份数据库并阅读文末「升级说明」。

主要更新

后台维护不再阻塞页面(RFC-338)

  • 数据库归档、保留期删除、worktree / 上传目录回收、WAL checkpoint 等同步重维护改由独立 Worker 和独立 SQLite 连接执行,HTTP / WebSocket 主事件循环只做轻量协调。
  • 「设置 → 存储与保留」新增后台维护卡:可保留默认的每小时错峰,也可设置每天 HH:MM + IANA timezone 启动一次;保存后显示 next / current / last / backlog / error。
  • 重维护按可恢复的小切片串行执行;遇到前台写入时快速退让,Worker 崩溃后通过 durable slot / lease / cursor 接续,不重复启动同一 job。
  • 正确性与恢复任务保持原有 boot / 周期语义,不会因为选择 daily 而被推迟到夜间。

Intent Builder 获得完整能力全景(RFC-348)

  • INTENT.md 改由闭合注册表派生;新增节点、资源或字段时若没有同步登记教学内容,编译期与架构门会直接报错,避免模型长期看不到平台新能力。
  • dump 新增运行时清单、agent 输入 / 输出端口名,以及此前缺失的 9 类平台资源真实清单;模型可据此选择现有 runtime、资源和端口并正确接线。
  • agent 的 branchPorts 现在可创建、读取、更新与清除;更新时省略该字段会保留原值,不再意外清空分支端口。
  • remote MCP 可由 Intent 配置 OAuth 客户端信息;clientSecret 继续走 secret 槽位,更新时省略则沿用既有值。
  • 教学内容补齐权限、hint、loop / runtime 等现行字段,并移除已退役的 overrides 教学,减少无效草稿。

节点级意见型评审人(RFC-340)

  • 可按 task + frozen review node 配置评审人,而不是把评审人提升为整任务成员。
  • 评审人能查看该节点的全部评审文档与意见,并新增、修改或删除自己尚未结算的意见。
  • 评审人不能 approve / iterate / reject,也不能替文档做采纳选择;任务 owner / collaborator 继续负责最终决策。
  • 新增独立配置页与节点级入口,评审人的任务列表和评审页面只投影被指派节点所需的信息。

已提交事件与崩溃恢复(RFC-341)

  • 任务生命周期以及 review / clarify / questions 写操作改为领域状态与 committed event 同事务提交,避免状态已成功但通知 / 后续推进丢失。
  • 每个 consumer 独立 claim、retry、dead-letter;一个消费者失败不会让已成功消费者重做,也不会阻塞其他 aggregate。
  • 人工门 continuation 统一交给常驻 Worker 消费,HTTP 请求只返回已提交 receipt;请求结束、daemon 重启或短暂故障后仍会继续推进。
  • Event Center 现在是 producer event 与 delivery failure 的统一运维入口,可查看 attempt / error / cutover 状态并对失败 delivery 执行精确重试。

Memory 与 Intent 一致性修复(RFC-342 / RFC-343)

  • Memory 内容编辑与 scope move 拆成两个命令:普通 PATCH 只改 title / body / tags;candidate memory 通过 versioned Move 更换 scope,并在同一事务写 durable receipt。
  • approved / archived memory 的 scope 在界面中明确冻结;candidate move 采用 expected-version CAS,失败 / 回滚不会提前广播 memory.updated。
  • Intent Apply 修复 session 锁残留、补偿失败被错误终结、skill version journal 信息不完整以及 committed 后反向补偿等恢复缺口;崩溃后可幂等 roll forward。

Runtime、架构与跨平台修复

  • WrapperRuntime 完成 W2-D cutover:loop / git / fanout wrapper、scope / progress 与 merge recovery 进入 task-execution 的单一生产链;现有 wrapper 行为保持不变。
  • HTTP 与 MCP 操作统一到 OperationCatalog / 同一 mounted handler chain;System Operations、Identity Access 与 Resource Catalog 的多个聚合完成 typed command / query 和 bootstrap adapter cutover。
  • 源码工具链与发布构建升级到 Bun 1.4.0。
  • 修复 Windows standalone binary 在 launcher / relay 链路中丢失 stdout / stderr、完成标记与句柄生命周期的问题;发布产物继续覆盖 Windows x86_64、macOS arm64、Linux x86_64 / arm64。
  • 任务创建向导的 working branch 配置移到仓库步骤并默认可见,空值仍表示使用仓库默认分支。

升级说明

  • 数据库迁移:新增 0216~0222 共 7 个 migration。0216 增加可恢复维护运行账本;0217 增加节点评审人关系;0218~0220 建立并切换 task committed-event / delivery 表;0221 增加 Memory scope move receipt;0222 原子切换 review / clarify / questions delivery。升级前务必备份数据库。
  • 维护默认值兼容:升级后仍使用每小时错峰,不会自动改成 daily;管理员可在设置页主动选择每天固定时刻。
  • 源码构建要求:从源码运行或构建现在要求 Bun >=1.4.0;GitHub Release 中的单文件 binary 已自包含运行时。
  • 不要在升级后的数据库上直接回退旧二进制:需要降级时,请停机、换回旧 binary,并恢复升级前备份。

完整变更记录:v0.18.16...v0.18.17