Repository navigation
SmartPerfetto v1.15.1
中文
1.15.1 继承 1.15 的功能更新,并补齐安装诊断和发布验收。doctor 现在真实打开、查询并关闭内存 SQLite,AI 关闭时也会检查原生绑定;HTTP 测试在导入运行时前隔离私有数据目录并完成资源清理。npm 公开安装验收由消费者项目明确批准经过源码审查的依赖脚本 pins,再查询固定 Trace,不能用 version/help 成功替代真实执行。
本版把源码与文档知识库选择放到每轮输入框旁,统一五个运行时的最终交付与核验,补齐进程实例隔离、呈现节奏和 CPU 簇负载测量。
- 本轮上下文:源码按需查找与读取,无需预建完整索引;源码深度控制预算,发送授权仍以披露范围为准。文档文件夹可以作为独立知识库,Web 和 CLI 都支持管理与授权。
- 答案与停止:支持的运行时先显示临时草稿,正文交付后继续核验;草稿不保存。Web 正文交付后的第一次停止只结束复核,第二次进入有界强停。CLI 第二次 Ctrl-C 会取消整轮且不保存;JSON/NDJSON 的第一次 Ctrl-C 即取消整轮。
- 分析语义:呈现节奏与帧耗时并列,保留 Buffer Stuffing 和候选上屏关联的证据限制;点击、CPU、启动详情支持 exact UPID 与重启实例隔离探针。新增堆转储类增长、进程状态、后台电源状态和持锁方区间。
- 本次修复:CPU 簇负载的分子、分母统一扣除休眠;转换缺失时整体使用墙钟。多设备同号 CPU 或歧义元数据返回不可用原因。完整休眠窗口不计活跃核心。Linux gate 安装真实 ripgrep,源码选择测试使用真实文件;帧方差阈值测试通过生产依赖链执行,保留语义断言与完整滑动覆盖。
HTTP 测试改用自有 IPv4 listener;会话、健康检查和路由集成使用专属数据库与日志目录,避免测试触碰默认用户数据。
源码部署安全修复:开发模式的 /uploads 静态入口已移除,Trace 下载统一经过 API 认证和归属检查。默认 Docker 与便携包配置原本不暴露这一入口。
升级说明
旧内置 Android Internals Wiki Pack 与 smp knowledge-pack 已移除,请注册普通文档知识库。/api/perfetto-sql/*、/api/template-analysis/*、/api/sql/* 返回 410,部分入口无直接替代;/api/perfetto/* 返回 404。模型调用类 Skill 步骤与旧 Claude verifier timeout/verification toggle 已移除。
CLI 要求 Node.js 24,便携包自带运行时。本轮启用源码或文档知识库时,报告与分析快照仅创建者可读。
已知限制
真实 Provider 验收仍不完整:本次 DeepSeek 的 OpenAI/Pi 启动报告未通过声明或报告检查,OpenAI 滑动报告未通过声明事实验收。OpenCode 启动实测返回了声明但没有可用正文,最终核验拒绝交付;现有材料无法确定正文补全的具体失败分支。确定性测试不能视作所有运行时的真实长报告或准确性验收。
English
1.15.1 retains the 1.15 feature update and adds installation diagnostics and release verification. doctor opens, queries and closes an in-memory SQLite database even with AI disabled. HTTP fixtures isolate private data before runtime imports and settle owned resources before cleanup. The public npm smoke explicitly approves source-reviewed script pins in its consumer project and queries a committed trace; version/help alone does not establish executable package health.
This release adds per-turn source and document context beside the composer, unifies final delivery across five runtimes, and improves process-instance isolation, presentation cadence and CPU cluster measurements.
- Context: search and read source on demand without a complete index; source depth controls budgets, while disclosed provider-send consent controls authorization. Ordinary document folders are independently selectable knowledge bases with Web and CLI management.
- Delivery: supported runtimes show live-only drafts, then a readable answer while review continues. The first Web stop after delivery ends review; the second uses the bounded force-stop path. CLI's second Ctrl-C aborts without saving; JSON/NDJSON abort on the first Ctrl-C.
- Evidence: presentation cadence remains distinct from frame duration and speculative response associations. Click, CPU and startup detail support exact UPID, same-package and restart isolation probes. Heap class growth, process state, background power state and lock-holder evidence retain observation limits.
- Corrections: CPU Running spans and window capacity use one clock basis, excluding suspend consistently. Missing conversions cause a common wall-clock fallback. Ambiguous CPU identity produces null metrics and a reason; a fully suspended window has zero active cores. Linux CI installs ripgrep; source-selection success tests create real source files. The threshold regression uses its production dependency chain without relaxing assertions or removing full scrolling coverage.
Source deployment security: the development-only /uploads static route is removed. Trace downloads use authenticated, ownership-checked APIs. Default Docker and portable configurations were not exposed through this route.
HTTP tests use owned IPv4 listeners; session, health and route integration fixtures isolate their databases and logs from default user data.
Migration and limits
The built-in Wiki Pack, smp knowledge-pack, model-calling Skill steps and old Claude verifier options are removed. Retired SQL/template APIs return 410; /api/perfetto/* returns 404. Consult each route's migration information. The npm CLI requires Node.js 24; portable packages bundle their runtime. Enabled source/document context makes reports and snapshots creator-only.
Real-provider acceptance remains incomplete. DeepSeek OpenAI/Pi startup runs failed declaration or report checks; OpenAI scrolling did not pass declared-fact acceptance. OpenCode startup returned a declaration without a usable body and was rejected. The saved evidence does not identify its continuation failure branch. Deterministic tests do not establish successful real-provider long-report acceptance across all runtimes.
npm install -g @gracker/smartperfetto@1.15.1
smp --version
smp doctor --format jsonIf npm reports blocked or skipped dependency scripts, review the scoped approval and rebuild instructions in the CLI installation guide. A publisher's allowScripts does not grant consumer approval.
Full changes: CHANGELOG.md.