Skip to content

fix: 缓解 DSH rc.2 Auto Mode 冗余沙箱请求 - #11

Closed
LonelyHerbivore wants to merge 1 commit into
NanmiCoder:mainfrom
LonelyHerbivore:task/08-27-dsh-rc2-auto-mode-mitigation
Closed

fix: 缓解 DSH rc.2 Auto Mode 冗余沙箱请求#11
LonelyHerbivore wants to merge 1 commit into
NanmiCoder:mainfrom
LonelyHerbivore:task/08-27-dsh-rc2-auto-mode-mitigation

Conversation

@LonelyHerbivore

Copy link
Copy Markdown

修改说明

  • 将直接 DSH 依赖、兼容范围和锁文件对齐到 0.1.1-rc.2
  • 将 sandbox 请求区分为:字段缺失、冗余 workspace-write、真实 danger-full-access 扩权和非法值。
  • 对冗余同值请求,在进入官方执行器前返回稳定的可恢复拒绝;下一次模型组装仅对被拒绝工具投影无 sandbox_permissionsjustification 字段的 detached schema。
  • 不改写 ToolExecution.arguments,不替换官方工具/执行器,不修改已安装 DSH 包。
  • 保持一次性扩权的直接 Agent、call、tool 和 reason 绑定。

验证

  • pnpm verify:92 passed,22 skipped;Windows PowerShell 原生测试 8/8 通过。
  • git diff --check 通过。
  • 已用实际 tarball 和隔离 DSH_HOME 运行 CPAMC / gpt-5.6-luna / max headless gate,且明确 unset DEEPSEEK_API_KEY
  • 同一会话中,第一次带冗余字段的 pwsh 调用被拒绝;紧接着同一命令无字段重试成功,并读取到 recovered sentinel。

安全边界

这是 rc.2 的检测与重试缓解,不宣称原始同值请求会透明执行,也不关闭上游严格扩权限制。

将 DSH 依赖与兼容范围对齐到 0.1.1-rc.2。\n\n将 sandbox 请求区分为缺失、冗余 workspace-write、真实 danger-full-access 扩权和非法值。冗余请求会在插件层返回可恢复拒绝,并在下一次模型组装中仅投影受影响工具的无字段 schema,避免改写调用参数或官方执行器。\n\n补充策略、Cordis 组合和 Windows PowerShell 回归测试,以及 rc.2 检测与重试限制说明。
@NanmiCoder

Copy link
Copy Markdown
Owner

感谢贡献。已在维护集成中吸收这份 PR 的冗余 sandbox 恢复思路,并适配现代 Harness:执行前拒绝、plugin notice、一次组装的无 sandbox 字段 schema、保留 args/canonical schema/常驻权限。原 PR 的旧 RC 依赖回退没有合入;支持范围以当前精确兼容表为准。

真实 API 已观察到冗余请求被拒绝后成功重试;四版产品入口回归还覆盖 classifier/approval/grant 不被冗余请求提前触发。贡献明确归因到本 PR 和 LonelyHerbivore。

该修正已随 0.1.7 发布,因此关闭此 PR 作为已由适配后的集成实现取代。验证与取舍

@NanmiCoder NanmiCoder closed this Sep 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants