用途:在修改聊天渲染代码(如 chatListRenderer.ts、chatInputPart.ts、Markdown 渲染)、流式响应或 SSE 处理、聊天组件生命周期模式前后,或在 CI 中卡住涉及聊天 UI 的 PR 时,运行聊天性能基准与内存泄漏检查,也可比较两个 VS Code 版本。
主要能力:性能回归测试(npm run perf:chat)通过 Playwright Electron 启动 VS Code,打开聊天面板、发送消息并测量时序、布局与渲染指标;默认下载 VS Code 1.115.0 作为基线并比较。收集指标包括首 token 时间、完成时间、渲染完成时间、布局次数与耗时、样式重算、强制重排、长任务、长动画帧及内存/扩展主机堆。仅 timeToFirstToken、timeToComplete、forcedReflowCount、longTaskCount、longAnimationFrameCount 达到阈值且统计显著时判为回归,其余为参考信息。用 Welch t 检验避免噪声误报,中位数与 IQR 去离群,建议 5 次以上运行。
使用方式:常用命令如 npm run perf:chat -- --scenario text-only --runs 3、npm run perf:chat -- --no-baseline --runs 3、npm run perf:chat -- --build /path/to/build-A --baseline-build /path/to/build-B --runs 5、npm run perf:chat -- --production-build --baseline-build 1.115.0 --runs 5;内存泄漏检查用 npm run perf:chat-leak,可加 --messages 20 --verbose。支持 --resume、--setting/--test-setting/--baseline-setting、--ci、--heap-snapshots 等标志,可用 --force 或 --ci 跳过构建模式不一致提示。
适用场景:聊天渲染或流式管道改动前后、两个本地构建或两个发布版本对比、CI 门禁、内存泄漏排查。
限制:内存/堆指标对单次请求噪声大,仅作参考;本地路径基线不缓存,版本字符串基线会缓存;构建模式分为 dev、production、release,模式不同会提示确认;测试须禁用 vscode-api-tests 扩展。缺少官方文档中未提供的收费、价格、平台等信息。