OpenClaw 24h 更新快报(2026-08-06):内存启动优化、OTLP 多信号协议、Agent 调度修复

内容管家 AI领域评论2字数 1350阅读4分30秒阅读模式
OpenClaw 24h 更新快报(2026-08-06):内存启动优化、OTLP 多信号协议、Agent 调度修复

OpenClaw 24h 更新快报(2026-08-06):内存启动优化、OTLP 多信号协议、Agent 调度修复

过去 24 小时,openclaw/openclaw 仓库共合并 29 个 PR,重点集中在三个方向:Gateway 内存管理器的启动时竞争问题迎来系统性修复;OpenTelemetry 诊断插件新增信号级协议拆分支持;Agent 子任务完成后的父会话恢复流程补上了竞态条件。以下是主要变化的具体分析。

内存管理器启动:从延迟加载到按需初始化

本次更新最核心的变化是 Gateway 内存管理体系的重新设计。两个关联的 P1 PR 从不同角度彻底解决了 `memory-core` 插件在 Gateway 就绪后仍会导致 RPC 延迟的问题。

PR #119710 删除了启动时的内存管理器预热逻辑,将初始化完全移交给首次内存操作的调用方。改动后,Gateway 在报告就绪时不再有后台内存同步任务争抢资源,实测 `config.get` RPC 的 p50 从 5,249ms 降至 1,113ms,max 从 6,769ms 降至 1,638ms;健康检查 p50 从 3,110ms 降至 801ms。其姊妹篇 PR #119676 则为 `registerMemoryManagerWarmup` 增加了生命周期取消边界——Gateway 在停止或重启时,任何进行中或已过期的 warmup 都会被正确终止,防止网关重启后残留的同步任务污染新实例。两者合计净减少 72 行生产代码,聚焦在移除无效的守护路径而非新增功能逻辑。

这一变化对所有使用默认 `memory-core` 插件的部署方直接受益:启动后的首次 RPC 不再会因为内存索引初始化而超时,Gateway RSS 峰值也从约 2GB 降至约 1GB。

OTLP 诊断:支持信号级协议配置

PR #119708 修复了 diagnostics-otel 插件长期存在的一个设计缺陷:此前该插件只读取全局 `OTEL_EXPORTER_OTLP_PROTOCOL`,当某个信号(如 traces)配置了专用协议但该协议不被支持时,所有信号导出器会一起失败。现在插件对 traces、metrics、logs 三个信号分别解析协议,优先级为:OpenClaw 显式配置 > 信号专用环境变量 > 全局共享环境变量 > 默认 http/protobuf。某个信号使用了不支持的协议,仅该信号的 OTLP Exporter 被禁用,其余信号不受影响。

该 PR 还同步更新了 Docker Compose 模板和 `scripts/docker/setup.sh`,现在会正确转发并持久化 `OTEL_EXPORTER_OTLP_TRACES_PROTOCOL`、`OTEL_EXPORTER_OTLP_METRICS_PROTOCOL`、`OTEL_EXPORTER_OTLP_LOGS_PROTOCOL` 三个独立环境变量,使得文档中的标准部署路径能够真正生效。

Agent 子任务:修复 late completion 导致的父会话静默

PR #119696 针对 Agent 子任务完成通知机制中的竞态条件:当一个子任务在请求者 yield 期间完成时,如果清理流程触发的 wake 事件在请求者 settlement 替换了新一批 generation 后才到达,这个过期的 wake 会错误地采用新 generation,导致父会话持续等待一个已不再有效的 30 秒超时,而不是立即恢复。两个关联 PR PR #119726PR #119727 则从不同角度完善了 agents 运行时状态可见性:前者确保已完成的动作在 settled finalization 后依然对用户可见,后者修正了 QA 测试中清理失败被错误报告为成功的问题。

浏览器模拟:修复 locale、timezone 和 device 覆盖的持久化

PR #119695 修复了 `openclaw browser set locale`、`set timezone`、`set device` 命令的持久化问题:此前这些命令成功执行后,Chrome 模拟状态(User-Agent、DPR、屏幕尺寸、触摸模式等)在 OpenClaw 断开临时 CDP 会话后立即恢复默认值,只有 Playwright 拥有的 viewport 被保留。现在改为使用页面级的持久化 CDP session,所有模拟参数在页面生命周期内全程保持,并通过对设备预设字段的原子化替换避免了并发命令之间的字段交织。该 PR 还修正了从移动端预设切换到桌面预设时触摸状态未明确关闭的问题。

Skills 安全判定:安装来源隔离

PR #119672 修复了一个安全边界问题:当两个不同发布者使用相同 slug 和版本号时,Control UI 可能会错误地显示或归因另一个发布者的安全判定结果。修复后,已安装技能的发布者身份(ownerHandle)会贯穿目标收集、共享安全判定解析器、Gateway 协议投影、Control UI 状态键以及技能详情页的完整链路。技能概览现在会渲染完整引用(如 `@openclaw/[email protected]`),而不是仅显示 slug+版本。

其余值得注意的变化

  • PR #119655 修复 heartbeat 组件的结构化回复投递与已完成恢复流程。
  • PR #119654 修复浏览器驱动跨驱动层的显式导航超时处理。
  • PR #119657 修复 Discord 渠道表单打开失败时静默无提示的问题,改为给出明确说明。
  • PR #119652PR #119649Codex 驱动的 Agent 在对话中能更自然地作出反应。

本次更新整体围绕运行时稳定性、诊断可观测性和跨模块状态一致性展开,启动性能和 Agent 调度是两个最值得升级的重点。

常用链接

 最后更新:2026-8-9
内容管家

发表评论