# 工作栏实现与验证进度 ## 2026-09-08 OpenCode 复用与原生控件恢复 - `OpenCodeRuntime` 复用缓存的 embedded server 前执行有超时的健康检查;健康则保留 client,检查失败、抛错或超时则清除 client、会话映射、会话初始化及待答问题,关闭旧 server 后重建。并发调用共享检查与重建,调用方取消只结束自身等待。 - 请求级 MCP 注册与断开通过实例内 `mutateMcp` 队列串行执行。仅实际发出 `mcp.add` 的名称进入清理列表;注册尚在排队时取消不追加断开。断开的 1 秒超时从出队后开始。 - `App` 按本机/远程、连接方式、项目和 Runtime 选择组成 scope 缓存原生清单,用请求 代次阻止旧 scope 结果回写;同 scope 会话刷新不清空重取,切换会话重置消息级选择, Runtime 切换状态也按 generation 隔离。清单请求失败或返回 `unavailable`/`partial` 时保留已有可用缓存并有界重试;没有可用缓存时保留新返回的部分数据,因此 `unavailable` 重试为可用 `partial` 后可显示 Agent 和 Command。 验证记录:首轮定向测试 273 项通过、5 项跳过;补充修复后的 Runtime 与生命周期测试 77 项通过,界面定向测试 6 项通过,类型检查通过。修复前的 lint 检查通过。 全量测试超过 120 秒被终止,期间出现一项 DS 本地 stdio MCP 测试失败,尚待定位。 真实系统休眠恢复和当前源码的 GoodBuddy Agent 实机路径尚未完成验证。 ## 2026-09-06 项目工作区 范围见 [PRD 工作区](./prd.md#76-工作区)。 当前源码已移除重复标题与底部完整 Diff 入口,使用彩色 Git 状态字母,点击更改项读取 单文件 Diff。已暂存与未暂存差异分开展示;本机 Git 测试覆盖无首次提交、未跟踪、 暂存后继续修改、重命名、删除及包含方括号的路径。Git 刷新驱动目录树重新读取,保留 展开状态;SSH 项目不提供本机系统打开按钮。审查后补齐了当前 Diff 随刷新重读、 旧请求结果失效,以及超过 50 项变更的继续加载入口。 验证记录: - 最终 `npm run typecheck`、`npm run lint`、`npm run build` 均通过。 - 工作区专项 7 个测试文件复跑:317 项通过,3 项 Linux 专用测试在 Windows 跳过。 任务完成测试同时检查目录树出现新文件。 - 最终 `npm test`:326 个测试文件、3552 项测试通过,9 个文件、58 项测试按既有条件 跳过。复核首轮曾有一项浏览器地址草稿测试超时,单独复跑及最终全量复跑均通过; 更早的超时/失败记录不再作为最终验收结果。 - 后续复核已通过既有凭据和固定 Host Key 经 VPN 连接共享 Linux x64 Host,使用当前 源码构建的隔离 Agent 包安装并启动。真实 `RemoteWorkspaceAccess → Agent git/status` 与 `git/diff` 路径覆盖暂存后继续修改、删除、重命名、未跟踪和方括号路径;均通过。 Git 验证未调用模型。 - Windows 隔离桌面实例已通过真实点击验收:当前项目单文件暂存/工作树 Diff 分组与 增删颜色正确,修改测试文件后点击刷新可更新正在查看的 Diff,53 项变更经加载更多 全部可访问。截图留在本地验证目录,不纳入产品包。 目录分页、任意目录切换和 HTML 预览不在本轮改动范围内。