@wuyanbin/ai-code-review-cli-remote 1.0.27 → 1.0.29
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.
- package/dist/core/context.d.ts.map +1 -1
- package/dist/core/context.js +8 -2
- package/dist/core/context.js.map +1 -1
- package/dist/core/diff.d.ts +22 -0
- package/dist/core/diff.d.ts.map +1 -1
- package/dist/core/diff.js +91 -16
- package/dist/core/diff.js.map +1 -1
- package/dist/core/incremental.d.ts +41 -0
- package/dist/core/incremental.d.ts.map +1 -1
- package/dist/core/incremental.js +285 -68
- package/dist/core/incremental.js.map +1 -1
- package/dist/core/prompt.d.ts.map +1 -1
- package/dist/core/prompt.js +5 -1
- package/dist/core/prompt.js.map +1 -1
- package/dist/core/reviewer.d.ts.map +1 -1
- package/dist/core/reviewer.js +163 -21
- package/dist/core/reviewer.js.map +1 -1
- package/dist/gitlab/api.d.ts +21 -0
- package/dist/gitlab/api.d.ts.map +1 -1
- package/dist/gitlab/api.js +33 -1
- package/dist/gitlab/api.js.map +1 -1
- package/dist/index.js +0 -0
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +32 -12
- package/dist/runner.js.map +1 -1
- package/package.json +4 -3
package/dist/core/incremental.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseIncrementalChangeScope = parseIncrementalChangeScope;
|
|
4
|
+
exports.isLineInChangedHunk = isLineInChangedHunk;
|
|
5
|
+
exports.resolveIncrementalContextLines = resolveIncrementalContextLines;
|
|
6
|
+
exports.loadIncrementalChangeScope = loadIncrementalChangeScope;
|
|
3
7
|
exports.reconcileFindings = reconcileFindings;
|
|
4
8
|
exports.listChangedFiles = listChangedFiles;
|
|
5
9
|
const node_child_process_1 = require("node:child_process");
|
|
@@ -7,6 +11,135 @@ const node_util_1 = require("node:util");
|
|
|
7
11
|
const diff_1 = require("./diff");
|
|
8
12
|
const identity_1 = require("../shared/identity");
|
|
9
13
|
const execFileAsync = (0, node_util_1.promisify)(node_child_process_1.execFile);
|
|
14
|
+
/**
|
|
15
|
+
* 解析 lastReviewedSha..当前评审 head 的 unified diff。hunk header 的新文件范围已经
|
|
16
|
+
* 包含 `--unified=3` 上下文,可直接用作“历史 finding 附近发生修改”的边界。
|
|
17
|
+
*/
|
|
18
|
+
function parseIncrementalChangeScope(diff) {
|
|
19
|
+
const changedFiles = new Set((0, diff_1.getChangedFiles)(diff).map(diff_1.normalizePath));
|
|
20
|
+
const hunks = new Map();
|
|
21
|
+
let currentFile = null;
|
|
22
|
+
for (const raw of diff.split("\n")) {
|
|
23
|
+
if (raw.startsWith("diff --git ")) {
|
|
24
|
+
currentFile = null;
|
|
25
|
+
const match = /^diff --git a\/(.+?) b\/(.+)$/.exec(raw);
|
|
26
|
+
if (match)
|
|
27
|
+
currentFile = (0, diff_1.normalizePath)(match[2]);
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
if (raw.startsWith("+++ b/")) {
|
|
31
|
+
currentFile = (0, diff_1.normalizePath)(raw.slice("+++ b/".length));
|
|
32
|
+
changedFiles.add(currentFile);
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
if (!currentFile || !raw.startsWith("@@"))
|
|
36
|
+
continue;
|
|
37
|
+
const match = /^@@\s+\-\d+(?:,\d+)?\s+\+(\d+)(?:,(\d+))?\s+@@/.exec(raw);
|
|
38
|
+
if (!match)
|
|
39
|
+
continue;
|
|
40
|
+
const start = Number(match[1]);
|
|
41
|
+
const count = match[2] === undefined ? 1 : Number(match[2]);
|
|
42
|
+
if (!Number.isFinite(start) || !Number.isFinite(count) || count < 0) {
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
const ranges = hunks.get(currentFile) ?? [];
|
|
46
|
+
if (count === 0) {
|
|
47
|
+
// 纯删除:新侧无行,删除点位于 start 与 start+1 之间,
|
|
48
|
+
// 取该邻域,使"用删除代码修复"同样算作附近已修改。
|
|
49
|
+
ranges.push({ start: Math.max(1, start), end: start + 1 });
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
ranges.push({ start, end: start + count - 1 });
|
|
53
|
+
}
|
|
54
|
+
hunks.set(currentFile, ranges);
|
|
55
|
+
}
|
|
56
|
+
return { changedFiles, hunks };
|
|
57
|
+
}
|
|
58
|
+
function isLineInChangedHunk(scope, file, line) {
|
|
59
|
+
const ranges = scope.hunks.get((0, diff_1.normalizePath)(file));
|
|
60
|
+
return (ranges?.some((range) => line >= range.start && line <= range.end) ?? false);
|
|
61
|
+
}
|
|
62
|
+
const DEFAULT_INCREMENTAL_CONTEXT = 3;
|
|
63
|
+
const MAX_INCREMENTAL_CONTEXT = 200;
|
|
64
|
+
/**
|
|
65
|
+
* “附近”的上下文半径。默认 3 行;修复常落在锚点更远处的项目可通过
|
|
66
|
+
* `AICR_INCREMENTAL_CONTEXT` 放大,使语义修复更容易被判定为已修改。
|
|
67
|
+
*/
|
|
68
|
+
function resolveIncrementalContextLines(env) {
|
|
69
|
+
const raw = env.AICR_INCREMENTAL_CONTEXT?.trim();
|
|
70
|
+
if (!raw)
|
|
71
|
+
return DEFAULT_INCREMENTAL_CONTEXT;
|
|
72
|
+
const parsed = Number(raw);
|
|
73
|
+
if (!Number.isInteger(parsed) || parsed < 0) {
|
|
74
|
+
return DEFAULT_INCREMENTAL_CONTEXT;
|
|
75
|
+
}
|
|
76
|
+
return Math.min(parsed, MAX_INCREMENTAL_CONTEXT);
|
|
77
|
+
}
|
|
78
|
+
const GIT_EXEC_OPTIONS = { maxBuffer: 10 * 1024 * 1024 };
|
|
79
|
+
async function hasCommit(sha, cwd) {
|
|
80
|
+
try {
|
|
81
|
+
await execFileAsync("git", ["cat-file", "-e", `${sha}^{commit}`], {
|
|
82
|
+
...GIT_EXEC_OPTIONS,
|
|
83
|
+
cwd,
|
|
84
|
+
});
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* 浅克隆(GIT_DEPTH)或 force-push 后 lastReviewedSha 可能不在本地历史中,
|
|
93
|
+
* 此时增量范围会退化为不可用并让已修复 finding 一直保活。先探测,缺失时
|
|
94
|
+
* 逐级加深,仍取不到才放弃。
|
|
95
|
+
*/
|
|
96
|
+
async function ensureCommitAvailable(sha, cwd) {
|
|
97
|
+
if (await hasCommit(sha, cwd))
|
|
98
|
+
return true;
|
|
99
|
+
const attempts = [
|
|
100
|
+
["fetch", "--deepen=200", "--quiet"],
|
|
101
|
+
["fetch", "--unshallow", "--quiet"],
|
|
102
|
+
];
|
|
103
|
+
for (const args of attempts) {
|
|
104
|
+
try {
|
|
105
|
+
await execFileAsync("git", args, { ...GIT_EXEC_OPTIONS, cwd });
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
// 非浅克隆、无远端或无权限时该次加深无意义,继续尝试下一种
|
|
109
|
+
}
|
|
110
|
+
if (await hasCommit(sha, cwd)) {
|
|
111
|
+
console.error(`[findings] deepened local history to reach lastReviewedSha via "git ${args.join(" ")}"`);
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* 加载 sinceSha..HEAD 的文件集合与带上下文 hunk。sha 不存在、force-push、
|
|
119
|
+
* 浅克隆等任何失败均返回 null,由对账层执行保守降级。
|
|
120
|
+
*/
|
|
121
|
+
async function loadIncrementalChangeScope(sinceSha, options = {}) {
|
|
122
|
+
if (!(await ensureCommitAvailable(sinceSha, options.cwd))) {
|
|
123
|
+
console.error(`[findings] incremental diff unavailable: lastReviewedSha ${sinceSha} not reachable locally (shallow clone or force-push), keeping reliable known findings OPEN`);
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
const contextLines = options.contextLines ?? DEFAULT_INCREMENTAL_CONTEXT;
|
|
127
|
+
try {
|
|
128
|
+
const headSha = options.headSha?.trim() || "HEAD";
|
|
129
|
+
const { stdout } = await execFileAsync("git", [
|
|
130
|
+
"diff",
|
|
131
|
+
`--unified=${contextLines}`,
|
|
132
|
+
`${sinceSha}..${headSha}`,
|
|
133
|
+
"--",
|
|
134
|
+
], { ...GIT_EXEC_OPTIONS, cwd: options.cwd });
|
|
135
|
+
return parseIncrementalChangeScope(stdout);
|
|
136
|
+
}
|
|
137
|
+
catch (error) {
|
|
138
|
+
console.error(`[findings] incremental diff unavailable (${error instanceof Error ? error.message.split("\n")[0] : error}), treating all new findings as blocking`);
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
const SEVERITY_RANK = { P0: 2, P1: 1, P2: 0 };
|
|
10
143
|
function codeKey(file, code) {
|
|
11
144
|
const trimmed = code?.trim();
|
|
12
145
|
if (!trimmed)
|
|
@@ -25,6 +158,42 @@ function toComment(finding) {
|
|
|
25
158
|
: {}),
|
|
26
159
|
};
|
|
27
160
|
}
|
|
161
|
+
function resolveHistoricalAnchor(added, finding) {
|
|
162
|
+
const code = finding.code?.trim();
|
|
163
|
+
if (!code)
|
|
164
|
+
return { kind: "missing" };
|
|
165
|
+
const lines = added.get((0, diff_1.normalizePath)(finding.file));
|
|
166
|
+
if (!lines?.length)
|
|
167
|
+
return { kind: "missing" };
|
|
168
|
+
const exact = lines.find((item) => item.line === finding.line);
|
|
169
|
+
if (exact?.content.trim() === code) {
|
|
170
|
+
return { kind: "exact", line: exact.line, code: exact.content };
|
|
171
|
+
}
|
|
172
|
+
const matches = lines.filter((item) => item.content.trim() === code);
|
|
173
|
+
if (matches.length === 1) {
|
|
174
|
+
return {
|
|
175
|
+
kind: "unique",
|
|
176
|
+
line: matches[0].line,
|
|
177
|
+
code: matches[0].content,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
return { kind: matches.length > 1 ? "ambiguous" : "missing" };
|
|
181
|
+
}
|
|
182
|
+
function findingFromComment(comment) {
|
|
183
|
+
return {
|
|
184
|
+
fingerprint: (0, identity_1.buildCommentFingerprint)(comment),
|
|
185
|
+
file: (0, diff_1.normalizePath)(comment.file),
|
|
186
|
+
line: comment.line,
|
|
187
|
+
severity: comment.severity,
|
|
188
|
+
message: comment.message,
|
|
189
|
+
status: "OPEN",
|
|
190
|
+
blocking: true,
|
|
191
|
+
...(comment.code !== undefined ? { code: comment.code } : {}),
|
|
192
|
+
...(comment.suggestion !== undefined
|
|
193
|
+
? { suggestion: comment.suggestion }
|
|
194
|
+
: {}),
|
|
195
|
+
};
|
|
196
|
+
}
|
|
28
197
|
/**
|
|
29
198
|
* 将本次模型输出与已知 finding 集合对账,得到收敛后的状态全集。
|
|
30
199
|
*
|
|
@@ -35,56 +204,83 @@ function toComment(finding) {
|
|
|
35
204
|
*/
|
|
36
205
|
function reconcileFindings(input) {
|
|
37
206
|
const added = (0, diff_1.collectAddedLines)(input.diff);
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
};
|
|
48
|
-
// 模型未返回 code 时从 diff 新增行回填,保证 fingerprint 稳定、下次可比对
|
|
49
|
-
const current = input.current.map((comment) => {
|
|
50
|
-
if (comment.code?.trim())
|
|
51
|
-
return comment;
|
|
52
|
-
const lines = added.get((0, diff_1.normalizePath)(comment.file));
|
|
53
|
-
const hit = lines?.find((item) => item.line === comment.line);
|
|
54
|
-
return hit ? { ...comment, code: hit.content } : comment;
|
|
55
|
-
});
|
|
56
|
-
// 双级索引:fingerprint 精确匹配优先,file+code 兜底(容忍 severity 翻动)
|
|
207
|
+
// 不按行号回填 code:对齐层已保证 accepted 评论携带 diff 真实行内容,
|
|
208
|
+
// 仅凭行号补 code 等于重新引入无证据锚点。
|
|
209
|
+
const current = input.current;
|
|
210
|
+
const anchors = new Map(input.known.map((finding) => [
|
|
211
|
+
finding.fingerprint,
|
|
212
|
+
resolveHistoricalAnchor(added, finding),
|
|
213
|
+
]));
|
|
214
|
+
// 双级索引:fingerprint 精确匹配优先,file+code 只在历史 finding 可唯一
|
|
215
|
+
// 配对时兜底。current 已经过严格新增行对齐,可作为显式复报证据。
|
|
57
216
|
const byFingerprint = new Map();
|
|
58
217
|
const byCode = new Map();
|
|
59
218
|
for (const finding of input.known) {
|
|
60
219
|
byFingerprint.set(finding.fingerprint, finding);
|
|
61
220
|
const key = codeKey(finding.file, finding.code);
|
|
62
|
-
if (key
|
|
63
|
-
byCode.
|
|
221
|
+
if (key) {
|
|
222
|
+
const candidates = byCode.get(key) ?? [];
|
|
223
|
+
candidates.push(finding);
|
|
224
|
+
byCode.set(key, candidates);
|
|
225
|
+
}
|
|
64
226
|
}
|
|
65
227
|
const matchedFingerprints = new Set();
|
|
66
228
|
const matchedCurrent = new Map();
|
|
67
|
-
const
|
|
68
|
-
|
|
229
|
+
const consumed = new Set();
|
|
230
|
+
// 同一 known 只能被一条 current 占位,因此先让高 severity 参与配对:
|
|
231
|
+
// 否则谁占位取决于模型输出顺序,可能静默丢弃更严重的评论。
|
|
232
|
+
const matchOrder = [...current].sort((a, b) => SEVERITY_RANK[b.severity] - SEVERITY_RANK[a.severity]);
|
|
233
|
+
for (const comment of matchOrder) {
|
|
69
234
|
const fingerprint = (0, identity_1.buildCommentFingerprint)(comment);
|
|
70
|
-
const
|
|
71
|
-
|
|
72
|
-
|
|
235
|
+
const exactFingerprint = byFingerprint.get(fingerprint);
|
|
236
|
+
const candidates = exactFingerprint
|
|
237
|
+
? [exactFingerprint]
|
|
238
|
+
: byCode.get(codeKey(comment.file, comment.code) ?? "\0") ?? [];
|
|
239
|
+
const available = candidates.filter((candidate) => !matchedFingerprints.has(candidate.fingerprint));
|
|
240
|
+
const sameLine = available.filter((candidate) => {
|
|
241
|
+
const anchor = anchors.get(candidate.fingerprint);
|
|
242
|
+
return (anchor &&
|
|
243
|
+
(anchor.kind === "exact" || anchor.kind === "unique") &&
|
|
244
|
+
anchor.line === comment.line);
|
|
245
|
+
});
|
|
246
|
+
const match = (exactFingerprint &&
|
|
247
|
+
!matchedFingerprints.has(exactFingerprint.fingerprint)
|
|
248
|
+
? exactFingerprint
|
|
249
|
+
: null) ??
|
|
250
|
+
(sameLine.length === 1 ? sameLine[0] : null) ??
|
|
251
|
+
(available.length === 1 ? available[0] : null);
|
|
73
252
|
if (match) {
|
|
74
253
|
// 同一 known 被多条 current 命中时首条生效,重复项丢弃
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
254
|
+
matchedFingerprints.add(match.fingerprint);
|
|
255
|
+
matchedCurrent.set(match.fingerprint, comment);
|
|
256
|
+
consumed.add(comment);
|
|
79
257
|
}
|
|
80
|
-
else {
|
|
81
|
-
|
|
258
|
+
else if (candidates.length > 0 && available.length === 0) {
|
|
259
|
+
// 同一 known 的重复 current 已被更高 severity 的评论消费。
|
|
260
|
+
consumed.add(comment);
|
|
82
261
|
}
|
|
83
262
|
}
|
|
263
|
+
// 保持模型输出顺序,使同 commit 重跑的 finding 序列稳定
|
|
264
|
+
const newComments = current.filter((comment) => !consumed.has(comment));
|
|
84
265
|
const findings = [];
|
|
85
|
-
const stats = {
|
|
266
|
+
const stats = {
|
|
267
|
+
new: 0,
|
|
268
|
+
kept: 0,
|
|
269
|
+
fixed: 0,
|
|
270
|
+
wontFix: 0,
|
|
271
|
+
dropped: 0,
|
|
272
|
+
keptReported: 0,
|
|
273
|
+
keptUntouched: 0,
|
|
274
|
+
fixedRevalidated: 0,
|
|
275
|
+
fixedMissingAnchor: 0,
|
|
276
|
+
severityMigrated: 0,
|
|
277
|
+
ambiguousAnchor: 0,
|
|
278
|
+
};
|
|
86
279
|
for (const known of input.known) {
|
|
87
280
|
const base = { ...known };
|
|
281
|
+
const anchor = anchors.get(known.fingerprint) ?? { kind: "missing" };
|
|
282
|
+
if (anchor.kind === "ambiguous")
|
|
283
|
+
stats.ambiguousAnchor += 1;
|
|
88
284
|
if (known.status === "WONT_FIX" || input.humanResolved.has(known.fingerprint)) {
|
|
89
285
|
// 人工 dismiss 终态:即使模型再次报告也不复活
|
|
90
286
|
findings.push({ ...base, status: "WONT_FIX" });
|
|
@@ -93,29 +289,73 @@ function reconcileFindings(input) {
|
|
|
93
289
|
}
|
|
94
290
|
const reported = matchedCurrent.get(known.fingerprint);
|
|
95
291
|
if (reported) {
|
|
96
|
-
|
|
292
|
+
const touched = input.changeScope !== null &&
|
|
293
|
+
input.changeScope !== undefined &&
|
|
294
|
+
isLineInChangedHunk(input.changeScope, reported.file, reported.line);
|
|
295
|
+
if (reported.severity !== known.severity && touched) {
|
|
296
|
+
// severity 属于 fingerprint;迁移必须收口旧记录并创建新记录,
|
|
297
|
+
// 不能在旧 fingerprint 下原地改变 severity。
|
|
298
|
+
findings.push({ ...base, status: "FIXED" });
|
|
299
|
+
findings.push(findingFromComment(reported));
|
|
300
|
+
stats.fixed += 1;
|
|
301
|
+
stats.severityMigrated += 1;
|
|
302
|
+
continue;
|
|
303
|
+
}
|
|
304
|
+
if (reported.severity !== known.severity) {
|
|
305
|
+
// 未修改区域的 severity 抖动不覆盖历史状态或文案。
|
|
306
|
+
findings.push({
|
|
307
|
+
...base,
|
|
308
|
+
status: "OPEN",
|
|
309
|
+
file: (0, diff_1.normalizePath)(reported.file),
|
|
310
|
+
line: reported.line,
|
|
311
|
+
...(reported.code !== undefined ? { code: reported.code } : {}),
|
|
312
|
+
});
|
|
313
|
+
stats.kept += 1;
|
|
314
|
+
stats.keptUntouched += 1;
|
|
315
|
+
continue;
|
|
316
|
+
}
|
|
317
|
+
// 同 severity 明确复报:行号、真实 code 与文案取本次可靠结果。
|
|
97
318
|
findings.push({
|
|
98
319
|
...base,
|
|
99
320
|
status: "OPEN",
|
|
321
|
+
file: (0, diff_1.normalizePath)(reported.file),
|
|
100
322
|
line: reported.line,
|
|
323
|
+
...(reported.code !== undefined ? { code: reported.code } : {}),
|
|
101
324
|
message: reported.message,
|
|
102
325
|
...(reported.suggestion !== undefined
|
|
103
326
|
? { suggestion: reported.suggestion }
|
|
104
327
|
: {}),
|
|
105
328
|
});
|
|
106
329
|
stats.kept += 1;
|
|
330
|
+
stats.keptReported += 1;
|
|
107
331
|
continue;
|
|
108
332
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
stats.
|
|
333
|
+
if (anchor.kind === "ambiguous" || anchor.kind === "missing") {
|
|
334
|
+
// 无法可靠定位时不允许任取第一行保活。
|
|
335
|
+
findings.push({ ...base, status: "FIXED" });
|
|
336
|
+
stats.fixed += 1;
|
|
337
|
+
stats.fixedMissingAnchor += 1;
|
|
114
338
|
continue;
|
|
115
339
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
340
|
+
const touched = input.changeScope !== null &&
|
|
341
|
+
input.changeScope !== undefined &&
|
|
342
|
+
isLineInChangedHunk(input.changeScope, known.file, anchor.line);
|
|
343
|
+
if (touched) {
|
|
344
|
+
// 用户修改了锚点附近且模型未复报:按复核结果收口。
|
|
345
|
+
findings.push({ ...base, status: "FIXED" });
|
|
346
|
+
stats.fixed += 1;
|
|
347
|
+
stats.fixedRevalidated += 1;
|
|
348
|
+
continue;
|
|
349
|
+
}
|
|
350
|
+
// 未触碰区域或增量范围未知:保守视为模型漏报并保活。
|
|
351
|
+
findings.push({
|
|
352
|
+
...base,
|
|
353
|
+
status: "OPEN",
|
|
354
|
+
line: anchor.line,
|
|
355
|
+
code: anchor.code,
|
|
356
|
+
});
|
|
357
|
+
stats.kept += 1;
|
|
358
|
+
stats.keptUntouched += 1;
|
|
119
359
|
}
|
|
120
360
|
for (const comment of newComments) {
|
|
121
361
|
const file = (0, diff_1.normalizePath)(comment.file);
|
|
@@ -127,19 +367,7 @@ function reconcileFindings(input) {
|
|
|
127
367
|
stats.dropped += 1;
|
|
128
368
|
continue;
|
|
129
369
|
}
|
|
130
|
-
findings.push({
|
|
131
|
-
fingerprint: (0, identity_1.buildCommentFingerprint)(comment),
|
|
132
|
-
file,
|
|
133
|
-
line: comment.line,
|
|
134
|
-
severity: comment.severity,
|
|
135
|
-
message: comment.message,
|
|
136
|
-
status: "OPEN",
|
|
137
|
-
blocking: true,
|
|
138
|
-
...(comment.code !== undefined ? { code: comment.code } : {}),
|
|
139
|
-
...(comment.suggestion !== undefined
|
|
140
|
-
? { suggestion: comment.suggestion }
|
|
141
|
-
: {}),
|
|
142
|
-
});
|
|
370
|
+
findings.push(findingFromComment({ ...comment, file }));
|
|
143
371
|
stats.new += 1;
|
|
144
372
|
}
|
|
145
373
|
const open = findings
|
|
@@ -157,18 +385,7 @@ function reconcileFindings(input) {
|
|
|
157
385
|
* sha 不存在(force-push / 浅克隆)等任何失败都返回 null,由调用方按全量 blocking 处理。
|
|
158
386
|
*/
|
|
159
387
|
async function listChangedFiles(sinceSha, options = {}) {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
const files = stdout
|
|
163
|
-
.split("\n")
|
|
164
|
-
.map((line) => line.trim())
|
|
165
|
-
.filter(Boolean)
|
|
166
|
-
.map(diff_1.normalizePath);
|
|
167
|
-
return new Set(files);
|
|
168
|
-
}
|
|
169
|
-
catch (error) {
|
|
170
|
-
console.error(`[findings] incremental diff unavailable (${error instanceof Error ? error.message.split("\n")[0] : error}), treating all new findings as blocking`);
|
|
171
|
-
return null;
|
|
172
|
-
}
|
|
388
|
+
const scope = await loadIncrementalChangeScope(sinceSha, options);
|
|
389
|
+
return scope?.changedFiles ?? null;
|
|
173
390
|
}
|
|
174
391
|
//# sourceMappingURL=incremental.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incremental.js","sourceRoot":"","sources":["../../src/core/incremental.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"incremental.js","sourceRoot":"","sources":["../../src/core/incremental.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/core/prompt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAUlD,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,gBAAgB,CAAwB;IAEhD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,mDAAmD;IACnD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAKvC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAKpD,WAAW,IAAI,MAAM;IAIrB,SAAS,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/core/prompt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAUlD,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,gBAAgB,CAAwB;IAEhD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAKhC,mDAAmD;IACnD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAKvC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAKpD,WAAW,IAAI,MAAM;IAIrB,SAAS,IAAI,MAAM;CA0DpB;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,IAAI,CAAM;IAElB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B,WAAW,IAAI,MAAM;IAQrB,SAAS,IAAI,MAAM;CAoBpB"}
|
package/dist/core/prompt.js
CHANGED
|
@@ -52,7 +52,11 @@ class PromptBuilder {
|
|
|
52
52
|
"- P1 (Major): 性能隐患、违反团队核心规范、严重的冗余代码。建议修复。",
|
|
53
53
|
"- P2 (Minor): 代码风格优化、命名建议、更优雅的语法糖实现。参考即可,不强制。",
|
|
54
54
|
"",
|
|
55
|
-
"注意:severity 只能是 P0 / P1 / P2;file 必须使用 diff
|
|
55
|
+
"注意:severity 只能是 P0 / P1 / P2;file 必须使用 diff 中出现的路径;只能评论新增行。",
|
|
56
|
+
"line 必须是 new file(+ 侧)的真实行号。",
|
|
57
|
+
"每条评论的 code 必填;line 与 code 必须从可评论行索引原样复制,并共同指向同一行。",
|
|
58
|
+
"code 只填该行源码本身,不要带 diff 的 +/- 前缀、行号、竖线分隔符,也不要带 [ADD] / [CTX] / [file:line] 前缀。",
|
|
59
|
+
"审查上下文中的 [ADD] 行是新增行,[CTX] 行仅用于理解,禁止作为评论目标。",
|
|
56
60
|
"",
|
|
57
61
|
"可评论行索引:",
|
|
58
62
|
(0, diff_1.buildAddedLinesIndexText)(this.diff),
|
package/dist/core/prompt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/core/prompt.ts"],"names":[],"mappings":";;;AAAA,iCAAkD;AAGlD,MAAM,YAAY,GAAG;IACnB,0CAA0C;IAC1C,aAAa;IACb,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;CACd,CAAC;AAEF,MAAa,aAAa;IAA1B;QACU,SAAI,GAAG,EAAE,CAAC;QACV,UAAK,GAAa,EAAE,CAAC;QACrB,cAAS,GAAa,EAAE,CAAC;QACzB,YAAO,GAAG,EAAE,CAAC;QACb,qBAAgB,GAAqB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/core/prompt.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewer.d.ts","sourceRoot":"","sources":["../../src/core/reviewer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,UAAU,EACV,gBAAgB,EAEjB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"reviewer.d.ts","sourceRoot":"","sources":["../../src/core/reviewer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,UAAU,EACV,gBAAgB,EAEjB,MAAM,UAAU,CAAC;AAuBlB,8CAA8C;AAC9C,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAiPxC,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAO,GACtD,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAmO5B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,UAAU,EAAE,EACvB,WAAW,EAAE,MAAM,GAClB,UAAU,CAmCZ"}
|