@wuyanbin/ai-code-review-cli-remote 1.4.2 → 1.6.0

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 (54) hide show
  1. package/README.md +34 -10
  2. package/dist/core/agent-runtime.d.ts +1 -1
  3. package/dist/core/agent-runtime.d.ts.map +1 -1
  4. package/dist/core/agent-runtime.js +7 -2
  5. package/dist/core/agent-runtime.js.map +1 -1
  6. package/dist/core/incremental.d.ts +24 -0
  7. package/dist/core/incremental.d.ts.map +1 -1
  8. package/dist/core/incremental.js +48 -0
  9. package/dist/core/incremental.js.map +1 -1
  10. package/dist/core/inheritance.d.ts +73 -0
  11. package/dist/core/inheritance.d.ts.map +1 -0
  12. package/dist/core/inheritance.js +293 -0
  13. package/dist/core/inheritance.js.map +1 -0
  14. package/dist/core/model.d.ts.map +1 -1
  15. package/dist/core/model.js +3 -0
  16. package/dist/core/model.js.map +1 -1
  17. package/dist/core/summary-compose.d.ts +15 -0
  18. package/dist/core/summary-compose.d.ts.map +1 -1
  19. package/dist/core/summary-compose.js +16 -1
  20. package/dist/core/summary-compose.js.map +1 -1
  21. package/dist/core/verdict.d.ts +4 -4
  22. package/dist/core/verdict.d.ts.map +1 -1
  23. package/dist/core/verdict.js +23 -13
  24. package/dist/core/verdict.js.map +1 -1
  25. package/dist/gitlab/api.d.ts +40 -4
  26. package/dist/gitlab/api.d.ts.map +1 -1
  27. package/dist/gitlab/api.js +187 -63
  28. package/dist/gitlab/api.js.map +1 -1
  29. package/dist/platform/config.d.ts +4 -1
  30. package/dist/platform/config.d.ts.map +1 -1
  31. package/dist/platform/config.js +22 -5
  32. package/dist/platform/config.js.map +1 -1
  33. package/dist/platform/findings.d.ts +9 -1
  34. package/dist/platform/findings.d.ts.map +1 -1
  35. package/dist/platform/findings.js +72 -3
  36. package/dist/platform/findings.js.map +1 -1
  37. package/dist/platform/report.d.ts +13 -0
  38. package/dist/platform/report.d.ts.map +1 -1
  39. package/dist/platform/report.js +2 -0
  40. package/dist/platform/report.js.map +1 -1
  41. package/dist/runner.d.ts.map +1 -1
  42. package/dist/runner.js +206 -25
  43. package/dist/runner.js.map +1 -1
  44. package/dist/shared/ci-auth.d.ts +14 -0
  45. package/dist/shared/ci-auth.d.ts.map +1 -0
  46. package/dist/shared/ci-auth.js +37 -0
  47. package/dist/shared/ci-auth.js.map +1 -0
  48. package/dist/shared/cli-version.d.ts +9 -0
  49. package/dist/shared/cli-version.d.ts.map +1 -0
  50. package/dist/shared/cli-version.js +46 -0
  51. package/dist/shared/cli-version.js.map +1 -0
  52. package/dist/types.d.ts +29 -3
  53. package/dist/types.d.ts.map +1 -1
  54. package/package.json +1 -1
@@ -0,0 +1,293 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hashDiff = hashDiff;
4
+ exports.compareMajorMinor = compareMajorMinor;
5
+ exports.collectCoveredLines = collectCoveredLines;
6
+ exports.splitDeltaHunks = splitDeltaHunks;
7
+ exports.buildPartialChangeScope = buildPartialChangeScope;
8
+ exports.loadSourceDiff = loadSourceDiff;
9
+ exports.selectInheritedFindings = selectInheritedFindings;
10
+ const node_crypto_1 = require("node:crypto");
11
+ const node_child_process_1 = require("node:child_process");
12
+ const node_util_1 = require("node:util");
13
+ const diff_1 = require("./diff");
14
+ const incremental_1 = require("./incremental");
15
+ const execFileAsync = (0, node_util_1.promisify)(node_child_process_1.execFile);
16
+ const GIT_EXEC_OPTIONS = { maxBuffer: 64 * 1024 * 1024 };
17
+ /** git 子进程超时:fetch 可能要拉不共享历史的分支给足 60s,其余 20s;超时按「来源 diff 不可用」退化 */
18
+ const GIT_FETCH_TIMEOUT_MS = 60000;
19
+ const GIT_LOCAL_TIMEOUT_MS = 20000;
20
+ /**
21
+ * 送审 diff 的内容哈希(design D2):丢弃 `index <old>..<new> <mode>` 行(不同 merge-base 下
22
+ * 同一 hunk 的旧 blob 可能不同),去掉行尾 `\r` 与结尾空行,sha1 hex 40 位。
23
+ * 只由 CLI 计算;平台只存储与比较。
24
+ */
25
+ function hashDiff(diff) {
26
+ const lines = diff
27
+ .split("\n")
28
+ .map((line) => (line.endsWith("\r") ? line.slice(0, -1) : line))
29
+ .filter((line) => !/^index [0-9a-f]+\.\.[0-9a-f]+(?: \d+)?$/.test(line));
30
+ while (lines.length > 0 && lines[lines.length - 1] === "")
31
+ lines.pop();
32
+ return (0, node_crypto_1.createHash)("sha1").update(lines.join("\n")).digest("hex");
33
+ }
34
+ /**
35
+ * 只比较主次版本:a < b 负数、相等 0、a > b 正数;任一方解析失败返回 null。
36
+ * 与平台 `compareMajorMinor` 同规则(平台是门槛的裁决方,这里只用于日志与测试)。
37
+ */
38
+ function compareMajorMinor(a, b) {
39
+ const parse = (value) => {
40
+ const match = /^\s*(\d+)\.(\d+)/.exec(value ?? "");
41
+ return match ? [Number(match[1]), Number(match[2])] : null;
42
+ };
43
+ const left = parse(a);
44
+ const right = parse(b);
45
+ if (!left || !right)
46
+ return null;
47
+ return left[0] - right[0] || left[1] - right[1];
48
+ }
49
+ function collectCoveredLines(sourceDiff) {
50
+ const added = new Map();
51
+ const removed = new Map();
52
+ for (const event of (0, diff_1.walkDiff)(sourceDiff)) {
53
+ if ((event.kind !== "add" && event.kind !== "del") || !event.file)
54
+ continue;
55
+ if (event.kind === "add") {
56
+ const bucket = added.get(event.file) ?? new Map();
57
+ bucket.set(event.line, event.content);
58
+ added.set(event.file, bucket);
59
+ }
60
+ else if (event.kind === "del") {
61
+ const bucket = removed.get(event.file) ?? new Map();
62
+ bucket.set(event.content, (bucket.get(event.content) ?? 0) + 1);
63
+ removed.set(event.file, bucket);
64
+ }
65
+ }
66
+ return { added, removed };
67
+ }
68
+ /**
69
+ * 按行划定差集(design D6):遍历本次 diff,保留含未覆盖行的 hunk(文本原样拼回,文件头保留),
70
+ * 全部被覆盖的 hunk 与文件整段丢弃。新增行按新侧行号 + 内容比对;删除行按内容在来源删除集里逐条消耗,
71
+ * 多出的删除(相对 main 删掉、相对 test 没删)同样让 hunk 进差集。hunk 边界按 `@@` 声明的行数预算消费,
72
+ * 与 walkDiff 一致,不靠行前缀猜文件头。
73
+ */
74
+ function splitDeltaHunks(currentDiff, covered) {
75
+ const output = [];
76
+ const uncovered = new Map();
77
+ let reviewedHunks = 0;
78
+ let totalHunks = 0;
79
+ let header = [];
80
+ let headerEmitted = false;
81
+ let file = null;
82
+ let hunk = [];
83
+ let hunkUncovered = [];
84
+ // 删除行按内容消耗来源的删除计数:同一文件同内容多次删除逐次抵扣
85
+ const removedBudget = new Map();
86
+ for (const [f, bucket] of covered.removed)
87
+ removedBudget.set(f, new Map(bucket));
88
+ let newLine = 0;
89
+ let remainingOld = 0;
90
+ let remainingNew = 0;
91
+ const inHunk = () => remainingOld > 0 || remainingNew > 0;
92
+ const flushHunk = () => {
93
+ if (hunk.length === 0)
94
+ return;
95
+ totalHunks += 1;
96
+ if (hunkUncovered.length > 0 && file) {
97
+ if (!headerEmitted) {
98
+ output.push(...header);
99
+ headerEmitted = true;
100
+ }
101
+ output.push(...hunk);
102
+ reviewedHunks += 1;
103
+ const list = uncovered.get(file) ?? [];
104
+ // 删除行与紧随的新增行会标到同一个新侧行号,去重后再记
105
+ list.push(...new Set(hunkUncovered));
106
+ uncovered.set(file, list);
107
+ }
108
+ hunk = [];
109
+ hunkUncovered = [];
110
+ };
111
+ for (const raw of currentDiff.split("\n")) {
112
+ if (!inHunk()) {
113
+ // hunk 预算用尽后紧随的 `` 属于该 hunk,不能落进下一个文件头
114
+ if (raw.startsWith("\\") && hunk.length > 0) {
115
+ hunk.push(raw);
116
+ continue;
117
+ }
118
+ flushHunk();
119
+ if (raw.startsWith("diff --git ")) {
120
+ header = [raw];
121
+ headerEmitted = false;
122
+ file = null;
123
+ const match = /^diff --git a\/(.+?) b\/(.+)$/.exec(raw);
124
+ if (match)
125
+ file = (0, diff_1.normalizePath)(match[2]);
126
+ continue;
127
+ }
128
+ if (raw.startsWith("@@")) {
129
+ const match = /^@@\s+-(\d+)(?:,(\d+))?\s+\+(\d+)(?:,(\d+))?\s+@@/.exec(raw);
130
+ if (!match) {
131
+ header.push(raw);
132
+ continue;
133
+ }
134
+ remainingOld = match[2] === undefined ? 1 : Number(match[2]);
135
+ remainingNew = match[4] === undefined ? 1 : Number(match[4]);
136
+ newLine = Number(match[3]);
137
+ hunk = [raw];
138
+ continue;
139
+ }
140
+ if (raw.startsWith("+++ b/"))
141
+ file = (0, diff_1.normalizePath)(raw.slice("+++ b/".length));
142
+ header.push(raw);
143
+ continue;
144
+ }
145
+ hunk.push(raw);
146
+ if (raw.startsWith("\\"))
147
+ continue;
148
+ if (raw.startsWith("+")) {
149
+ const content = raw.slice(1);
150
+ const coveredContent = file ? covered.added.get(file)?.get(newLine) : undefined;
151
+ if (coveredContent === undefined || coveredContent !== content) {
152
+ hunkUncovered.push(newLine);
153
+ }
154
+ newLine += 1;
155
+ remainingNew -= 1;
156
+ }
157
+ else if (raw.startsWith("-")) {
158
+ const content = raw.slice(1);
159
+ const budget = file ? removedBudget.get(file) : undefined;
160
+ const left = budget?.get(content) ?? 0;
161
+ if (left > 0) {
162
+ budget.set(content, left - 1);
163
+ }
164
+ else {
165
+ // 来源 diff 没删这一行:删除点落在新侧 newLine 之前,用 newLine 标记范围(纯删除 hunk 也能进差集)
166
+ hunkUncovered.push(Math.max(1, newLine));
167
+ }
168
+ remainingOld -= 1;
169
+ }
170
+ else {
171
+ newLine += 1;
172
+ remainingOld -= 1;
173
+ remainingNew -= 1;
174
+ }
175
+ }
176
+ flushHunk();
177
+ return {
178
+ reducedDiff: output.length > 0 ? output.join("\n") : "",
179
+ reviewedHunks,
180
+ uncovered,
181
+ totalHunks,
182
+ };
183
+ }
184
+ /** 把未覆盖行号合并成连续区间(行级,而不是整个 hunk) */
185
+ function toRanges(lines) {
186
+ const sorted = [...new Set(lines)].sort((a, b) => a - b);
187
+ const ranges = [];
188
+ for (const line of sorted) {
189
+ const last = ranges[ranges.length - 1];
190
+ if (last && line === last.end + 1)
191
+ last.end = line;
192
+ else
193
+ ranges.push({ start: line, end: line });
194
+ }
195
+ return ranges;
196
+ }
197
+ /**
198
+ * 部分继承的对账范围:`changedFiles` = 差集 diff 的文件集(差集内新报全部 blocking),
199
+ * `hunks` = 未覆盖行的区间——继承的锚点都是已覆盖行,永远「未触碰」,不会因为同一 hunk
200
+ * 里混着未覆盖行而被判成「修改附近代码已修复」。
201
+ */
202
+ function buildPartialChangeScope(split) {
203
+ const changedFiles = new Set((0, diff_1.getChangedFiles)(split.reducedDiff).map(diff_1.normalizePath));
204
+ const hunks = new Map();
205
+ for (const [file, lines] of split.uncovered) {
206
+ changedFiles.add(file);
207
+ hunks.set(file, toRanges(lines));
208
+ }
209
+ return { changedFiles, hunks };
210
+ }
211
+ /**
212
+ * 来源 MR 的 diff:fetch 来源目标分支后,优先用来源 run 记录的 merge-base(`sourceMergeBaseSha`)
213
+ * 算 `git diff <mb>..HEAD`——来源 MR 合入后分支 tip 已包含 head,按 tip 重算只会得到空 diff;
214
+ * 没有记录或本地不可达时退回 `git merge-base origin/<branch> HEAD`。任一步失败返回原因,
215
+ * 调用方退化为普通首轮。单次 fetch,不做 deepen 循环。
216
+ */
217
+ async function loadSourceDiff(targetBranch, options = {}) {
218
+ const branch = targetBranch.trim();
219
+ if (!branch || /[\s~^:?*[\\]/.test(branch) || branch.startsWith("-")) {
220
+ return { diff: null, reason: "invalid source target branch" };
221
+ }
222
+ const exec = (args, timeout = GIT_LOCAL_TIMEOUT_MS) => execFileAsync("git", args, { ...GIT_EXEC_OPTIONS, cwd: options.cwd, timeout });
223
+ const head = options.headSha?.trim() || "HEAD";
224
+ try {
225
+ await exec(["fetch", "origin", branch, "--quiet"], GIT_FETCH_TIMEOUT_MS);
226
+ }
227
+ catch (error) {
228
+ return { diff: null, reason: `fetch origin/${branch} failed: ${firstLine(error)}` };
229
+ }
230
+ let mergeBase = "";
231
+ let mergeBaseSource = "branch-tip";
232
+ const stored = options.mergeBaseSha?.trim();
233
+ if (stored && /^[0-9a-f]{7,64}$/i.test(stored)) {
234
+ try {
235
+ await exec(["cat-file", "-e", `${stored}^{commit}`]);
236
+ mergeBase = stored;
237
+ mergeBaseSource = "stored";
238
+ }
239
+ catch {
240
+ // 记录的 merge-base 本地不可达(浅克隆 / 历史被改写):退回按分支 tip 计算
241
+ }
242
+ }
243
+ if (!mergeBase) {
244
+ try {
245
+ const { stdout } = await exec(["merge-base", `origin/${branch}`, head]);
246
+ mergeBase = stdout.trim();
247
+ if (!mergeBase)
248
+ return { diff: null, reason: `merge-base with origin/${branch} is empty` };
249
+ }
250
+ catch (error) {
251
+ return { diff: null, reason: `merge-base with origin/${branch} failed: ${firstLine(error)}` };
252
+ }
253
+ }
254
+ try {
255
+ const { stdout } = await exec(["diff", `${mergeBase}..${head}`, "--"]);
256
+ if (!stdout.trim())
257
+ return { diff: null, reason: `source diff is empty (merge-base ${mergeBase.slice(0, 8)} from ${mergeBaseSource})` };
258
+ return { diff: stdout, mergeBase, mergeBaseSource };
259
+ }
260
+ catch (error) {
261
+ return { diff: null, reason: `diff ${mergeBase}..${head} failed: ${firstLine(error)}` };
262
+ }
263
+ }
264
+ function firstLine(error) {
265
+ const text = error instanceof Error ? error.message : String(error);
266
+ return text.split("\n")[0] ?? text;
267
+ }
268
+ /**
269
+ * 继承集筛选:来源 finding 的锚点能在本次 diff 的新增行里精确或唯一定位的才继承
270
+ * (行号取本次定位结果),定位不到的忽略(不写入、不发布)。OPEN / WONT_FIX / SUPPRESSED 都继承,
271
+ * FIXED 等终态平台不会下发。
272
+ */
273
+ function selectInheritedFindings(source, currentDiff) {
274
+ const added = (0, diff_1.collectAddedLines)(currentDiff);
275
+ const inherited = [];
276
+ let dropped = 0;
277
+ for (const finding of source) {
278
+ const anchor = (0, incremental_1.resolveHistoricalAnchor)(added, finding);
279
+ if (anchor.kind === "exact" || anchor.kind === "unique") {
280
+ inherited.push({
281
+ ...finding,
282
+ file: (0, diff_1.normalizePath)(finding.file),
283
+ line: anchor.line,
284
+ code: anchor.code,
285
+ });
286
+ }
287
+ else {
288
+ dropped += 1;
289
+ }
290
+ }
291
+ return { inherited, dropped };
292
+ }
293
+ //# sourceMappingURL=inheritance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inheritance.js","sourceRoot":"","sources":["../../src/core/inheritance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/core/model.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CACF,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAeD,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED,wBAAgB,oBAAoB,IAAI;IACtC,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC7C,CAYA;AAED,iDAAiD;AACjD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAQrE;AA0QD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,gBAAgB,GAC3B,YAAY,CAOd"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/core/model.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGjD,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CACF,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAeD,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED,wBAAgB,oBAAoB,IAAI;IACtC,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC7C,CAYA;AAED,iDAAiD;AACjD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAQrE;AA4QD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,gBAAgB,GAC3B,YAAY,CAOd"}
@@ -8,6 +8,7 @@ const constants_1 = require("../constants");
8
8
  const http_1 = require("../shared/http");
9
9
  const identity_1 = require("../shared/identity");
10
10
  const run_budget_1 = require("../shared/run-budget");
11
+ const ci_auth_1 = require("../shared/ci-auth");
11
12
  // —— run 级用量累计:CLI 单进程只跑一个 run,模块级累计器零侵入调用链 ——
12
13
  const usageByPurpose = new Map();
13
14
  function emptyTotals() {
@@ -84,6 +85,8 @@ class BaseModelAdapter {
84
85
  // 直连上游时被忽略
85
86
  "x-aicr-purpose": purpose,
86
87
  "x-aicr-run-id": (0, identity_1.resolveRunId)(),
88
+ // job 令牌只发给平台网关,直连模型厂商时不附带(见 shared/ci-auth)
89
+ ...(0, ci_auth_1.gatewayJobHeaders)(this.endpoint),
87
90
  ...this.buildHeaders(),
88
91
  },
89
92
  body: JSON.stringify(this.buildBody(model, systemPrompt, userPrompt, options)),
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/core/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/core/model.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,19 @@ export interface ReviewScopeInfo {
20
20
  removed: number;
21
21
  /** 实际送审的文件数(coverage.reviewedFiles) */
22
22
  reviewedFiles?: number;
23
+ /** 跨 MR 继承(同代码整体复用 / 同 head 部分继承);缺省为普通评审 */
24
+ inheritance?: ReviewInheritanceInfo;
25
+ }
26
+ /** 继承运行的摘要标注(2026-10-22 用户拍板文案) */
27
+ export interface ReviewInheritanceInfo {
28
+ mode: "full" | "partial";
29
+ sourceMrIid: string;
30
+ /** 继承的 finding 条数(OPEN / WONT_FIX / SUPPRESSED 合计) */
31
+ inheritedCount: number;
32
+ /** 部分继承时送模型的差集 hunk 数;整体复用为 0 */
33
+ reviewedHunks: number;
34
+ /** 继承的人工驳回条数,大于 0 时摘要追加一行说明 */
35
+ wontFixInherited: number;
23
36
  }
24
37
  /** 相对上次评审的 finding 变化(只在增量运行展示) */
25
38
  export interface ReviewDeltaInfo {
@@ -35,6 +48,8 @@ export interface SummaryLinkBase {
35
48
  }
36
49
  export declare function shortSha(sha: string | null | undefined): string | null;
37
50
  export declare function buildScopeLine(scope: ReviewScopeInfo): string;
51
+ /** 继承的人工驳回说明;没有继承的 WONT_FIX 时返回 null,不渲染 */
52
+ export declare function buildInheritedDismissLine(scope: ReviewScopeInfo): string | null;
38
53
  export declare function buildDeltaLine(delta: ReviewDeltaInfo): string;
39
54
  /**
40
55
  * 从对账统计派生「相对上次」:
@@ -1 +1 @@
1
- {"version":3,"file":"summary-compose.d.ts","sourceRoot":"","sources":["../../src/core/summary-compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary-compose.d.ts","sourceRoot":"","sources":["../../src/core/summary-compose.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.shortSha = shortSha;
4
4
  exports.buildScopeLine = buildScopeLine;
5
+ exports.buildInheritedDismissLine = buildInheritedDismissLine;
5
6
  exports.buildDeltaLine = buildDeltaLine;
6
7
  exports.buildReviewDelta = buildReviewDelta;
7
8
  exports.fileRef = fileRef;
@@ -21,8 +22,15 @@ function shortSha(sha) {
21
22
  function buildScopeLine(scope) {
22
23
  const to = shortSha(scope.toSha);
23
24
  const from = shortSha(scope.fromSha);
25
+ const inheritance = scope.inheritance;
26
+ if (inheritance?.mode === "full") {
27
+ return `结论沿用 MR !${inheritance.sourceMrIid}(同代码)· 本次未调用模型`;
28
+ }
24
29
  let range;
25
- if (scope.mode === "incremental" && from) {
30
+ if (inheritance?.mode === "partial") {
31
+ range = `${to ? `首轮评审(至 ${to})` : "首轮评审"} · 沿用 MR !${inheritance.sourceMrIid} 的 ${inheritance.inheritedCount} 条 finding · 新评审 ${inheritance.reviewedHunks} 个 hunk`;
32
+ }
33
+ else if (scope.mode === "incremental" && from) {
26
34
  range = `增量评审 ${from} → ${to ?? "HEAD"}`;
27
35
  }
28
36
  else if (scope.mode === "baseline") {
@@ -35,6 +43,13 @@ function buildScopeLine(scope) {
35
43
  const reviewed = typeof scope.reviewedFiles === "number" ? `,送审 ${scope.reviewedFiles} 个` : "";
36
44
  return `${range} · ${size}${reviewed}`;
37
45
  }
46
+ /** 继承的人工驳回说明;没有继承的 WONT_FIX 时返回 null,不渲染 */
47
+ function buildInheritedDismissLine(scope) {
48
+ const inheritance = scope.inheritance;
49
+ if (!inheritance || inheritance.wontFixInherited <= 0)
50
+ return null;
51
+ return `沿用 MR !${inheritance.sourceMrIid} 的人工驳回 ${inheritance.wontFixInherited} 条`;
52
+ }
38
53
  function buildDeltaLine(delta) {
39
54
  const parts = [`修复 ${delta.fixed}`, `新增 ${delta.new}`, `待处理 ${delta.open}`];
40
55
  if (delta.wontFix > 0)
@@ -1 +1 @@
1
- {"version":3,"file":"summary-compose.js","sourceRoot":"","sources":["../../src/core/summary-compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary-compose.js","sourceRoot":"","sources":["../../src/core/summary-compose.ts"],"names":[],"mappings":";;AAsDA,4BAGC;AAED,wCAuBC;AAGD,8DAIC;AAED,wCAIC;AAQD,4CAQC;AAGD,0BAMC;AAwBD,4CAgBC;AAGD,8BAKC;AAWD,oDAyBC;AA8CD,0DAiBC;AAaD,8CAaC;AAKD,kCAKC;AAGD,kDAOC;AAGD,wCAKC;AAGD,8BAIC;AAlRD,SAAgB,QAAQ,CAAC,GAA8B;IACrD,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,EAAE,CAAC;IAC5B,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED,SAAgB,cAAc,CAAC,KAAsB;IACnD,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACtC,IAAI,WAAW,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;QACjC,OAAO,YAAY,WAAW,CAAC,WAAW,gBAAgB,CAAC;IAC7D,CAAC;IACD,IAAI,KAAa,CAAC;IAClB,IAAI,WAAW,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QACpC,KAAK,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,aAAa,WAAW,CAAC,WAAW,MAC1E,WAAW,CAAC,cACd,oBAAoB,WAAW,CAAC,aAAa,SAAS,CAAC;IACzD,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,EAAE,CAAC;QAChD,KAAK,GAAG,QAAQ,IAAI,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;IAC3C,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACrC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;IACrD,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,YAAY,SAAS,KAAK,CAAC,KAAK,OAAO,KAAK,CAAC,OAAO,GAAG,CAAC;IACjF,MAAM,QAAQ,GACZ,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,OAAO,GAAG,KAAK,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC;AACzC,CAAC;AAED,4CAA4C;AAC5C,SAAgB,yBAAyB,CAAC,KAAsB;IAC9D,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACtC,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,gBAAgB,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnE,OAAO,UAAU,WAAW,CAAC,WAAW,UAAU,WAAW,CAAC,gBAAgB,IAAI,CAAC;AACrF,CAAC;AAED,SAAgB,cAAc,CAAC,KAAsB;IACnD,MAAM,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5E,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,OAAO,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,KAA+B;IAC9D,MAAM,WAAW,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO;QACL,GAAG,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC;QAC9C,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,gBAAgB,CAAC;QACxD,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,gBAAgB,CAAC;QACtD,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,kDAAkD;AAClD,SAAgB,OAAO,CAAC,IAAY,EAAE,IAAY,EAAE,KAAuB;IACzE,MAAM,KAAK,GAAG,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,GAAG,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,IAAI,KAAK,KAAK,IAAI,WAAW,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC;AACzE,CAAC;AAED,oEAAoE;AAEpE,MAAM,gBAAgB,GAAG,qDAAqD,CAAC;AAC/E,MAAM,iBAAiB,GAAG,oDAAoD,CAAC;AAC/E,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAC9C,MAAM,KAAK,GACT,mHAAmH,CAAC;AACtH,MAAM,OAAO,GACX,2WAA2W,CAAC;AAC9W,MAAM,SAAS,GACb,kHAAkH,CAAC;AACrH,MAAM,WAAW,GACf,kHAAkH,CAAC;AACrH,sCAAsC;AACtC,MAAM,cAAc,GAClB,iJAAiJ,CAAC;AAEpJ,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnG,CAAC;AAED,gDAAgD;AAChD,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoB,CAAC;IACxC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC5C,SAAS;QACX,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,gDAAgD;AAChD,SAAgB,SAAS,CAAC,IAAY;IACpC,MAAM,SAAS,GAAG,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,SAAS,SAAS,CAAC,KAAe,EAAE,GAAG,GAAG,CAAC;IACzC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzF,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,KAAe,EAAE,IAAI,GAAG,EAAE;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAClD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAClC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC/D,CAAC;QACF,KAAK,CAAC,IAAI,CACR,kBAAkB,SAAS,CAAC,UAAU,CAAC,GACrC,KAAK,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAC1C,EAAE,CACH,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC5E,OAAO,KAAK,CAAC;AACf,CAAC;AAWD,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACpD,CAAC;AAED,6BAA6B;AAC7B,SAAS,aAAa,CAAC,QAAgB;IACrC,MAAM,MAAM,GAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACrG,IAAI,UAAU,GAAgE,IAAI,CAAC;IACnF,MAAM,OAAO,GAA6B,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACvF,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,UAAU,GAAG,UAAU,CAAC;iBAC7C,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,UAAU,GAAG,SAAS,CAAC;iBACnD,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,UAAU,GAAG,WAAW,CAAC;;gBACjF,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;YACvD,SAAS;QACX,CAAC;QACD,IAAI,UAAU,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,KAAe,EAAiB,EAAE;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5B,CAAC,CAAC;IACF,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,kBAAkB,GAAG,wCAAwC,CAAC;AAEpE,+BAA+B;AAC/B,SAAgB,uBAAuB,CAAC,IAAmB;IACzD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACpD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YAAE,SAAS;QAC1B,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;YAChD,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;aAC9E,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;;YAC7E,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAYD,uCAAuC;AACvC,SAAgB,iBAAiB,CAAC,QAAmC;IACnE,MAAM,GAAG,GAAG,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAC5E,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,SAAS,EAAE,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC;QACtD,UAAU,EAAE,IAAI;KACjB,CAAC;AACJ,CAAC;AAED,qEAAqE;AAErE,uDAAuD;AACvD,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI;SACR,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;SACtC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,+CAA+C;AAC/C,SAAgB,mBAAmB,CAAC,QAAmC;IACrE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,IAAI,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,yDAAyD;AACzD,SAAgB,cAAc,CAAC,IAAY,EAAE,UAAuB,IAAI,GAAG,EAAE;IAC3E,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3D,OAAO,GAAG,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;AACrC,CAAC;AAED,8BAA8B;AAC9B,SAAgB,SAAS,CAAC,IAA+B;IACvD,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC;IACzB,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC"}
@@ -25,20 +25,20 @@ export interface VerdictMarkdownOptions {
25
25
  }
26
26
  /** 摘要里非 P0 提示的展示上限(用户 2026-10-21 拍板:封顶 10 条) */
27
27
  export declare const DIGEST_MAX_ITEMS = 10;
28
+ /** 发布策略说明:跟在 P1 段标题下;没有 P1 但有 P0 时作为页脚提示一次 */
29
+ export declare const PUBLISH_POLICY_NOTE = "\u2139\uFE0F \u884C\u5185\u8BC4\u8BBA\u53EA\u5305\u542B\u7ECF\u53D6\u8BC1\u9A8C\u8BC1\u7684 P0\uFF1BP1 \u6C47\u603B\u4E8E\u6B64\uFF0C\u4E0D\u53D1\u884C\u5185\u8BC4\u8BBA\u3001\u4E0D\u5F71\u54CD\u5408\u5165\u3002";
28
30
  /** 非 P0 意见只在摘要里汇总:未验证、不发行内评论、不影响准入 */
29
31
  export declare function buildDigestSection(comments?: AIComment[], links?: SummaryLinkBase): string[];
30
32
  /** 需修复的 P0 同样用表格:行内线程之外再给一个可点的入口 */
31
33
  export declare function buildBlockingP0Section(comments: AIComment[], links?: SummaryLinkBase): string[];
32
- /** 发布策略说明:有任何 finding 时在页脚提示一次,让研发知道行内评论为什么只剩 P0 */
33
- export declare const PUBLISH_POLICY_NOTE = "<sub>\u2139\uFE0F \u884C\u5185\u8BC4\u8BBA\u53EA\u5305\u542B\u7ECF\u53D6\u8BC1\u9A8C\u8BC1\u7684 P0\uFF1BP1 \u6C47\u603B\u4E8E\u6B64\uFF0C\u4E0D\u53D1\u884C\u5185\u8BC4\u8BBA\u3001\u4E0D\u5F71\u54CD\u5408\u5165\u3002</sub>";
34
34
  /** 验证排除与预算耗尽的提示行;没有可说的返回空数组 */
35
35
  export declare function buildVerificationNotes(options?: VerdictMarkdownOptions): string[];
36
36
  /** 评审范围与相对上次的变化:结论句之后的引用块;没有 scope 时不渲染 */
37
37
  export declare function buildScopeLines(options?: VerdictMarkdownOptions): string[];
38
38
  /**
39
39
  * 整条摘要 note 的正文(页脚之前的附加段由 options.appendix 传入):
40
- * 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → 主要变更 → P1 提示(折叠)
41
- * → 合入前检查项 → 附加段 → 发布策略说明。
40
+ * 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → 主要变更 → 合入前检查项
41
+ * → 附加段 → P1 提示(最后:标题 + 发布策略说明 + 折叠表格)。
42
42
  *
43
43
  * @param comments 合并后的 OPEN 全集(计数口径)
44
44
  * @param blockingComments 参与准入判定的子集;省略时等于 comments(无持久化的降级路径)
@@ -1 +1 @@
1
- {"version":3,"file":"verdict.d.ts","sourceRoot":"","sources":["../../src/core/verdict.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAG7D;AAED,MAAM,WAAW,sBAAsB;IACrC,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0BAA0B;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,iDAAiD;IACjD,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IAC7B,yCAAyC;IACzC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,yBAAyB;IACzB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,yCAAyC;IACzC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,qCAAqC;IACrC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC9B,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AA+BnC,sCAAsC;AACtC,wBAAgB,kBAAkB,CAChC,QAAQ,GAAE,SAAS,EAAO,EAC1B,KAAK,CAAC,EAAE,eAAe,GACtB,MAAM,EAAE,CAgBV;AAED,oCAAoC;AACpC,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,SAAS,EAAE,EACrB,KAAK,CAAC,EAAE,eAAe,GACtB,MAAM,EAAE,CASV;AAED,oDAAoD;AACpD,eAAO,MAAM,mBAAmB,mOACwB,CAAC;AAEzD,+BAA+B;AAC/B,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,EAAE,CAYrF;AAED,2CAA2C;AAC3C,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,EAAE,CAM9E;AAiCD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,SAAS,EAAE,EACrB,gBAAgB,CAAC,EAAE,SAAS,EAAE,EAC9B,OAAO,GAAE,sBAA2B,GACnC,MAAM,CA0CR"}
1
+ {"version":3,"file":"verdict.d.ts","sourceRoot":"","sources":["../../src/core/verdict.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAML,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAG7D;AAED,MAAM,WAAW,sBAAsB;IACrC,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0BAA0B;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,iDAAiD;IACjD,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IAC7B,yCAAyC;IACzC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,yBAAyB;IACzB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,yCAAyC;IACzC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,qCAAqC;IACrC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC9B,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAkCnC,8CAA8C;AAC9C,eAAO,MAAM,mBAAmB,wNACa,CAAC;AAE9C,sCAAsC;AACtC,wBAAgB,kBAAkB,CAChC,QAAQ,GAAE,SAAS,EAAO,EAC1B,KAAK,CAAC,EAAE,eAAe,GACtB,MAAM,EAAE,CAoBV;AAED,oCAAoC;AACpC,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,SAAS,EAAE,EACrB,KAAK,CAAC,EAAE,eAAe,GACtB,MAAM,EAAE,CASV;AAGD,+BAA+B;AAC/B,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,EAAE,CAYrF;AAED,2CAA2C;AAC3C,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,EAAE,CAQ9E;AAiCD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,SAAS,EAAE,EACrB,gBAAgB,CAAC,EAAE,SAAS,EAAE,EAC9B,OAAO,GAAE,sBAA2B,GACnC,MAAM,CA2CR"}
@@ -30,24 +30,31 @@ function locationCell(c, links) {
30
30
  const url = `${base}/-/blob/${sha}/${encodeURI(c.file)}#L${c.line}`;
31
31
  return `[\`${basename(c.file)}:${c.line}\`](${url} "${c.file}")`;
32
32
  }
33
- /** 位置 / 问题 / 建议 三列表格:文本完整展示(换行转 <br>),不截断 */
33
+ const CONFIDENCE_LABEL = { high: "高", medium: "中", low: "低" };
34
+ /** 位置 / 置信度 / 问题 / 建议 四列表格:文本完整展示(换行转 <br>),不截断 */
34
35
  function buildFindingTable(items, links) {
35
36
  return [
36
- "| 位置 | 问题 | 建议 |",
37
- "|---|---|---|",
38
- ...items.map((c) => `| ${locationCell(c, links)} | ${(0, summary_compose_1.tableCell)(c.message)} | ${(0, summary_compose_1.tableCell)(c.suggestion)} |`),
37
+ "| 位置 | 置信度 | 问题 | 建议 |",
38
+ "|---|---|---|---|",
39
+ ...items.map((c) => `| ${locationCell(c, links)} | ${CONFIDENCE_LABEL[c.confidence ?? ""] ?? "—"} | ${(0, summary_compose_1.tableCell)(c.message)} | ${(0, summary_compose_1.tableCell)(c.suggestion)} |`),
39
40
  ];
40
41
  }
42
+ /** 发布策略说明:跟在 P1 段标题下;没有 P1 但有 P0 时作为页脚提示一次 */
43
+ exports.PUBLISH_POLICY_NOTE = "ℹ️ 行内评论只包含经取证验证的 P0;P1 汇总于此,不发行内评论、不影响合入。";
41
44
  /** 非 P0 意见只在摘要里汇总:未验证、不发行内评论、不影响准入 */
42
45
  function buildDigestSection(comments = [], links) {
43
46
  const items = comments.filter((c) => c.severity !== "P0");
44
47
  if (items.length === 0)
45
48
  return [];
46
49
  const shown = sortByLocation(items).slice(0, exports.DIGEST_MAX_ITEMS);
47
- // P1 不影响合入,整段折叠默认收起;标题里带条数,不展开也能看到规模
50
+ // P1 排在最后、与检查项同级:标题带条数,标题下直接说明发布策略,表格折叠默认收起
48
51
  const lines = [
52
+ `### 🟡 P1 提示 · ${items.length} 条(模型意见,未经取证验证)`,
53
+ "",
54
+ exports.PUBLISH_POLICY_NOTE,
55
+ "",
49
56
  "<details>",
50
- `<summary>🟡 P1 提示 · ${items.length} 条(模型意见,未经取证验证)</summary>`,
57
+ `<summary>展开 ${shown.length} 条</summary>`,
51
58
  "",
52
59
  ...buildFindingTable(shown, links),
53
60
  ];
@@ -69,8 +76,6 @@ function buildBlockingP0Section(comments, links) {
69
76
  "",
70
77
  ];
71
78
  }
72
- /** 发布策略说明:有任何 finding 时在页脚提示一次,让研发知道行内评论为什么只剩 P0 */
73
- exports.PUBLISH_POLICY_NOTE = "<sub>ℹ️ 行内评论只包含经取证验证的 P0;P1 汇总于此,不发行内评论、不影响合入。</sub>";
74
79
  /** 验证排除与预算耗尽的提示行;没有可说的返回空数组 */
75
80
  function buildVerificationNotes(options = {}) {
76
81
  const notes = [];
@@ -90,6 +95,9 @@ function buildScopeLines(options = {}) {
90
95
  const lines = [`> ${(0, summary_compose_1.buildScopeLine)(options.scope)}`];
91
96
  if (options.delta)
92
97
  lines.push(`> ${(0, summary_compose_1.buildDeltaLine)(options.delta)}`);
98
+ const dismissed = (0, summary_compose_1.buildInheritedDismissLine)(options.scope);
99
+ if (dismissed)
100
+ lines.push(`> ${dismissed}`);
93
101
  lines.push("");
94
102
  return lines;
95
103
  }
@@ -119,8 +127,8 @@ function countsSuffix(p0, p1, p2) {
119
127
  }
120
128
  /**
121
129
  * 整条摘要 note 的正文(页脚之前的附加段由 options.appendix 传入):
122
- * 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → 主要变更 → P1 提示(折叠)
123
- * → 合入前检查项 → 附加段 → 发布策略说明。
130
+ * 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → 主要变更 → 合入前检查项
131
+ * → 附加段 → P1 提示(最后:标题 + 发布策略说明 + 折叠表格)。
124
132
  *
125
133
  * @param comments 合并后的 OPEN 全集(计数口径)
126
134
  * @param blockingComments 参与准入判定的子集;省略时等于 comments(无持久化的降级路径)
@@ -157,16 +165,18 @@ function buildVerdictMarkdown(verdict, comments, blockingComments, options = {})
157
165
  parts.push(...buildOverviewSection(options.summary));
158
166
  if (verdict !== "PASSED")
159
167
  parts.push(...buildBlockingP0Section(blocking, options.links));
160
- // 顺序:概述 → 需修复的 P0 → 主要变更(不折叠)→ P1 提示(折叠)→ 合入前检查项
168
+ // 顺序:概述 → 需修复的 P0 → 主要变更 → 合入前检查项 → 附加段 → P1 提示(最后,表格折叠)
161
169
  parts.push(...buildChangesSection(options.summary));
162
- parts.push(...buildDigestSection(options.digestComments, options.links));
163
170
  parts.push(...buildChecklistSection(options.checklist, options.summary, options.checkedItems));
164
171
  for (const section of options.appendix ?? []) {
165
172
  const trimmed = section.trim();
166
173
  if (trimmed)
167
174
  parts.push(trimmed, "");
168
175
  }
169
- if (comments.length > 0)
176
+ const digest = buildDigestSection(options.digestComments, options.links);
177
+ if (digest.length > 0)
178
+ parts.push(...digest);
179
+ else if (comments.length > 0)
170
180
  parts.push(exports.PUBLISH_POLICY_NOTE, "");
171
181
  return parts.join("\n");
172
182
  }