• v0.3.22 Stable

    thzxx released this 2026-07-25 19:37:31 +08:00 | 0 commits to master since this release

    📋 版本概述

    v0.3.22 是一个问题修复版本,重点解决了大数据(base64 图片)导致应用崩溃退出的问题,并修复了图片上传后 AI 冗余调用工具、预存类型错误等若干问题。


    🐛 缺陷修复

    1. 修复大数据导致应用崩溃退出(核心修复)

    问题:当 Agent 调用 view_image 工具或用户上传图片时,base64 图片数据(单张最大约 6.7MB)会在「IPC 传输 → 渲染进程 store → DOM 渲染」链路中被反复放大且从不裁剪,多轮对话累积后撑爆渲染进程堆内存,导致应用 OOM 崩溃退出。

    根因view_image 返回的 dataUrl(base64)经 ToolRegistry 的 dataUrl 白名单跳过截断后,完整进入渲染进程,并在 ToolResultBlockTraceStep 中被 JSON.stringify 成超大字符串塞进 DOM(单条 6.7MB)。此外 data:export 会把所有会话 × 所有消息 × 完整 toolResult 一次性序列化,也是独立的 OOM 风险点。

    修复方案(LLM 看图能力不受影响):

    • 新增 src/lib/tool-result-display.tstoDisplayResult() 在渲染进程显示边界剥离 dataUrl 等超大 base64 字段,返回轻量摘要(保留 path/size/mimeType 等小字段)
    • ToolResultBlockTraceStep 渲染前套用 toDisplayResult,store 内原始 result 不变
    • data:export 导出时剥离 dataUrl / 附件 preview,并对每会话加 2000 条消息上限 + truncated 标记

    效果:单条 view_image 结果显示体积从 6,700,096 字节降至 146 字节,渲染进程内存安全。

    2. 修复图片上传后 AI 仍调用 view_image 工具

    问题:用户上传图片并告知 AI 后,AI 仍会先调用 view_image 工具去磁盘读取文件,而非直接使用已上传的图片。

    根因:附件提示措辞 "do NOT search in workspace"view_image 工具描述 "Read an image file" 语义冲突——AI 认为"读取"≠"搜索",且不确定图片已通过 vision capability 传给它。

    修复:强化附件提示注入,明确告知 AI 图片已可见、禁止调用 view_image/read_file 读取已上传图片。

    3. 修复预存类型错误

    • ConfirmationDialog:MUI v9 移除了 disableEscapeKeyDown 顶层 prop(已从 ModalProps 类型定义中删除),迁移到 onClosereason 拦截 escapeKeyDown,行为与原实现一致
    • ContextMenu / Sidebar:删除会话时重置 tokenUsage 的对象字面量补齐 lastInputTokenslastCompressedSaved 字段(v0.3.18 扩展 TokenUsage 后遗漏),消除运行时 undefined

    ⬆️ 依赖升级

    @metona-team/metona-toast 0.1.2 → 0.2.1

    • 完整 TypeScript 重构(源码由 .js 迁移至 .ts,类型更完整)
    • 修复 0.1.2 内部 package.json 版本号打包 bug(错误报告为 2.0.1)
    • 统一 ESM 产物路径(module 指向 dist 产物而非 src 源码)
    • API 完全兼容(success/error/warning/info/configure/use 已验证),新增 promise/loading/progress/confirm/prompt 等高级 API

    🧹 其他

    • 删除仓库根目录误生成的 nul 垃圾文件(失败的 Windows dir 命令输出被重定向到 nul 产生)
    • 版本号 0.3.21 → 0.3.22(package.json / package-lock.json / README 徽章)

    📦 安装

    Windows 用户可下载 MetonaAI-Desktop-Setup-0.3.22.exe 安装版或 MetonaAI-Desktop-0.3.22-portable.exe 便携版。

    升级用户:直接覆盖安装即可,工作空间数据与配置不受影响。

    Downloads