Skip to content

v1.3.265

Choose a tag to compare

@topcheer topcheer released this 17 Oct 12:05
· 85 commits to main since this release

v1.3.265

发布日期:2026-10-17

核心主题:信任模型收敛 + 最少打扰底线落地

本版本落实两条用户裁决:双模式信任模型收敛(#4279 / #4280)与 harness 最少打扰底线(#4282 + 团队准则广播)。

权限信任模型收敛(#4280,修复 #4279)

  • bypass 模式:写门收敛——普通沙盒外写文件不再触发 ask;正常部署链(含自有凭证内容的标准工作流,如 harbor 认证、git push URL token)不再被 SECURITY ESCALATION 反探测横幅骚扰(横幅本身是 #3282 降级台账的审计警告,命令实际在执行)
  • supervised 模式:与 bypass 对齐收敛——普通沙盒外写为 Allow;仅保留敏感路径门(~/.ssh/、/etc/ 等罕见且高破坏目标必须 Ask)
  • .env 凭证匹配路径边界修复:kubectl get secret -o jsonpath='{.data.gitlab-token}' 类命令不再误报凭证外传(jsonpath 表达式中的 .env 子串是路径不是凭证)
  • #1093 契约对齐:approval handler 必须读 agent 当前 policy(敏感路径写仍必须 Ask,stale policy 不再能绕过)

refusal ledger 锚点边界修复(#4282,今日会话 4 次实弹误拦的根因修复)

  • 根因:flag 锚点提取正则无左边界——持久化 excerpt 里的连字符散文词(如 mid-run、re-search)泄漏出 -run/-search 子词锚点,硬拦截所有使用这些标准旗标的命令(go test -run 全军覆没,连修复该 bug 的验证命令都被拦——4 次实证)
  • 修复:flag 锚点仅在 dash 位于 token 起始时生效;path 扩展名分支加词边界;锚点在匹配时从 excerpt 重算(不持久化),存量污染条目即刻自然失效
  • 数据面:refusals.json 16 条 entries 经审计 100% 为引用文本污染(代码注释/研究提示词碎片/技术讨论引语,零真实用户约束),已备份后清空

其他

  • #4281:desktop sendMessageData owner-guarded persist refresh,移除 mid-run runGeneration 双 bump
  • #4276:moonshot provider schema 修复

内部

  • harness 最少打扰底线已固化为团队准则与知识图谱决策:防御特性引入前过"打扰预算"评估,误报代价 ≥ 漏报代价时默认 fail-open/advisory-only
  • follow-up:refusal 录入源判别(用户指令 vs 引用碎片)列为独立待办

完整变更:#4280、#4281、#4282