feat: complete WorkBuddy parity and Windows release workflow
This commit is contained in:
1 parent
143516b3a8
commit
d5512df549
434 files changed
+54977
-1854
No files matched your search
@@ -0,0 +1,61 @@
|
||||
# 沙盒接入验收矩阵(2026-10-18)
|
||||
|
||||
依据:[完整接入计划](沙盒完整接入计划-2026-10-18.md)、[首版基线](自有沙盒首版实施-2026-10-18.md)、[首批接入记录](沙盒完整接入首批实施-2026-10-18.md)、[只读文件桥](沙盒只读文件桥接入-2026-10-18.md)。矩阵记录功能子集,不将部分测试通过视为整个阶段或原版等价完成。
|
||||
|
||||
最新增量:[长期会话草稿](沙盒长期工作区接入-2026-10-18.md),组件 0.6.0 / protocol 1。显式 persistent 命令保留物理工作目录和会话私有 Git,支持同步/冲突、审批提交/丢弃/恢复及只读所属会话状态。[宿主原生事务](沙盒原生写回事务-2026-10-18.md)继续用于提交/补偿/恢复;完整文件代理、长期进程和可写依赖仍未完成。
|
||||
|
||||
## 状态与证据口径
|
||||
|
||||
- 已验证子集:有真实 YCode/Windows 执行记录;观察范围以对应测试报告为准。
|
||||
- 进行中:已经有真实代码和部分测试,完整目标仍有必要项目未完成。
|
||||
- 待实现/取证:尚无对应执行器或足够原版证据。
|
||||
|
||||
原版引用统一沿用 E1/E2/E3;这些不代表原生运行效果:
|
||||
|
||||
| 引用 | 版本与 Evidence ID | 范围与限制 |
|
||||
| --- | --- | --- |
|
||||
| E1 | 材料声明 5.8.6,版本未独立证明;`ev_74bf702462bc37612d2a68ea2e1c93b30b77dd5d99eaf1e961f1ab36d626c5e3` | 8 个 shim 的静态分析;无原生边界与运行比较 |
|
||||
| E2 | 同一材料副本;`ev_2860ca8fafaf310ee1adc2ebe31530c868da0ecbb41a6f451e8e8e86b447a078` | 文件/删除/程序检查及规则字段的静态线索;图覆盖不完整 |
|
||||
| E3 | 原版 5.8.3;`ev_2309de12a003fca2c863a223cbda5bccad36b3af73e29bc309fdaed94745cf9e` | 设置导航素材;不包含安全中心页面完整内容和策略行为 |
|
||||
|
||||
## A01~A17
|
||||
|
||||
| 编号 | 当前状态与真实执行点 | 已验证/验证入口 | 完成前仍需补齐 | 原版证据 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| A01 后端失效 | 进行中;`service.ts` 校验 manifest/二进制,`policy-store.ts` 严格解析策略 | `test:sandbox` 的缺失/摘要错误,`test:sandbox:policy` 的策略损坏拒绝执行 | 安装包损坏、迁移错误、后端替换期间运行语义 | E1/E2 无原生失效行为,需 REA |
|
||||
| A02 授权与取消 | 进行中;`authorizations.ts`、`InteractionBroker`、执行队列、按 Job 绑定的真实读取 broker | 策略版本/内容指纹、单次使用、目标摘要、过期/撤销、交互/队列取消;真实读取、重放/洪泛拒绝、断线结果查询和缓存撤销;策略/读取桥/协议专项 | 写入等操作、逐后代归属、多窗口/重启审批恢复;Job 绑定不等于逐 PID 认证 | E1/E2 有调用归属/IPC 静态线索,无认证生效证据 |
|
||||
| A03 工具链 | 进行中;Git 0.7.0 已接宿主历史/索引、原生组事务和受控远程;Node/Python 工具链与长期草稿维持各自边界 | Node/npm、Python/pip、内置 Git 离线复现;宿主普通仓库/linked-worktree 导入审批;本地分支/冲突/变基/标签/stash;项目+Git元数据提交、事务/主进程死亡恢复;HTTP/HTTPS/SSH、凭证撤销和unknown恢复;生产 OMP/IPC | 全部 Git 子命令/版本/平台兼容;30,000 项/256 MiB/128 MiB 之外的大仓库;reftable、alternates、partial clone、任意 hooks/helpers、LFS/子模块/GPG/交互编辑器;公网/企业代理、标准用户/安装包矩阵;可写依赖/长期进程/稳定绝对路径 | WorkBuddy Git 无完整运行证据;REA 范围见完整接入记录 |
|
||||
| A04 依赖与安装 | 进行中;`dependency-cache.ts`、runner 只读依赖目录;草稿执行前注入、封存前卸载 | 工作区/锁文件/运行时绑定、CJS/ESM/Python 加载、篡改与跨项目拒绝;真实长期草稿加载只读依赖并保留项目产物;工具链/长期工作区专项 | 联网安装、受控私有凭证、可写依赖层、虚拟环境/临时目录持久化、pnpm 链接布局及供应链测试 | E1/E2 不证明完整包管理流程 |
|
||||
| A05 文件语义 | 进行中;`transactions.ts` v3、`filesystem-write.h` 相对句柄事务、stage diff、native 只读桥 | 文件/目录增改删与二进制恢复、隐式父目录恢复;宿主写入专项32及目录专项13;读取桥语义保持 | 完整写入调用桥、追加/描述符/语言适配、ACL/时间戳;替换是两步交接,有短暂缺名窗口 | E2 有 HostFileOperation / FileTokenRequest 线索,消费语义待证 |
|
||||
| A06 路径与竞争 | 进行中;读取/宿主事务使用 native 句柄链;草稿绑定项目/会话/根身份/策略,`workspace-state.h` 封存 DACL | junction/硬链接/敏感路径、审批期间同内容换根;成功命令保持同一物理目录;外部编辑三方同步/同文件及祖先冲突、草稿根替换拒绝、真实跨会话及同会话私有 blob 拒绝;读/写/长期工作区专项 | 标准用户/支持 OS/特殊 NTFS 配置矩阵、独立审查;稳定绝对执行路径/完整文件工具草稿路由;不据当前测试推定所有竞争时序均已通过 | E1/E2 无完整原生路径代理证据 |
|
||||
| A07 删除与恢复 | 进行中;整批审批、原生句柄删除、v3 备份/意图;草稿检查点、同步/执行/提交意图与归档丢弃 | 递归删除/补偿、外部新增阻止、实际后端死亡;草稿非零退出/取消/超时回退,真实宿主进程死亡与租约恢复、提交后元数据失败仍保留 committed;确认记录中断及交接缺名为磁盘夹具 | 专用批量删除阈值、回收站、聊天映射、未完成/变更临时文件人工核对、断电耐久性;草稿文件/Git 两步发布不具单个崩溃原子性 | E2 有删除代理/批量防护模块;阈值和回收站待证 |
|
||||
| A08 联网 | 普通 AppContainer 命令仍默认禁网;Git 仅通过专用可信宿主传输控制面按次审批 HTTP(S)/SSH | 原生 TCP 拒绝;Git loopback HTTP/HTTPS/SSH 的 TLS/host-key、URL/ref/凭证范围、撤销、unknown、取消和策略撤销 | 普通命令通用出站代理、DNS/重定向/IP/IPv6/局域网策略、npm/pip 在线安装、公网/企业代理矩阵 | E2 仅证 `network_policy` 字段;原生双引擎说法待证 |
|
||||
| A09 程序/注册表 | 进行中;现有 Job/容器与 P0 假注册表探针 | 后代继承、breakaway 拒绝;自建 HKCU 假值不可读写;基础/可行性专项 | 逐程序/参数/身份规则、后代真实执行点、可配置注册表读写 | E2 程序检查入口;registry 字段不代表生效 |
|
||||
| A10 开发服务/预览 | 待实现 | 当前无受控服务端口暴露验收 | 实例绑定、端口/来源限制、退出回收、预览权限隔离 | 无完整证据,需 REA |
|
||||
| A11 MCP | 待系统隔离接入;现有 `capabilities/mcp.ts` 信任/连接代次继续有效 | 原有连接与逐次调用审批不作为沙盒验收 | stdio 启动适配、将现有会话草稿接入 MCP、长期进程、凭证、配置变化后的进程树清理 | 现有材料不能证明原版全部 MCP 进程隔离 |
|
||||
| A12 OMP | 进行中;工具路由按 session/run/tool-call 归属,接入 `sandbox_workspace` / `sandbox_git` | 真实 OMP + localhost 模型;长期草稿、宿主 Git 导入/写回、远程审批结果、所属会话 IPC;生产 Electron Git 专项52项 | 内核自身环境/扩展/配置/通用网络审计和可信控制面拆分;普通文件工具仍访问宿主 | 无原版等价结论;OMP 只是当前内核实现选择 |
|
||||
| A13 交互终端 | 待系统隔离接入;现有 ConPTY 仍为宿主终端 | 原有终端归属/取消测试不作为隔离验收 | 受限 ConPTY 原型、I/O/resize/迁移、长期变更与写回、权限显示 | 需 REA 同场景行为 |
|
||||
| A14 安全中心 | 进行中;真实策略/自检/运行/读取操作及所属会话草稿状态 IPC | 生产 main/preload 的 CAS、非法字段/路径/跨 Job 请求拒绝、广播、自检与持久读取结果;草稿根由保存会话推导、未知会话拒绝、busy 不阻塞审批;整应用专项 | 原版页面取证、真实页面控件、恢复/审计/缓存/草稿 UI、多窗口全状态;本批没有新增安全中心页面 | E3 只有导航,页面不能凭设想补齐后声称 1:1 |
|
||||
| A15 资源/恢复 | 进行中;Job、队列、事务、租约;宿主私有草稿 blob/版本/归档、封存及独占锁;版本清单有发布前 8 MiB 检查 | 进程/内存限制、超时/取消/父退出、崩溃清理、目录恢复;真实死主进程接管与活动租约拒绝、检查点回退 | OS 磁盘硬配额、blob/归档/审计自动保留、早期启动崩溃、断电耐久性、版本清单容量边界专项;长期进程未实现 | 无原版完整证据,需独立 REA/系统测试 |
|
||||
| A16 发布环境 | 开发/生产构建链路已验子集 | 当前 Windows 11 x64 elevated 环境;生产 Electron 整应用专项 | 无 Build Tools/WorkBuddy 的安装包、标准用户、支持 OS、升级/卸载/签名链 | 原版安装版本和发布行为需分别取证 |
|
||||
| A17 原版等价 | 未验收 | E1/E2/E3 只用作静态/导航参照 | 相同场景下允许/拒绝、审批、错误、恢复、视觉/动画、持久化的 REA 对照 | 全部未知项须带实际版本、Evidence ID 和范围 |
|
||||
|
||||
## P0 机制原型清单
|
||||
|
||||
| 机制 | 当前观察 | 允许、拒绝和故障的后续验收 |
|
||||
| --- | --- | --- |
|
||||
| 文件目录句柄 | 读取桥和宿主事务均固定根/祖先及实际目标;写入通过 NT 相对目录句柄操作,默认工具/命令和恢复已接入。历史原型失败记录保留 | 补平台、权限、安全审查和中断时序;两步替换有缺名窗口,完整写入调用桥/元数据及断电级耐久性未完成 |
|
||||
| 代理通信 | named-pipe 实验未连通;stdio 回显原型仍保留,新增模型显式选择的真实只读协议、分块/背压/日志与查询,未增加网络 capability | 逐后代认证、宿主写入、Python/Shell 等完整适配;现有 Job 通道不将完整 broker 标完成 |
|
||||
| 出站网络 | 命令 Job 零网络 capability 的 TCP 拒绝已实测;Git 专用宿主代理另有 loopback HTTPS/SSH 允许通路 | 普通命令及通用代理仍需验允许通路与绕过拒绝;Git 已验目标/凭证/证书/取消/策略撤销失败关闭 |
|
||||
| 程序与注册表 | Job 继承已测;本机自建假注册表键在 AppContainer 内不可读写,已清理样本 | 允许指定目标并拒绝替换程序/后代旁路;授权撤销和后端故障;自建注册表允许/拒绝/恢复,不能仅依赖名称匹配 |
|
||||
| ConPTY | 尚无原型结论 | 真实受限 token/Job 的 shell 启动、I/O/resize/退出;拒绝越界/网络/脱离 Job;窗口消失、父退出及协议断线 |
|
||||
| 硬磁盘限额 | 快照/写回大小上限和执行队列已实现;不是 OS 硬限额 | 受控卷/目录实际达到硬限额并被阻止;容量耗尽不影响宿主系统卷;异常退出、重启和卸载正确释放资源 |
|
||||
|
||||
命名管道原型保持在测试 probe 中,不打包到生产沙盒。Microsoft 的 [CreateNamedPipe 文档](https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-createnamedpipea) 对 UWP/AppContainer 的支持范围有限定;[管道权限文档](https://learn.microsoft.com/en-us/windows/win32/ipc/named-pipe-security-and-access-rights) 说明通用写权限可能包含创建管道实例权限。本轮原型已改用单项访问位,但连通性仍未通过;这些文档不证明当前自有原型可以工作。
|
||||
|
||||
## 后续顺序
|
||||
|
||||
1. Git 常用工程子集已一次性接入并独立验收;继续扩展 Git 全命令/平台兼容,并在取得 WorkBuddy Git 的 REA 同场景运行证据后再作等价结论。
|
||||
2. 接入可写依赖层/受控更新与版本兼容,明确长期进程/稳定执行路径和普通文件工具的草稿视图;补保留清理、两步交接中断/竞争时序。完整语言适配、逐后代认证和完整协议验收继续未完成。
|
||||
3. 在原生边界可靠后实现 P3 代理操作,再接 P4 受控联网/程序/注册表;维持默认拒绝。
|
||||
4. 按计划推进 MCP/ConPTY、安全中心、发布和原版同场景验收;各行分开更新证据和完成状态。
|
||||
Reference in new issue
Block a user