snapshot-checker 0.8.5 → 0.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +137 -106
  2. package/dist/src/cli.d.ts.map +1 -1
  3. package/dist/src/cli.js +11 -0
  4. package/dist/src/cli.js.map +1 -1
  5. package/dist/src/lib/execution/execution_error.d.ts +7 -0
  6. package/dist/src/lib/execution/execution_error.d.ts.map +1 -0
  7. package/dist/src/lib/execution/execution_error.js +13 -0
  8. package/dist/src/lib/execution/execution_error.js.map +1 -0
  9. package/dist/src/lib/execution/run_manifest.d.ts +2 -0
  10. package/dist/src/lib/execution/run_manifest.d.ts.map +1 -1
  11. package/dist/src/lib/execution/run_manifest.js +10 -2
  12. package/dist/src/lib/execution/run_manifest.js.map +1 -1
  13. package/dist/src/lib/preflight/preflight_check.d.ts +2 -0
  14. package/dist/src/lib/preflight/preflight_check.d.ts.map +1 -1
  15. package/dist/src/lib/preflight/preflight_check.js +76 -0
  16. package/dist/src/lib/preflight/preflight_check.js.map +1 -1
  17. package/dist/src/lib/preflight/register_preflight.d.ts.map +1 -1
  18. package/dist/src/lib/preflight/register_preflight.js +4 -0
  19. package/dist/src/lib/preflight/register_preflight.js.map +1 -1
  20. package/dist/src/lib/report/command_suite.d.ts +6 -0
  21. package/dist/src/lib/report/command_suite.d.ts.map +1 -1
  22. package/dist/src/lib/report/command_suite.js +51 -23
  23. package/dist/src/lib/report/command_suite.js.map +1 -1
  24. package/dist/src/lib/report/decode.d.ts +2 -2
  25. package/dist/src/lib/report/decode.d.ts.map +1 -1
  26. package/dist/src/lib/report/decode.js.map +1 -1
  27. package/dist/src/lib/report/hiperf_compat.d.ts +14 -0
  28. package/dist/src/lib/report/hiperf_compat.d.ts.map +1 -0
  29. package/dist/src/lib/report/hiperf_compat.js +20 -0
  30. package/dist/src/lib/report/hiperf_compat.js.map +1 -0
  31. package/dist/src/lib/report/hiperf_raw_data_probe.d.ts +29 -0
  32. package/dist/src/lib/report/hiperf_raw_data_probe.d.ts.map +1 -0
  33. package/dist/src/lib/report/hiperf_raw_data_probe.js +93 -0
  34. package/dist/src/lib/report/hiperf_raw_data_probe.js.map +1 -0
  35. package/dist/src/lib/report/pipeline.d.ts +2 -1
  36. package/dist/src/lib/report/pipeline.d.ts.map +1 -1
  37. package/dist/src/lib/report/pipeline.js.map +1 -1
  38. package/dist/src/lib/report/presets.d.ts.map +1 -1
  39. package/dist/src/lib/report/presets.js +5 -2
  40. package/dist/src/lib/report/presets.js.map +1 -1
  41. package/package.json +5 -5
  42. package/skills/snapshot-checker/SKILL.md +12 -0
  43. package/skills/snapshot-checker/references/capture_profile.md +2 -0
  44. package/skills/snapshot-checker/references/error_codes.md +1 -0
package/README.md CHANGED
@@ -4,46 +4,15 @@
4
4
 
5
5
  **主场景为 `report`**:按 checkpoint 风险目标采集 trace/perf,可选 hstack 与 sourcemap 解析,输出 `dump_stack.*`。
6
6
 
7
- **0.7.0 相对 0.6.x 的破坏性变更**
8
-
9
- - `report` 默认 `--trace-from` 由 `hitrace` 改为 **`mix`**(采集默认带 `--raw-data`,analysis 默认预处理 hitrace 并使用 **perfFirst** sidecar)。
10
- - 日志格式统一为行首 `[ISO8601] {级别} {正文}`(无 consola 颜色)。
11
- - 依赖升级:`hiperf_txt_parser` 2.0、`hm-pt-core` 1.0、`hmtrace-parser` 0.8;analysis trace 解码改由 pipeline 编排;公共类型与 trace 机制自 `hm-pt-core` 导入。
12
- - 若需与 0.6.x 相同默认行为,显式传入 `--trace-from hitrace`。
13
-
14
- **0.8.x Agent-friendly 变更(相对早期 0.8)**
7
+ ---
15
8
 
16
- - **统一 CLI 入口**:npm 与 pkg 独立二进制共用 `src/cli.ts`,能力一致(含 `report-user`、`--list`、`--dry-run`、顶层闭环命令)。
17
- - **默认 fail-fast**:命令套件执行遇错即停;需继续时使用 `--continue-on-error`(`--stop-on-error` 为同义显式写法)。失败时仍会补跑 `restore` 组。
18
- - **参数校验**:`report` / `report-user` / `plan` 要求非空 `--app`;未知 `--group` 返回退出码 `2` 与稳定错误码(如 `ERROR_MISSING_APP`、`UNKNOWN_GROUP`)。
19
- - **Shell 安全边界**:进入 Shell 或重定向的参数经统一校验——标识符白名单(`--app`、`--ability`、`--log-key`、`--hitrace-tag`、`--hdc-target` 等 → `INVALID_IDENTIFIER`);数值纯整数解析(`--duration`、`--buffer-size` → `INVALID_NUMERIC`);路径拒绝 Shell 元字符(`--output-dir`、`--hstack-tool-path`、`--sourcemap-dir` → `INVALID_PATH`)。
20
- - **Plan 完整性**:`plan.json` 含 `commands_digest` 与 `execution_options`(如 `ignorePlatform`);`apply` 校验存储 commands 与重新生成 commands 的双摘要,并**始终**采用 plan 保存的执行选项(与 plan 不一致的 `apply --ignore-platform` 返回 `PLAN_OPTION_OVERRIDE`,需重新 `plan`);`0.x` 版本兼容比较 major+minor。
21
- - **机器可读输出**:全局 `--output-format json`(与采集目录 `--output-dir` 无关);json 模式下 **stdout 仅 JSON**,日志写 **stderr**。
22
- - **顶层闭环命令**:`preflight`、`plan`、`apply`、`status`、`validate`(详见下文「CLI 总览」)。
23
- - **环境变量**:`HYPER_STARTUP_CHECKER_LOG_LEVEL`、`HYPER_STARTUP_CHECKER_BUNDLED_VERSION`(旧名 `SNAPSHOT_CHECKER_*` 仍可读)。
24
- - **CommandSuite 命名**(依赖 `hmcommand-runner@^1.3.0`):原 `Scenario*` API 与 JSON 字段 `scenario` / `scenario_options` 分别改为 `CommandSuite*`、`command_suite` / `command_suite_options`;`plan` / `preflight` 使用 `--command-suite`。
25
- - **命令套件源码位置**:`report` / `report-user` 定义迁至 `src/commands/`,CLI 静态注册(不再扫描目录动态加载)。
9
+ ## 安装
26
10
 
27
- **前置条件**
11
+ ### 前置条件
28
12
 
29
13
  - **Node.js** ≥ 18。
30
14
  - PATH 中可用 **`hdc`**,并已连接目标设备。
31
- - 本机 analysis 依赖 **`hiperf_txt_parser` ^2.0**、**`hm-pt-core` ^1.0**、**`hmtrace-parser` ^0.8**(随 `npm install` 安装):hitrace 预处理与索引由 hmtrace 构建,公共类型与 trace 机制由 hm-pt-core 提供,样本级并行解码与 hitrace 合并由 hiperf 完成。
32
-
33
- ## 架构与 hmcommand-runner
34
-
35
- 自 **0.8.x** 起,命令调度与执行引擎已提取为独立 npm 包 **[`hmcommand-runner`](https://www.npmjs.com/package/hmcommand-runner)**(当前依赖 `^1.3.0`):
36
-
37
- | 层级 | 包 / 目录 | 职责 |
38
- |------|-----------|------|
39
- | 执行框架 | `hmcommand-runner` | `CommandDef` 类型、组调度(`group:N`)、Shell/Builtin/Embed Runner、`registerCommandSuites` |
40
- | 领域命令套件 | `src/commands/`、`src/lib/report/` 等 | report/report-user 命令套件、hdc/hiperf/hitrace 命令拼装与解码 |
41
-
42
- `snapshot-checker` 的公开 API(`resolveCommandSuite`、`runCommandSuiteGroups`、`executeAll` 等)从主包 re-export(底层委托 `hmcommand-runner`)。npm 仍可通过 `snapshot-checker/commands/report` 引用命令套件模块。若只需通用命令编排框架,可直接依赖 `hmcommand-runner`。
43
-
44
- ---
45
-
46
- ## 安装
15
+ - 本机 analysis 依赖 **`hiperf_txt_parser` ^2.2**、**`hm-pt-core` ^2.0**、**`hmtrace-parser` ^0.9**(随 `npm install` 安装):hitrace 预处理与索引由 hmtrace 构建,公共类型与 trace 机制由 hm-pt-core 提供,样本级并行解码与 hitrace 合并由 hiperf 完成。
47
16
 
48
17
  ### 直接安装(推荐)
49
18
 
@@ -77,68 +46,6 @@ npm run dev -- report --help
77
46
 
78
47
  ---
79
48
 
80
- ## CLI 总览
81
-
82
- `snapshot-checker --help` 除命令套件子命令 `report`、`report-user` 外,还提供下列**顶层命令**(`report` 与 `report-user` 输出目录结构一致,闭环命令不按套件嵌套):
83
-
84
- | 命令 | 说明 |
85
- | ---- | ---- |
86
- | `preflight` | 运行前环境检查(Node、hdc、设备、应用、输出目录、命令套件权限等) |
87
- | `plan` | 生成可保存的执行计划 `plan.json`(不连设备、不执行);默认 `--command-suite report` |
88
- | `apply` | 按 `plan.json` 执行采集与分析,写入 `run_manifest.json`;采用 plan 中 `execution_options`,不可覆盖(不一致时退出码 `2` / `PLAN_OPTION_OVERRIDE`) |
89
- | `status` | 读取 `run_manifest.json` 执行状态 |
90
- | `validate` | 验收 `output-dir` 产物(必需 `dump_stack.json`) |
91
-
92
- **推荐 Agent 顺序**:`preflight` → `plan` → `apply` → `status` → `validate`。详细契约见 [`skills/snapshot-checker/SKILL.md`](skills/snapshot-checker/SKILL.md)。
93
-
94
- ```bash
95
- snapshot-checker preflight --app com.example.app --output-dir ./output --output-format json
96
- snapshot-checker plan --command-suite report --app com.example.app --output-dir ./output --output-format json
97
- snapshot-checker apply --plan ./output/plan.json --output-format json
98
- snapshot-checker status --output-dir ./output --output-format json
99
- snapshot-checker validate --output-dir ./output --output-format json
100
- ```
101
-
102
- ### 全局选项
103
-
104
- 对各子命令均生效(含顶层命令与 `report` / `report-user`):
105
-
106
- | 选项 | 说明 |
107
- | ---- | ---- |
108
- | `--output-format <text\|json>` | CLI 结果写出格式,默认 `text`;**与 `--output-dir`(采集产物目录)无关** |
109
- | `--log-level <level>` | 日志级别;未设则读环境变量,默认 `info` |
110
- | `--log-file [path]` | 日志追加写文件;省略 path 时写入 `<output-dir>/workspace/checker.log` |
111
- | `--hdc-target <sn>` | 全部 `hdc` 命令加 `-t <sn>` |
112
- | `--parse-concurrency <n>` | perf 加载与 trace 解码 Worker 数,默认 `1` |
113
-
114
- ### `--output-format json`
115
-
116
- - **stdout**:仅一行 JSON(含 `schema_version: "1"`、`ok`、命令结果或 `error.code`)。
117
- - **stderr**:结构化日志与进度;自动设置 `NO_COLOR=1`。
118
- - 适用于 `--list`、`--dry-run`、正式执行,以及 `preflight` / `plan` / `apply` / `status` / `validate`。
119
-
120
- ### 退出码
121
-
122
- | 退出码 | 含义 |
123
- | ------ | ---- |
124
- | `0` | 成功 |
125
- | `1` | 执行失败、验收失败、preflight 有 `fail` 检查项 |
126
- | `2` | 参数/契约错误(如缺 `--app`、未知 `--group`、Shell 参数非法、plan 文件无效或摘要不匹配) |
127
-
128
- 常见 `error.code`:`ERROR_MISSING_APP`、`ERROR_MISSING_ABILITY`、`UNKNOWN_GROUP`、`INVALID_IDENTIFIER`、`INVALID_NUMERIC`、`INVALID_PATH`、`PLAN_CHANGED`、`PLAN_VERSION_MISMATCH`、`PLAN_OPTION_OVERRIDE`、`PLAN_NOT_FOUND`、`MANIFEST_NOT_FOUND`、`MANIFEST_INVALID_JSON`、`MANIFEST_UNSUPPORTED_SCHEMA`。完整列表见 [`skills/snapshot-checker/references/error_codes.md`](skills/snapshot-checker/references/error_codes.md)。
129
-
130
- ### 环境变量
131
-
132
- | 变量 | 说明 |
133
- | ---- | ---- |
134
- | `HYPER_STARTUP_CHECKER_LOG_LEVEL` | 默认日志级别(优先于 `LOG_LEVEL`) |
135
- | `HYPER_STARTUP_CHECKER_BUNDLED_VERSION` | pkg 二进制嵌入版本(构建注入) |
136
- | `NO_COLOR` / `FORCE_COLOR` | 控制台颜色 |
137
-
138
- 旧名 `SNAPSHOT_CHECKER_LOG_LEVEL`、`SNAPSHOT_CHECKER_BUNDLED_VERSION` 仍可读,建议迁移至上表新名。
139
-
140
- ---
141
-
142
49
  ## `report` 命令
143
50
 
144
51
  checkpoint 镜像失效等风险的专项采集与分析。按 `--risk-targets` 选择 hiperf 事件;analysis 阶段可选用 **hstack**、**sourcemap**,并通过 `--trace-format-profile` 配置 trace 解码。
@@ -204,7 +111,7 @@ analysis 通过 `src/lib/report/pipeline.ts` 的 pipeline 执行,trace 解码
204
111
  | `--skip-non-backtrack` | `backtrackFS` 使用 `keepNonFsRevoked: false` |
205
112
  | `--drop-failed-samples` | 丢弃无 trace 解析器的 raw 样本 |
206
113
 
207
- **全局选项**(对各子命令均生效;完整说明见上文「CLI 总览」)
114
+ **全局选项**(对各子命令均生效;完整说明见下文「Agent 闭环」)
208
115
 
209
116
  | 选项 | 说明 |
210
117
  | ---- | ---- |
@@ -358,6 +265,17 @@ snapshot-checker report --app com.example.app \
358
265
  --sourcemap-dir /path/to/sourcemaps
359
266
  ```
360
267
 
268
+ **相机应用完整采集(`hitrace` + `rls` profile)**
269
+
270
+ ```bash
271
+ snapshot-checker report --app com.huawei.hmos.camera --output-dir .\output_camera --trace-format-profile rls --risk-targets all --backtrack-delay 75 --duration 75 --log-file --parse-concurrency 1 --log-key "pid" --trace-from hitrace --skip-backtrack
272
+ ```
273
+
274
+ - `--trace-from hitrace`:采集不带 `--raw-data`,analysis 使用 **hitraceFirst** sidecar(与 0.6.x 默认一致)。
275
+ - `--trace-format-profile rls`:使用 RLS trace 解码 profile。
276
+ - `--skip-backtrack`:跳过 `backtrackFS` 后处理;`--backtrack-delay` / `--duration` 均为 75 秒。
277
+ - `--log-file`:日志写入 `.\output_camera\workspace\checker.log`(Windows 路径写法;Unix 可改为 `./output_camera`)。
278
+
361
279
  **正式采集(需已连接 hdc 设备)**
362
280
 
363
281
  ```bash
@@ -405,19 +323,69 @@ snapshot-checker report-user --dry-run --app com.example.app --ability EntryAbil
405
323
 
406
324
  ---
407
325
 
408
- ## 测试
326
+ ## Agent 闭环
327
+
328
+ `snapshot-checker --help` 除命令套件子命令 `report`、`report-user` 外,还提供下列**顶层命令**(`report` 与 `report-user` 输出目录结构一致,闭环命令不按套件嵌套):
329
+
330
+ | 命令 | 说明 |
331
+ | ---- | ---- |
332
+ | `preflight` | 运行前环境检查(Node、hdc、设备、应用、输出目录、命令套件权限等) |
333
+ | `plan` | 生成可保存的执行计划 `plan.json`(不连设备、不执行);默认 `--command-suite report` |
334
+ | `apply` | 按 `plan.json` 执行采集与分析,写入 `run_manifest.json`;采用 plan 中 `execution_options` 与 `global_options`,不可覆盖(不一致时退出码 `2` / `PLAN_OPTION_OVERRIDE`) |
335
+ | `status` | 读取 `run_manifest.json` 执行状态 |
336
+ | `validate` | 验收 `output-dir` 产物(必需 `dump_stack.json`) |
337
+
338
+ **推荐 Agent 顺序**:`preflight` → `plan` → `apply` → `status` → `validate`。详细契约见 [`skills/snapshot-checker/SKILL.md`](skills/snapshot-checker/SKILL.md)。
409
339
 
410
340
  ```bash
411
- npm test # 单元与集成
412
- npm run test:perf # 性能回归
413
- npm run test:all # 全部
414
- npm run format # Prettier 格式化 src / tests
415
- npm run format:check # 仅检查格式(CI 可用)
341
+ snapshot-checker preflight --app com.example.app --output-dir ./output --output-format json
342
+ snapshot-checker plan --command-suite report --app com.example.app --output-dir ./output --output-format json
343
+ snapshot-checker apply --plan ./output/plan.json --output-format json
344
+ snapshot-checker status --output-dir ./output --output-format json
345
+ snapshot-checker validate --output-dir ./output --output-format json
416
346
  ```
417
347
 
348
+ ### 全局选项
349
+
350
+ 对各子命令均生效(含顶层命令与 `report` / `report-user`):
351
+
352
+ | 选项 | 说明 |
353
+ | ---- | ---- |
354
+ | `--output-format <text\|json>` | CLI 结果写出格式,默认 `text`;**与 `--output-dir`(采集产物目录)无关** |
355
+ | `--log-level <level>` | 日志级别;未设则读环境变量,默认 `info` |
356
+ | `--log-file [path]` | 日志追加写文件;省略 path 时写入 `<output-dir>/workspace/checker.log` |
357
+ | `--hdc-target <sn>` | 全部 `hdc` 命令加 `-t <sn>` |
358
+ | `--parse-concurrency <n>` | perf 加载与 trace 解码 Worker 数,默认 `1` |
359
+
360
+ ### `--output-format json`
361
+
362
+ - **stdout**:仅一行 JSON(含 `schema_version: "1"`、`ok`、命令结果或 `error.code`)。
363
+ - **stderr**:结构化日志与进度;自动设置 `NO_COLOR=1`。
364
+ - 适用于 `--list`、`--dry-run`、正式执行,以及 `preflight` / `plan` / `apply` / `status` / `validate`。
365
+
366
+ ### 退出码
367
+
368
+ | 退出码 | 含义 |
369
+ | ------ | ---- |
370
+ | `0` | 成功 |
371
+ | `1` | 执行失败、验收失败、preflight 有 `fail` 检查项 |
372
+ | `2` | 参数/契约错误(如缺 `--app`、未知 `--group`、Shell 参数非法、plan 文件无效或摘要不匹配) |
373
+
374
+ 常见 `error.code`:`ERROR_MISSING_APP`、`ERROR_MISSING_ABILITY`、`UNKNOWN_GROUP`、`INVALID_IDENTIFIER`、`INVALID_NUMERIC`、`INVALID_PATH`、`PLAN_CHANGED`、`PLAN_VERSION_MISMATCH`、`PLAN_OPTION_OVERRIDE`、`PLAN_NOT_FOUND`、`MANIFEST_NOT_FOUND`、`MANIFEST_INVALID_JSON`、`MANIFEST_INVALID`、`MANIFEST_UNSUPPORTED_SCHEMA`。完整列表见 [`skills/snapshot-checker/references/error_codes.md`](skills/snapshot-checker/references/error_codes.md)。
375
+
376
+ ### 环境变量
377
+
378
+ | 变量 | 说明 |
379
+ | ---- | ---- |
380
+ | `HYPER_STARTUP_CHECKER_LOG_LEVEL` | 默认日志级别(优先于 `LOG_LEVEL`) |
381
+ | `HYPER_STARTUP_CHECKER_BUNDLED_VERSION` | pkg 二进制嵌入版本(构建注入) |
382
+ | `NO_COLOR` / `FORCE_COLOR` | 控制台颜色 |
383
+
384
+ 旧名 `SNAPSHOT_CHECKER_LOG_LEVEL`、`SNAPSHOT_CHECKER_BUNDLED_VERSION` 仍可读,建议迁移至上表新名。
385
+
418
386
  ### Agent 调用与评测
419
387
 
420
- Agent 相关能力已接入 CLI 与测试;**契约细节以 Skill 为准**,README「CLI 总览」提供速查。
388
+ Agent 相关能力已接入 CLI 与测试;**契约细节以 Skill 为准**,上文提供速查。
421
389
 
422
390
  - 技能文档:[`skills/snapshot-checker/SKILL.md`](skills/snapshot-checker/SKILL.md)
423
391
  - 集成说明:[`skills/INTEGRATION.md`](skills/INTEGRATION.md)
@@ -435,6 +403,21 @@ snapshot-checker plan --command-suite report --app com.example.app --output-dir
435
403
  # 等价:snapshot-checker report --dry-run --app com.example.app --output-format json
436
404
  ```
437
405
 
406
+ ---
407
+
408
+ ## 架构与 hmcommand-runner
409
+
410
+ 自 **0.8.x** 起,命令调度与执行引擎已提取为独立 npm 包 **[`hmcommand-runner`](https://www.npmjs.com/package/hmcommand-runner)**(当前依赖 `^1.3.2`):
411
+
412
+ | 层级 | 包 / 目录 | 职责 |
413
+ |------|-----------|------|
414
+ | 执行框架 | `hmcommand-runner` | `CommandDef` 类型、组调度(`group:N`)、Shell/Builtin/Embed Runner、`registerCommandSuites` |
415
+ | 领域命令套件 | `src/commands/`、`src/lib/report/` 等 | report/report-user 命令套件、hdc/hiperf/hitrace 命令拼装与解码 |
416
+
417
+ `snapshot-checker` 的公开 API(`resolveCommandSuite`、`runCommandSuiteGroups`、`executeAll` 等)从主包 re-export(底层委托 `hmcommand-runner`)。npm 仍可通过 `snapshot-checker/commands/report` 引用命令套件模块。若只需通用命令编排框架,可直接依赖 `hmcommand-runner`。
418
+
419
+ ---
420
+
438
421
  ## 作为库使用
439
422
 
440
423
  ```ts
@@ -457,7 +440,7 @@ await runCommandSuiteGroups({ groups, defaultGroupOrder });
457
440
 
458
441
  ## CLI 命令套件框架
459
442
 
460
- 本工具将 `src/commands/*.ts` 静态注册为子命令,并由顶层命令提供 Agent 闭环(见「CLI 总览」)。每个命令套件导出 **`groups`**、**`defaultGroupOrder`**,可选 **`options`** 与 **`applyOptions(opts)`**。
443
+ 本工具将 `src/commands/*.ts` 静态注册为子命令,并由顶层命令提供 Agent 闭环(见「Agent 闭环」)。每个命令套件导出 **`groups`**、**`defaultGroupOrder`**,可选 **`options`** 与 **`applyOptions(opts)`**。
461
444
 
462
445
  - **`src/commands/`**:设备联调命令套件,**`report`**(主套件)、**`report-user`**(无 hidumper/revoke_switch 权限)。
463
446
  - **`src/lib/`**:领域实现(如 `lib/report/decode.ts`、`lib/report/pipeline.ts`、`lib/report/command_suite.ts`);调度类型与执行器来自 **`hmcommand-runner`**。
@@ -466,6 +449,54 @@ await runCommandSuiteGroups({ groups, defaultGroupOrder });
466
449
 
467
450
  命令套件子命令通用开关:`--list`、`--dry-run`、`-g,--group`、`--wait`、`--silent`、`--continue-on-error` 等。完整列表见 `snapshot-checker <command> --help`。
468
451
 
452
+ ---
453
+
454
+ ## 测试
455
+
456
+ ```bash
457
+ npm test # 单元与集成
458
+ npm run test:perf # 性能回归
459
+ npm run test:all # 全部
460
+ npm run format # Prettier 格式化 src / tests
461
+ npm run format:check # 仅检查格式(CI 可用)
462
+ ```
463
+
464
+ Agent 相关测试见上文「Agent 闭环 → Agent 调用与评测」。
465
+
466
+ ---
467
+
468
+ ## 更新说明
469
+
470
+ ### 0.8.6 依赖升级
471
+
472
+ - **`hmtrace-parser` ^0.9.0**:内置 profile 统一为 `rls`(`default` 为其别名);`checkpoint_revoked` 字段改为 `checkpoint_monitor_id` / `revoke_reason`,FS 类型自动展开 `revoke_reason`;`vfs_snapshot_dump_monitor` 支持 `op_flag` 可读化。CLI 行为不变,仍通过 `--trace-format-profile rls` 选用该 profile。
473
+
474
+ ### 0.8.5 依赖升级
475
+
476
+ - **`hm-pt-core` ^2.0**:`RecordSample.id` / `time` / `stream_id` / `period` 统一为 `bigint`,与 hiperf 2.1+ 对齐;hiperf / hmtrace 均复用该类型,pipeline 不再需要类型断言。
477
+ - **`hiperf_txt_parser` ^2.2**:依赖 hm-pt-core 2.0;fieldDict 解码后 raw 行改为键值展示,测试侧用保留 hex raw 的 fixture 模拟「perf 已解码」场景。
478
+ - **`hmtrace-parser` ^0.8.3**、**`hmcommand-runner` ^1.3.2**:小版本对齐,无 CLI 行为变更。
479
+
480
+ ### 0.7.0 相对 0.6.x 的破坏性变更
481
+
482
+ - `report` 默认 `--trace-from` 由 `hitrace` 改为 **`mix`**(采集默认带 `--raw-data`,analysis 默认预处理 hitrace 并使用 **perfFirst** sidecar)。
483
+ - 日志格式统一为行首 `[ISO8601] {级别} {正文}`(无 consola 颜色)。
484
+ - 依赖升级:`hiperf_txt_parser` 2.0、`hm-pt-core` 1.0、`hmtrace-parser` 0.8;analysis trace 解码改由 pipeline 编排;公共类型与 trace 机制自 `hm-pt-core` 导入。
485
+ - 若需与 0.6.x 相同默认行为,显式传入 `--trace-from hitrace`。
486
+
487
+ ### 0.8.x Agent-friendly 变更(相对早期 0.8)
488
+
489
+ - **统一 CLI 入口**:npm 与 pkg 独立二进制共用 `src/cli.ts`,能力一致(含 `report-user`、`--list`、`--dry-run`、顶层闭环命令)。
490
+ - **默认 fail-fast**:命令套件执行遇错即停;需继续时使用 `--continue-on-error`(`--stop-on-error` 为同义显式写法)。失败时仍会补跑 `restore` 组。
491
+ - **参数校验**:`report` / `report-user` / `plan` 要求非空 `--app`;未知 `--group` 返回退出码 `2` 与稳定错误码(如 `ERROR_MISSING_APP`、`UNKNOWN_GROUP`)。
492
+ - **Shell 安全边界**:进入 Shell 或重定向的参数经统一校验——标识符白名单(`--app`、`--ability`、`--log-key`、`--hitrace-tag`、`--hdc-target` 等 → `INVALID_IDENTIFIER`);数值纯整数解析(`--duration`、`--buffer-size` → `INVALID_NUMERIC`);路径拒绝 Shell 元字符(`--output-dir`、`--hstack-tool-path`、`--sourcemap-dir` → `INVALID_PATH`)。
493
+ - **Plan 完整性**:`plan.json` 含 `commands_digest` 与 `execution_options`(如 `ignorePlatform`);`apply` 校验存储 commands 与重新生成 commands 的双摘要,并**始终**采用 plan 保存的执行选项与全局选项(与 plan 不一致的 `apply --ignore-platform`、`--hdc-target`、`--parse-concurrency` 返回 `PLAN_OPTION_OVERRIDE`,需重新 `plan`);`0.x` 版本兼容比较 major+minor。
494
+ - **机器可读输出**:全局 `--output-format json`(与采集目录 `--output-dir` 无关);json 模式下 **stdout 仅 JSON**,日志写 **stderr**。
495
+ - **顶层闭环命令**:`preflight`、`plan`、`apply`、`status`、`validate`(详见「Agent 闭环」)。
496
+ - **环境变量**:`HYPER_STARTUP_CHECKER_LOG_LEVEL`、`HYPER_STARTUP_CHECKER_BUNDLED_VERSION`(旧名 `SNAPSHOT_CHECKER_*` 仍可读)。
497
+ - **CommandSuite 命名**(依赖 `hmcommand-runner@^1.3.0`):原 `Scenario*` API 与 JSON 字段 `scenario` / `scenario_options` 分别改为 `CommandSuite*`、`command_suite` / `command_suite_options`;`plan` / `preflight` 使用 `--command-suite`。
498
+ - **命令套件源码位置**:`report` / `report-user` 定义迁至 `src/commands/`,CLI 静态注册(不再扫描目录动态加载)。
499
+
469
500
  ### License
470
501
 
471
502
  MIT
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+CzC,wBAAgB,gCAAgC,IAAI,OAAO,CAoC1D;AAED,MAAM,WAAW,gCAAgC;IAC/C,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iCAAiC;IACjC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,oCAAoC;AACpC,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC,IAAI,CAAC,CAsFf"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgDzC,wBAAgB,gCAAgC,IAAI,OAAO,CAoC1D;AAED,MAAM,WAAW,gCAAgC;IAC/C,0CAA0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iCAAiC;IACjC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,oCAAoC;AACpC,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC,IAAI,CAAC,CAgGf"}
package/dist/src/cli.js CHANGED
@@ -11,6 +11,7 @@ import { formatInvocationCommandLine, readHyperStartUpCheckerVersion, SNAPSHOT_C
11
11
  import { runBinaryPreflight } from "./lib/preflight/preflight.js";
12
12
  import { handleCliFatalError } from "./lib/cli/fatal.js";
13
13
  import { collectReportOutputArtifacts, resolveOutputFormatFromCli, } from "./lib/cli/output.js";
14
+ import { clearPendingCommandSuiteError, takePendingCommandSuiteError } from "./lib/execution/execution_error.js";
14
15
  import { registerPreflightCommand } from "./lib/preflight/register_preflight.js";
15
16
  import { registerExecutionCommands } from "./lib/execution/register_execution.js";
16
17
  const cliLogger = createModuleLogger(import.meta.url);
@@ -65,6 +66,7 @@ export async function runHyperStartUpCheckerCli(options = {}) {
65
66
  parseConcurrency: globals.parseConcurrency,
66
67
  }),
67
68
  onBeforeRun: async ({ globals, opts }) => {
69
+ clearPendingCommandSuiteError();
68
70
  const logFileOpt = globals.logFile;
69
71
  const skipLogSinkOnList = opts.list === true &&
70
72
  (logFileOpt === undefined ||
@@ -92,6 +94,15 @@ export async function runHyperStartUpCheckerCli(options = {}) {
92
94
  guaranteedOnFailureGroupNames: [...REPORT_GUARANTEED_ON_FAILURE_GROUP_NAMES],
93
95
  resolveOutputFormat: ({ globals }) => resolveOutputFormatFromCli(globals),
94
96
  buildCommandSuiteResultExtras: async ({ commandName, opts, mode, failed }) => {
97
+ if (mode === "run" && failed) {
98
+ const pending = takePendingCommandSuiteError();
99
+ if (pending) {
100
+ return {
101
+ error: pending,
102
+ errors: [pending.message],
103
+ };
104
+ }
105
+ }
95
106
  if (mode !== "run" || failed) {
96
107
  return {};
97
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { HiperfRawDataUnsupportedErrorDetails } from "../report/hiperf_compat.js";
2
+ /** 命令套件执行失败时供 JSON stdout 附带的结构化 error(单次 run 有效)。 */
3
+ export type PendingCommandSuiteError = HiperfRawDataUnsupportedErrorDetails;
4
+ export declare function setPendingCommandSuiteError(error: PendingCommandSuiteError): void;
5
+ export declare function takePendingCommandSuiteError(): PendingCommandSuiteError | undefined;
6
+ export declare function clearPendingCommandSuiteError(): void;
7
+ //# sourceMappingURL=execution_error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution_error.d.ts","sourceRoot":"","sources":["../../../../src/lib/execution/execution_error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,4BAA4B,CAAC;AAEvF,sDAAsD;AACtD,MAAM,MAAM,wBAAwB,GAAG,oCAAoC,CAAC;AAI5E,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CAEjF;AAED,wBAAgB,4BAA4B,IAAI,wBAAwB,GAAG,SAAS,CAInF;AAED,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD"}
@@ -0,0 +1,13 @@
1
+ let pending;
2
+ export function setPendingCommandSuiteError(error) {
3
+ pending = error;
4
+ }
5
+ export function takePendingCommandSuiteError() {
6
+ const current = pending;
7
+ pending = undefined;
8
+ return current;
9
+ }
10
+ export function clearPendingCommandSuiteError() {
11
+ pending = undefined;
12
+ }
13
+ //# sourceMappingURL=execution_error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution_error.js","sourceRoot":"","sources":["../../../../src/lib/execution/execution_error.ts"],"names":[],"mappings":"AAKA,IAAI,OAA6C,CAAC;AAElD,MAAM,UAAU,2BAA2B,CAAC,KAA+B;IACzE,OAAO,GAAG,KAAK,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,MAAM,OAAO,GAAG,OAAO,CAAC;IACxB,OAAO,GAAG,SAAS,CAAC;IACpB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,6BAA6B;IAC3C,OAAO,GAAG,SAAS,CAAC;AACtB,CAAC"}
@@ -25,6 +25,8 @@ export interface RunManifest {
25
25
  outputs?: ReportOutputArtifact[];
26
26
  warnings: string[];
27
27
  errors: string[];
28
+ /** 结构化执行失败(如 hiperf 不支持 --raw-data);Agent 可读 error.code */
29
+ error?: Record<string, unknown>;
28
30
  }
29
31
  export interface ApplyExecutionPlanInput {
30
32
  planPath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"run_manifest.d.ts","sourceRoot":"","sources":["../../../../src/lib/execution/run_manifest.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,KAAK,gCAAgC,EACtC,MAAM,sBAAsB,CAAC;AAK9B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAKL,KAAK,aAAa,EACnB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAM7E,eAAO,MAAM,2BAA2B,MAA0C,CAAC;AAEnF,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,gCAAgC,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IAC9C,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,yBAAyB,CAAC;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAKR;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAG9D;AAED,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE7E;AAED,MAAM,MAAM,0BAA0B,GAClC,oBAAoB,GACpB,uBAAuB,GACvB,kBAAkB,GAClB,6BAA6B,CAAC;AAElC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,0BAA0B,CAAC;QACjC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAwJD,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,qBAAqB,CA2CnF;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,wBAAwB,CAAC,CA0EnC;AAED,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,QAAQ,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB,CAoBlF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAyB3E;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAExE"}
1
+ {"version":3,"file":"run_manifest.d.ts","sourceRoot":"","sources":["../../../../src/lib/execution/run_manifest.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { resolveDefaultRunManifestPath } from "./execution_paths.js";
10
10
  import { resolveCliPath } from "../report/paths.js";
11
11
  import { getCommandSuiteModule } from "./command_suite_modules.js";
12
12
  import { readHyperStartUpCheckerVersion } from "../cli/version.js";
13
+ import { clearPendingCommandSuiteError, takePendingCommandSuiteError } from "./execution_error.js";
13
14
  export const RUN_MANIFEST_SCHEMA_VERSION = COMMAND_SUITE_CLI_RESULT_SCHEMA_VERSION;
14
15
  export function resolveRunManifestPath(outputDir, manifestPath) {
15
16
  if (manifestPath?.trim()) {
@@ -196,12 +197,13 @@ export function readRunManifestDetailed(manifestPath) {
196
197
  };
197
198
  }
198
199
  const validated = assertRunManifest(record);
199
- if ("error" in validated) {
200
+ if (!("schema_version" in validated)) {
200
201
  return { error: validated.error };
201
202
  }
202
203
  return { manifest: validated };
203
204
  }
204
205
  export async function applyExecutionPlan(input) {
206
+ clearPendingCommandSuiteError();
205
207
  const plan = readExecutionPlan(input.planPath);
206
208
  const { ignorePlatform } = resolvePlanExecutionOptions(plan, input.executionOptions);
207
209
  const globalOptions = resolvePlanGlobalOptions(plan, input.globalOptions);
@@ -254,7 +256,12 @@ export async function applyExecutionPlan(input) {
254
256
  const executionResults = zipCommandsWithResults(runChunks, results, ignorePlatform);
255
257
  const outputs = collectReportOutputArtifacts(plan.output_dir);
256
258
  const finishedAt = new Date().toISOString();
257
- const errors = failed ? ["命令执行失败"] : [];
259
+ const pendingError = failed ? takePendingCommandSuiteError() : undefined;
260
+ const errors = pendingError
261
+ ? [pendingError.message]
262
+ : failed
263
+ ? ["命令执行失败"]
264
+ : [];
258
265
  manifest = {
259
266
  ...manifest,
260
267
  status: failed ? "failed" : "succeeded",
@@ -266,6 +273,7 @@ export async function applyExecutionPlan(input) {
266
273
  results: executionResults,
267
274
  },
268
275
  outputs,
276
+ ...(pendingError ? { error: pendingError } : {}),
269
277
  errors,
270
278
  };
271
279
  writeRunManifest(manifest);
@@ -1 +1 @@
1
- {"version":3,"file":"run_manifest.js","sourceRoot":"","sources":["../../../../src/lib/execution/run_manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run_manifest.js","sourceRoot":"","sources":["../../../../src/lib/execution/run_manifest.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ export interface PreflightCheckInput {
24
24
  hstackToolPath?: string;
25
25
  outputDir?: string;
26
26
  minNodeMajor?: number;
27
+ traceFrom?: string;
28
+ riskTargets?: string;
27
29
  }
28
30
  /** 解析 `hdc list targets` 输出中的设备标识。 */
29
31
  export declare function parseHdcListTargets(text: string): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"preflight_check.d.ts","sourceRoot":"","sources":["../../../../src/lib/preflight/preflight_check.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,8BAA8B,MAA0C,CAAC;AAEtF,MAAM,MAAM,oBAAoB,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEnE,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,aAAa,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,qBAAqB,CAAC;IACrC,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAsBD,sCAAsC;AACtC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAa1D;AAUD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,aAAa,EAAE,qBAAqB,GACnC,oBAAoB,CAYtB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,GAAE,mBAAwB,GAC9B,oBAAoB,CA8TtB;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAgB7E;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAE1E"}
1
+ {"version":3,"file":"preflight_check.d.ts","sourceRoot":"","sources":["../../../../src/lib/preflight/preflight_check.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,8BAA8B,MAA0C,CAAC;AAEtF,MAAM,MAAM,oBAAoB,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEnE,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,aAAa,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,qBAAqB,CAAC;IACrC,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAsBD,sCAAsC;AACtC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAa1D;AAUD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,aAAa,EAAE,qBAAqB,GACnC,oBAAoB,CAYtB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,GAAE,mBAAwB,GAC9B,oBAAoB,CAqYtB;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAgB7E;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAE1E"}
@@ -5,6 +5,8 @@ import { parseAppSpec } from "../report/app.js";
5
5
  import { createHdcCli } from "../report/hdc.js";
6
6
  import { normalizeCliOutputDir, normalizeCliPath } from "../report/paths.js";
7
7
  import { parseBundleIsDebugFromBmDump } from "../report/presets.js";
8
+ import { buildHiperfEventsFromRiskTargets, } from "../report/command_suite.js";
9
+ import { parseTraceFromSource, traceFromNeedsHiperfRawData, buildHiperfRawDataProbeShellBody, resolveEffectiveTraceFromDetails, DEFAULT_HIPERF_RAW_DATA_PROBE_EVENTS, } from "../report/hiperf_raw_data_probe.js";
8
10
  import { assertAppSpecShellIdentifiers, assertHdcTargetIdentifier, assertReportShellIdentifiers, } from "../cli/shell_identifiers.js";
9
11
  import { COMMAND_SUITE_CLI_RESULT_SCHEMA_VERSION } from "hmcommand-runner/cli";
10
12
  import { hasCommandOnPath, runHostShellCommand } from "./shell_exec.js";
@@ -382,6 +384,80 @@ export function runPreflightChecks(input = {}) {
382
384
  });
383
385
  }
384
386
  }
387
+ let requestedTraceFrom;
388
+ try {
389
+ requestedTraceFrom = parseTraceFromSource(input.traceFrom);
390
+ }
391
+ catch (error) {
392
+ pushCheck(checks, {
393
+ id: "hiperf_raw_data",
394
+ status: "fail",
395
+ message: error instanceof Error ? error.message : String(error),
396
+ });
397
+ return buildPreflightCheckResult(checks, command_suite);
398
+ }
399
+ if (!traceFromNeedsHiperfRawData(requestedTraceFrom)) {
400
+ pushCheck(checks, {
401
+ id: "hiperf_raw_data",
402
+ status: "ok",
403
+ message: `--trace-from ${requestedTraceFrom} 无需 raw-data 探测`,
404
+ details: {
405
+ requested_trace_from: requestedTraceFrom,
406
+ effective_trace_from: requestedTraceFrom,
407
+ },
408
+ });
409
+ }
410
+ else if (!canRunDeviceChecks) {
411
+ pushCheck(checks, {
412
+ id: "hiperf_raw_data",
413
+ status: "skip",
414
+ message: "设备不可用,跳过 hiperf --raw-data 探测",
415
+ details: { requested_trace_from: requestedTraceFrom },
416
+ });
417
+ }
418
+ else {
419
+ const hiperfEvents = input.riskTargets?.trim()
420
+ ? buildHiperfEventsFromRiskTargets(input.riskTargets)
421
+ : DEFAULT_HIPERF_RAW_DATA_PROBE_EVENTS;
422
+ const probeBody = buildHiperfRawDataProbeShellBody(hiperfEvents);
423
+ const probeResult = runHostShellCommand(hdcCli.shell(`"${probeBody}"`));
424
+ const probeOutput = `${probeResult.stdout}\n${probeResult.stderr}`.trim();
425
+ const resolution = resolveEffectiveTraceFromDetails(requestedTraceFrom, probeOutput);
426
+ if (probeResult.exitCode !== 0 && !resolution.adjusted) {
427
+ pushCheck(checks, {
428
+ id: "hiperf_raw_data",
429
+ status: "warn",
430
+ message: `hiperf --raw-data 探测命令退出码 ${probeResult.exitCode ?? "null"},将按探测输出解析 trace-from`,
431
+ details: {
432
+ ...resolution,
433
+ hiperf_events: hiperfEvents,
434
+ exit_code: probeResult.exitCode,
435
+ },
436
+ });
437
+ }
438
+ else if (resolution.adjusted) {
439
+ pushCheck(checks, {
440
+ id: "hiperf_raw_data",
441
+ status: "warn",
442
+ message: `平台不支持 hiperf --raw-data,建议将 --trace-from 设为 ${resolution.effective_trace_from}`,
443
+ details: {
444
+ ...resolution,
445
+ hiperf_events: hiperfEvents,
446
+ },
447
+ });
448
+ }
449
+ else {
450
+ pushCheck(checks, {
451
+ id: "hiperf_raw_data",
452
+ status: "ok",
453
+ message: `hiperf --raw-data 可用,effective trace-from=${resolution.effective_trace_from}`,
454
+ details: {
455
+ ...resolution,
456
+ hiperf_events: hiperfEvents,
457
+ },
458
+ });
459
+ }
460
+ }
385
461
  return buildPreflightCheckResult(checks, command_suite);
386
462
  }
387
463
  export function formatPreflightCheckText(result) {