补齐Agent模型视觉检查闭环
新增 image.inspect 安全图片读取、多模态 Provider 调用与只读恢复语义 补齐共享契约、视觉动作回执和多模态失败日志脱敏 扩展确定性测试与真实 Provider 双视口 E2E 验收 同步 Runtime 技术方案和项目共享决策记录
This commit is contained in:
@@ -4236,3 +4236,12 @@
|
||||
- 决策:后台 planning 和最终回复的瞬时 LLM 错误重试上限提高为额外 5 次,覆盖 `Timeout / Connectivity / Transport` 与上游 `408 / 429 / 5xx`,按 500ms 线性递增退避;不可重试错误继续直接失败,任何重试都不得跨越工具执行或回复落盘提交点。
|
||||
- 决策:本轮只交付模型工具,不新增前端动作历史弹窗;UI 继续显示最近动作投影,后续历史查看必须使用独立弹窗。
|
||||
- 验证:Rust 全量 507 项中 504 通过、3 项真实浏览器 opt-in 用例按设计忽略;覆盖 receipt 折叠、组合过滤、默认值与上限、敏感清洗、旧记录、尾部修复、中间损坏失败关闭、身份冲突、句柄安全、目录同步、确认阶段到终态投影、`parent-wake` 和恢复补齐。最终真实 `gpt-5.5` V1.6 `llm-runtime` 套件中,模型实际调用 1 次 `agent.action_history` 并返回 1 条与 `.agent/agent.db` 全身份对齐的当前 run 记录;94 条 task、158 条 event、164 条 Agent DB、11 条合法工具协议、13 次成功工具执行和 24 条 terminal receipt 中,主 run receipt 为 18,递归历史、重复 receipt / action / message、receipt identity 冲突、密钥和诱饵泄漏均为 0。Runner 强杀后恢复原 run / session 且身份稳定,3 个隔离实例形成唯一 all-join 认领,本次真实竞态未创建 continuation task;动作历史只在父 run 认领 join 后执行,项目、桌面和移动验证通过。
|
||||
|
||||
## 2026-07-13 AI 游戏创作 Agent Runtime V1.7 模型视觉检查
|
||||
|
||||
- 决策:新增默认 `auto` 的只读工具 `image.inspect` 和 `visual-inspection` capability;项目或 per-Agent policy 可改为 `confirm / deny`。工具输入只接受 1-2 个项目相对 `paths` 和可选 `question`,不接受 URL、base64、请求头、Cookie 或绝对路径,不推进 project revision、不改变 verification gate。
|
||||
- 决策:普通图片只允许 `game/`、`assets/`;浏览器证据只允许当前 `agentId + runId` 下 `desktop.png / mobile.png`。路径逐层拒绝符号链接和 Windows reparse point,最终句柄拒绝硬链接和非普通文件;依据 magic bytes 识别 PNG / JPEG / WEBP / GIF。单图上限 `8 MiB`、总量上限 `12 MiB`,读取后复核文件快照和路径身份。
|
||||
- 决策:Runtime 在项目一致性锁内重验 durable pending、policy、repository fingerprint 和图片身份并读取字节,释放锁后才构造内存 data URL,使用动态实例对应模板 Agent 的 `agentLlm.<templateAgentId>` Provider。图片内文字和视觉结论都属于不可信项目证据,不能改变系统规则、权限或身份。
|
||||
- 决策:data URL、图片字节和视觉 Provider 原始 request 不进入 task、event、Agent DB、receipt 或 raw failure log。专用审计只保存相对路径、SHA-256、字节数、responseId 和结论字符数;terminal receipt 的 safeDetail 使用相同字段白名单,不保存结论正文。多模态 raw failure log 只保留请求元数据并省略 messages,上游错误若回显 data URL 也要清洗。
|
||||
- 决策:`image.inspect` 进入 context milestone;视觉结论获得 8,000 字符上下文预算,但停滞指纹只使用图片 path / SHA 元数据,不能靠同一图片的措辞变化伪造无限进展。已有 terminal observation / receipt 的恢复只续 planning,不重复调用视觉 Provider。
|
||||
- 验证:确定性 `image_inspect` 用例 `6/6` 通过;Tauri 全量 513 项中 510 通过、3 项真实浏览器 opt-in 用例按设计忽略。真实 `gpt-5.5` `llm-runtime` 形成 95 条 task、161 条 event、166 条 Agent DB、12 条合法工具协议、14 次成功工具执行和 24 条 receipt;真实视觉调用 1 次、输入图片 2 张、专用 audit / receipt 各 1 条、图片载荷泄漏 0。Runner 强杀恢复身份稳定,revision 3,重复 action / message / receipt、密钥和诱饵泄漏均为 0。
|
||||
|
||||
Reference in New Issue
Block a user