SmartPerfetto v1.15.1 更新说明

SmartPerfetto v1.15.1 更新说明

💡 原文中文,约4200字,阅读约需10分钟。
📝

内容提要

SmartPerfetto v1.15.1 修复版新增 SQLite 原生安装诊断、测试数据隔离与 npm 安装验证。v1.15 引入逐轮源码与文档选择、答案交付及核验流程,并修复进程实例隔离、CPU 簇负载等问题。旧内置 Wiki Pack 与部分 API 已移除,需按迁移说明调整。

🔎

延伸解读

安装诊断与依赖授权

v1.15.1 新增的 sqlite_native 检查通过打开内存数据库执行 SELECT 1 来验证原生 SQLite 绑定,不触碰用户持久化会话库。但 --version 和 --help 能运行并不代表数据库可用。npm 安装时若依赖脚本被 blocked 或 skipped,需先审查脚本再按安装方式批准,发布者的 allowScripts 不能替消费项目授权。是否受影响取决于 npm 版本与配置,不能仅凭版本号判断。

上下文选择与授权边界

源码库和知识库的选择入口移至输入框旁,可分别指定本轮使用的源码和文档。源码支持按需搜索读取,无需等待全量索引,读取预算有智能判断、快速定位和完整分析三档。但读取预算扩大不会自动扩大已同意的发送范围,源码范围、可发送文件类型和正文授权需经披露确认,每次模型调用前还会复查当前授权。文档知识库也需单独允许发送给 Provider。

交付流程与停止行为

答案流式输出时先展示临时草稿,正文生成后显示完整答案,最终事件到达才显示交付状态。草稿不写入历史,报告和快照只保存最终结论与证据。停止操作随阶段变化:正文出现前停止取消整轮;正文已交付、复核进行中时,第一次停止只结束复核并保留未核验状态。CLI 文本输出在正文后第一次 Ctrl-C 也只停止复核,第二次才取消整轮且不保存;JSON 和 NDJSON 不输出草稿,第一次 Ctrl-C 即取消整轮。

升级迁移与旧入口处理

旧内置 Android Internals Wiki Pack 和 smp knowledge-pack 命令已移除,需注册普通文档知识库并按轮选择。多个旧 API 端点被移除或返回 410/404,如 /api/perfetto-sql/*、/api/template-analysis/*、/api/sql/* 返回 410,/api/perfetto/* 返回 404。自定义 Skill 的 ai_summary、ai_decision、ai_assist 不再支持模型调用步骤,验证器会拒绝这类定义。Provi

❓

Q&A

SmartPerfetto v1.15.1 主要更新了哪些内容?

SmartPerfetto v1.15.1 是 v1.15 的修复版本,新增了原生 SQLite 安装诊断、测试数据隔离和 npm 消费项目的安装验证。同时保留了 v1.15 引入的逐轮源码与文档选择、答案交付和核验流程。从 v1.14 升级还会获得进程实例隔离、呈现节奏、堆转储增长和 CPU 簇负载修复。

如何检查 SmartPerfetto 的 SQLite 原生安装是否正常?

运行 `smp doctor --format json`,会新增 `sqlite_native` 检查:打开独立的内存 SQLite 数据库,执行 `SELECT 1`,再关闭连接。缺少原生绑定、查询失败或关闭失败都会报错。该探针不读取用户的持久化会话库,且 `--version` 和 `--help` 能运行并不能证明原生数据库可用。

从 v1.14 升级到 v1.15.1 后,哪些旧功能或 API 被移除了?

旧的内置 Android Internals Wiki Pack 和 `smp knowledge-pack` 命令已移除,需注册普通文档知识库并按轮选择。部分 API 如 `/api/perfetto-sql/*`、`/api/template-analysis/*`、`/api/sql/*` 返回 410,`/api/perfetto/*` 返回 404。自定义 Skill 的 `ai_summary`、`ai_decision`、`ai_assist` 不再支持模型调用步骤。Provider 的旧 Claude verifier timeout 和 verification toggle 也已移除。

SmartPerfetto v1.15.1 如何改进测试数据隔离?

相关测试改用各自拥有的临时数据库和数据目录。Agent 路由集成测试在导入运行模块前设置数据库、Provider、日志和场景产物目录,先结束自有会话、流和存储连接,再删除临时目录。这些测试不再依赖默认用户数据库,日志清理也限制在测试目录内。

SmartPerfetto v1.15.1 的答案交付和核验流程是怎样的?

支持答案流式输出的运行时,会在模型写作时展示临时草稿。正文生成后,同一个回答位置会显示完整答案;需要语义复核时,旁边保留待核验提示。最终事件到达后,才显示这一轮的交付状态。草稿只存在于当前显示中,不写入历史。HTML 报告、CLI 文件和分析快照继续保存最终结论、声明和证据来源。

SmartPerfetto v1.15.1 修复了哪些 CPU 簇负载计算问题?

修复了两处问题:一是原先窗口分母扣除休眠时间,但 Running 区间分子仍按墙钟累加,导致跨休眠时负载可达 200%;现在两边统一使用单调时钟,不可用时一起回退墙钟。二是多设备 Trace 中,两台设备的 CPU 0 不能合并成一个核心;身份无法区分或 CPU 元数据歧义时,簇负载返回不可用原因,相关数值为空。修复没有把超过 100% 的结果直接截到 100%。

SmartPerfetto v1.15.1 中如何管理知识库的发送授权?

可以使用 `smp knowledge consent <id> --enable|--disable` 修改已有知识库的发送授权。Web 在开启前显示确认说明;CLI 的 `--enable` 表示授权,并在成功后输出发送、保存与服务方留存说明。模型实际读了哪些文档,也会记录使用回执。

SmartPerfetto v1.15.1 的滑动分析有哪些改进?

滑动概览现在把呈现节奏放在帧耗时旁边。FrameTimeline 标记、Buffer Stuffing、相邻呈现间隔和 doFrame 起点间隔各自保留原来的含义。这对高刷新率场景尤其有用:一批帧带有 Buffer Stuffing 标签时,还需要看实际呈现是否均匀,以及有没有混合的 Missed 或 Dropped 证据。缺少呈现观测时,结果会说明尚未测量,不能拿 doFrame 起点节奏代替上屏间隔。

🏷️

标签

➡️

继续阅读