@luolingp/request-doctor 0.12.7 → 0.12.8

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.
@@ -2,7 +2,7 @@
2
2
 
3
3
  **产品名称**:request-doctor(请求急救员)
4
4
  **产品标识**:request-doctor
5
- **版本**:0.12.7
5
+ **版本**:0.12.8
6
6
 
7
7
  ---
8
8
 
@@ -1,7 +1,7 @@
1
1
  # 软件设计说明
2
2
 
3
3
  **产品名称**:request-doctor(请求急救员)
4
- **版本**:0.12.7
4
+ **版本**:0.12.8
5
5
  **编制依据**:GB/T 8567-2006《计算机软件文档编制规范》6.2
6
6
 
7
7
  ---
@@ -1,7 +1,7 @@
1
1
  # 软件测试报告
2
2
 
3
3
  **产品名称**:request-doctor(请求急救员)
4
- **版本**:0.12.7
4
+ **版本**:0.12.8
5
5
  **编制依据**:GB/T 8567-2006《计算机软件文档编制规范》6.6;GB/T 8566-2007 验证与确认过程
6
6
 
7
7
  ---
@@ -62,8 +62,8 @@
62
62
  | `test/client-half.test.mjs` | 5 | 客户端半:模块身份、注入声明、apply 注册、组件能渲染 |
63
63
  | `test/diagnostics.test.mjs` | 3 | 快照可选写入:不配置不写盘、突发合并、坏路径不致命 |
64
64
  | `test/restart-notice.test.mjs` | 3 |
65
- | `test/verdict-report.test.mjs` | 24 | why 与 list:判定、理由、环境摘要、自动扫描、分组、共同缺口 | 缺导出判为需要重启;其它失败不误判;多次累积不覆盖 |
66
- | **合计** | **185** | **全部通过** |
65
+ | `test/verdict-report.test.mjs` | 26 | why 与 list:判定、理由、环境摘要、自动扫描、分组、共同缺口与下一步 | 缺导出判为需要重启;其它失败不误判;多次累积不覆盖 |
66
+ | **合计** | **187** | **全部通过** |
67
67
 
68
68
  执行结果:
69
69
 
@@ -214,4 +214,4 @@
214
214
 
215
215
  ### 7.2 分文件执行结果
216
216
 
217
- 31 个测试文件逐个单独执行,每个都有用例且全部通过,不存在因导入失败而静默跳过的文件。用例数分布:compat.test.mjs 17、plugin.test.mjs 15、compat-env.test.mjs 14、classify.test.mjs 13,其余按职能分散,合计 185。
217
+ 31 个测试文件逐个单独执行,每个都有用例且全部通过,不存在因导入失败而静默跳过的文件。用例数分布:compat.test.mjs 17、plugin.test.mjs 15、compat-env.test.mjs 14、classify.test.mjs 13,其余按职能分散,合计 187。
@@ -1,7 +1,7 @@
1
1
  # 软件安装部署说明
2
2
 
3
3
  **产品名称**:request-doctor(请求急救员)
4
- **版本**:0.12.7
4
+ **版本**:0.12.8
5
5
  **编制依据**:GB/T 8567-2006《计算机软件文档编制规范》6.7
6
6
 
7
7
  ---
@@ -1,7 +1,7 @@
1
1
  # 软件用户手册
2
2
 
3
3
  **产品名称**:request-doctor(请求急救员)
4
- **版本**:0.12.7
4
+ **版本**:0.12.8
5
5
  **编制依据**:GB/T 8567-2006《计算机软件文档编制规范》6.5
6
6
 
7
7
  ---
@@ -240,4 +240,12 @@ dsh-hyper-tools@0.1.0:incompatible
240
240
 
241
241
  这种情况修一次能同时解开几个插件,所以值得先处理。
242
242
 
243
+ 需要处理时列表末尾会给一句能照做的事:
244
+
245
+ ```
246
+ 修复会在下一轮扫描时自动尝试;想立刻重试:/doctor install <包名>
247
+ ```
248
+
249
+ 全部兼容时不会出现这句。
250
+
243
251
  列表里只留环境提示的前半句,完整内容用 `/doctor why` 看。
@@ -1,7 +1,7 @@
1
1
  # 软件质量度量报告
2
2
 
3
3
  **产品名称**:request-doctor(请求急救员)
4
- **版本**:0.12.7
4
+ **版本**:0.12.8
5
5
  **度量标准**:GB/T 45717-2025《信息技术 软件测量 软件质量测量 自动化的源代码质量测度》
6
6
  **度量工具**:`tools/quality-measure.mjs`(本仓库自带,可复现)
7
7
 
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "standard": "GB/T 45717-2025 信息技术 软件测量 软件质量测量 自动化的源代码质量测度",
3
- "generatedAt": "2026-10-29T15:45:25.564Z",
3
+ "generatedAt": "2026-10-29T15:49:20.082Z",
4
4
  "scope": {
5
5
  "files": 31,
6
- "totalLines": 5163,
7
- "sourceLines": 3743,
8
- "commentLines": 945
6
+ "totalLines": 5169,
7
+ "sourceLines": 3747,
8
+ "commentLines": 946
9
9
  },
10
10
  "measures": {
11
11
  "commentDensity": 25.25,
12
12
  "duplicationPercent": 4.9,
13
- "functionCount": 392,
13
+ "functionCount": 393,
14
14
  "maxComplexity": 10,
15
15
  "maxFunctionLines": 59,
16
16
  "maxFileLines": 500,
@@ -1,6 +1,9 @@
1
1
  import { linesText } from './text-lines.js';
2
2
 
3
3
  // 已经在扫的时候,告诉用户等一下,而不是报「没有结果」。
4
+ // 有插件需要处理时给出的动作提示。诊断必须配一句能照做的事。
5
+ const NEXT_STEP = '修复会在下一轮扫描时自动尝试;想立刻重试:/doctor install <包名>';
6
+
4
7
  const BUSY_TEXT = '正在扫描,几秒后再执行 /doctor list 就能看到结果。';
5
8
 
6
9
  // 最近一轮审计的清单。没扫过就是空数组。
@@ -85,8 +88,11 @@ export function formatList(deps) {
85
88
  if (fine.length > 0) pushGroup(lines, `可以直接用 ${fine.length} 个`, fine, width);
86
89
 
87
90
  // 几个插件被同一个符号卡住时,修一次能全解开,值得单独点出来。
88
- const gap = gapSummary(broken);
89
- if (gap !== undefined) lines.push('', `先修这个:${gap}`);
91
+ if (broken.length > 0) {
92
+ const gap = gapSummary(broken);
93
+ if (gap !== undefined) lines.push('', `先修这个:${gap}`);
94
+ lines.push('', NEXT_STEP);
95
+ }
90
96
  lines.push('', '用 /doctor why <包名> 看某个插件的完整理由。');
91
97
  return { kind: 'success', text: linesText(lines) };
92
98
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luolingp/request-doctor",
3
- "version": "0.12.7",
3
+ "version": "0.12.8",
4
4
  "description": "自动修复客户端引起的请求失败,并让版本不匹配的 DSH 插件能装上、能跑起来。",
5
5
  "keywords": [
6
6
  "dsh-plugin",