@wuyanbin/ai-code-review-cli-remote 1.3.0 → 1.4.1
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/README.md +82 -0
- package/dist/core/agent-runtime.d.ts +88 -0
- package/dist/core/agent-runtime.d.ts.map +1 -0
- package/dist/core/agent-runtime.js +187 -0
- package/dist/core/agent-runtime.js.map +1 -0
- package/dist/core/cursor-rules.d.ts +20 -2
- package/dist/core/cursor-rules.d.ts.map +1 -1
- package/dist/core/cursor-rules.js +67 -26
- package/dist/core/cursor-rules.js.map +1 -1
- package/dist/core/default-ignore.d.ts +4 -11
- package/dist/core/default-ignore.d.ts.map +1 -1
- package/dist/core/default-ignore.js +34 -8
- package/dist/core/default-ignore.js.map +1 -1
- package/dist/core/incremental.d.ts +15 -4
- package/dist/core/incremental.d.ts.map +1 -1
- package/dist/core/incremental.js +60 -2
- package/dist/core/incremental.js.map +1 -1
- package/dist/core/model.d.ts +8 -0
- package/dist/core/model.d.ts.map +1 -1
- package/dist/core/model.js +19 -1
- package/dist/core/model.js.map +1 -1
- package/dist/core/prompt.d.ts +3 -0
- package/dist/core/prompt.d.ts.map +1 -1
- package/dist/core/prompt.js +24 -15
- package/dist/core/prompt.js.map +1 -1
- package/dist/core/reviewer.d.ts.map +1 -1
- package/dist/core/reviewer.js +3 -1
- package/dist/core/reviewer.js.map +1 -1
- package/dist/core/summarizer.d.ts +4 -1
- package/dist/core/summarizer.d.ts.map +1 -1
- package/dist/core/summarizer.js +4 -2
- package/dist/core/summarizer.js.map +1 -1
- package/dist/core/summary-compose.d.ts +68 -0
- package/dist/core/summary-compose.d.ts.map +1 -0
- package/dist/core/summary-compose.js +205 -0
- package/dist/core/summary-compose.js.map +1 -0
- package/dist/core/verdict.d.ts +39 -2
- package/dist/core/verdict.d.ts.map +1 -1
- package/dist/core/verdict.js +128 -21
- package/dist/core/verdict.js.map +1 -1
- package/dist/core/verification.d.ts +96 -0
- package/dist/core/verification.d.ts.map +1 -0
- package/dist/core/verification.js +363 -0
- package/dist/core/verification.js.map +1 -0
- package/dist/core/verify-tools.d.ts +80 -0
- package/dist/core/verify-tools.d.ts.map +1 -0
- package/dist/core/verify-tools.js +436 -0
- package/dist/core/verify-tools.js.map +1 -0
- package/dist/gitlab/api.d.ts +6 -3
- package/dist/gitlab/api.d.ts.map +1 -1
- package/dist/gitlab/api.js +13 -6
- package/dist/gitlab/api.js.map +1 -1
- package/dist/platform/findings.d.ts +1 -1
- package/dist/platform/findings.d.ts.map +1 -1
- package/dist/platform/findings.js +12 -2
- package/dist/platform/findings.js.map +1 -1
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +79 -19
- package/dist/runner.js.map +1 -1
- package/dist/shared/identity.d.ts +8 -0
- package/dist/shared/identity.d.ts.map +1 -1
- package/dist/shared/identity.js +21 -0
- package/dist/shared/identity.js.map +1 -1
- package/dist/shared/run-budget.d.ts +20 -0
- package/dist/shared/run-budget.d.ts.map +1 -0
- package/dist/shared/run-budget.js +53 -0
- package/dist/shared/run-budget.js.map +1 -0
- package/dist/types.d.ts +31 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -1
package/dist/core/reviewer.js
CHANGED
|
@@ -276,10 +276,12 @@ async function reviewCode(diff, config, options = {}) {
|
|
|
276
276
|
const fileMatches = sensitiveMatches.filter((m) => m.matchType === "file");
|
|
277
277
|
const keywordMatches = sensitiveMatches.filter((m) => m.matchType === "keyword");
|
|
278
278
|
const adapter = (0, model_1.createModelAdapter)(config.ai.endpoint, config.ai.apiKey, config.ai.apiFormat);
|
|
279
|
-
// 合并被审仓库 .cursor/rules
|
|
279
|
+
// 合并被审仓库 .cursor/rules(取自 MR merge-base,不读工作树):按本次改动文件做
|
|
280
|
+
// globs 匹配,全 shard 共用同一份规则。
|
|
280
281
|
const repoRuleStrings = config.useRepoRules
|
|
281
282
|
? (0, cursor_rules_1.renderCursorRules)((0, cursor_rules_1.collectCursorRules)({
|
|
282
283
|
cwd: options.cwd,
|
|
284
|
+
env: options.env,
|
|
283
285
|
changedFiles: (0, diff_1.getChangedFiles)(preliminary.diff),
|
|
284
286
|
}))
|
|
285
287
|
: [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../../src/core/reviewer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../../src/core/reviewer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import type { AIComment, CodeReviewConfig } from "../types";
|
|
2
2
|
/**
|
|
3
3
|
* @param findings 本次评审已产出的评论;让摘要能点出风险而无需重读源码
|
|
4
|
+
* @param options.checklist CLI 已识别的合入前检查项;喂给模型避免重复
|
|
4
5
|
*/
|
|
5
|
-
export declare function generateSummary(diff: string, config: CodeReviewConfig, findings?: AIComment[]
|
|
6
|
+
export declare function generateSummary(diff: string, config: CodeReviewConfig, findings?: AIComment[], options?: {
|
|
7
|
+
checklist?: string[];
|
|
8
|
+
}): Promise<string | null>;
|
|
6
9
|
//# sourceMappingURL=summarizer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summarizer.d.ts","sourceRoot":"","sources":["../../src/core/summarizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AA8B5D
|
|
1
|
+
{"version":3,"file":"summarizer.d.ts","sourceRoot":"","sources":["../../src/core/summarizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AA8B5D;;;GAGG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,gBAAgB,EACxB,QAAQ,GAAE,SAAS,EAAO,EAC1B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GACrC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsBxB"}
|
package/dist/core/summarizer.js
CHANGED
|
@@ -36,8 +36,9 @@ function cleanMarkdownResponse(content) {
|
|
|
36
36
|
}
|
|
37
37
|
/**
|
|
38
38
|
* @param findings 本次评审已产出的评论;让摘要能点出风险而无需重读源码
|
|
39
|
+
* @param options.checklist CLI 已识别的合入前检查项;喂给模型避免重复
|
|
39
40
|
*/
|
|
40
|
-
async function generateSummary(diff, config, findings = []) {
|
|
41
|
+
async function generateSummary(diff, config, findings = [], options = {}) {
|
|
41
42
|
const effectiveDiff = (0, diff_1.filterDiffByIgnore)(diff, config.ignore);
|
|
42
43
|
if (!effectiveDiff.trim())
|
|
43
44
|
return null;
|
|
@@ -47,7 +48,8 @@ async function generateSummary(diff, config, findings = []) {
|
|
|
47
48
|
// 输入是文件清单与增删统计,不是整份 diff:摘要调用的体量与 diff 总量解耦
|
|
48
49
|
const prompt = new prompt_1.SummaryPromptBuilder()
|
|
49
50
|
.setDigest((0, diff_1.summarizeDiffFiles)(effectiveDiff))
|
|
50
|
-
.setFindings(findings)
|
|
51
|
+
.setFindings(findings)
|
|
52
|
+
.setChecklist(options.checklist ?? []);
|
|
51
53
|
const raw = await adapter.call(config.ai.model, prompt.buildSystem(), prompt.buildUser(), { purpose: "summary" });
|
|
52
54
|
return raw ? cleanMarkdownResponse(raw) : null;
|
|
53
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summarizer.js","sourceRoot":"","sources":["../../src/core/summarizer.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"summarizer.js","sourceRoot":"","sources":["../../src/core/summarizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { ReconcileResult } from "./incremental";
|
|
2
|
+
/**
|
|
3
|
+
* MR 摘要的「整合布局」(2026-10-21 用户拍板):
|
|
4
|
+
* - 头部一行评审范围(首轮 / 增量 + commit 区间 + 变更规模 + 送审文件数),增量运行再加一行相对上次的变化;
|
|
5
|
+
* - 行级问题只出现一次且只由 CLI 生成(P0 列表 / P1 汇总),模型不复述;
|
|
6
|
+
* - 模型输出只保留「概述」「主要变更」「合入前检查项」,「受影响文件」表去掉(GitLab Changes 页更准);
|
|
7
|
+
* - 「合入前检查项」= CLI 按文件路径识别的确定项 + 模型补充的横切风险;「主要变更」折叠。
|
|
8
|
+
* 段落顺序:结论与计数 → 范围 / 较上次 → 概述 → 需修复的 P0 → P1 提示 → 合入前检查项 → 主要变更。
|
|
9
|
+
*/
|
|
10
|
+
export interface ReviewScopeInfo {
|
|
11
|
+
/** baseline = 首轮全量;incremental = 平台已有 lastReviewedSha;stateless = 平台快照不可用 */
|
|
12
|
+
mode: "baseline" | "incremental" | "stateless";
|
|
13
|
+
/** 上次评审到的 commit(增量运行) */
|
|
14
|
+
fromSha?: string | null;
|
|
15
|
+
/** 本次流水线 head */
|
|
16
|
+
toSha?: string | null;
|
|
17
|
+
/** 整份 MR diff 的文件数与增删行(含被忽略的文件) */
|
|
18
|
+
changedFiles: number;
|
|
19
|
+
added: number;
|
|
20
|
+
removed: number;
|
|
21
|
+
/** 实际送审的文件数(coverage.reviewedFiles) */
|
|
22
|
+
reviewedFiles?: number;
|
|
23
|
+
}
|
|
24
|
+
/** 相对上次评审的 finding 变化(只在增量运行展示) */
|
|
25
|
+
export interface ReviewDeltaInfo {
|
|
26
|
+
new: number;
|
|
27
|
+
fixed: number;
|
|
28
|
+
open: number;
|
|
29
|
+
wontFix: number;
|
|
30
|
+
}
|
|
31
|
+
/** 行级条目的链接基址:GitLab 项目地址 + 本次评审的 commit,缺任一则退化为纯文本 */
|
|
32
|
+
export interface SummaryLinkBase {
|
|
33
|
+
projectUrl?: string | null;
|
|
34
|
+
sha?: string | null;
|
|
35
|
+
}
|
|
36
|
+
export declare function shortSha(sha: string | null | undefined): string | null;
|
|
37
|
+
export declare function buildScopeLine(scope: ReviewScopeInfo): string;
|
|
38
|
+
export declare function buildDeltaLine(delta: ReviewDeltaInfo): string;
|
|
39
|
+
/**
|
|
40
|
+
* 从对账统计派生「相对上次」:
|
|
41
|
+
* - 新增 = 本次新建 − 验证排除(排除的不发布、另有「验证排除 N 条」说明)
|
|
42
|
+
* - 修复 = fixed − severity 迁移(迁移是换键,不是修复)
|
|
43
|
+
* - 仍待处理 = 保活的已知 finding − 复核判定已修复的
|
|
44
|
+
*/
|
|
45
|
+
export declare function buildReviewDelta(stats: ReconcileResult["stats"]): ReviewDeltaInfo;
|
|
46
|
+
/** `file:line`,能拼出 blob 链接时指向本次评审 commit 上的那一行 */
|
|
47
|
+
export declare function fileRef(file: string, line: number, links?: SummaryLinkBase): string;
|
|
48
|
+
/** 按文件收集 diff 里的新增行(不含 `+++` 头),只用于迁移文件的风险判断 */
|
|
49
|
+
export declare function addedLinesByFile(diff: string): Map<string, string[]>;
|
|
50
|
+
/**
|
|
51
|
+
* 从变更文件清单识别需要人工确认的合入 / 发布事项。规则跨语言、只看路径(迁移文件另看新增行),
|
|
52
|
+
* 结果稳定可测;模型只在这之上补充判断性的条目。
|
|
53
|
+
*/
|
|
54
|
+
export declare function detectMergeChecklist(files: string[], diff?: string): string[];
|
|
55
|
+
/** 模型写的检查项规整为「- 」列表;写「无」视为空 */
|
|
56
|
+
export declare function normalizeChecklistItems(body: string | null): string[];
|
|
57
|
+
/** 模型摘要的解析结果:概述、折叠展示的主要变更、规整后的检查项 */
|
|
58
|
+
export interface ModelSummary {
|
|
59
|
+
overview: string | null;
|
|
60
|
+
changes: string | null;
|
|
61
|
+
/** 已规整为「- 」列表的模型补充检查项;模型写「无」为空 */
|
|
62
|
+
checklist: string[];
|
|
63
|
+
/** 是否按约定结构解析成功;失败时整段当概述保留,不丢内容 */
|
|
64
|
+
recognized: boolean;
|
|
65
|
+
}
|
|
66
|
+
/** 按二级标题拆模型输出;「受影响文件」段丢弃;空输出返回 null */
|
|
67
|
+
export declare function parseModelSummary(markdown: string | null | undefined): ModelSummary | null;
|
|
68
|
+
//# sourceMappingURL=summary-compose.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"summary-compose.d.ts","sourceRoot":"","sources":["../../src/core/summary-compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD;;;;;;;GAOG;AAEH,MAAM,WAAW,eAAe;IAC9B,6EAA6E;IAC7E,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,WAAW,CAAC;IAC/C,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,mCAAmC;AACnC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGtE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CAe7D;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CAI7D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,eAAe,CAQjF;AAED,kDAAkD;AAClD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,eAAe,GAAG,MAAM,CAMnF;AAuBD,gDAAgD;AAChD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAgBpE;AAOD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,SAAK,GAAG,MAAM,EAAE,CAyBzE;AA6CD,+BAA+B;AAC/B,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,EAAE,CAiBrE;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,kCAAkC;IAClC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,kCAAkC;IAClC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,uCAAuC;AACvC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,GAAG,IAAI,CAa1F"}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.shortSha = shortSha;
|
|
4
|
+
exports.buildScopeLine = buildScopeLine;
|
|
5
|
+
exports.buildDeltaLine = buildDeltaLine;
|
|
6
|
+
exports.buildReviewDelta = buildReviewDelta;
|
|
7
|
+
exports.fileRef = fileRef;
|
|
8
|
+
exports.addedLinesByFile = addedLinesByFile;
|
|
9
|
+
exports.detectMergeChecklist = detectMergeChecklist;
|
|
10
|
+
exports.normalizeChecklistItems = normalizeChecklistItems;
|
|
11
|
+
exports.parseModelSummary = parseModelSummary;
|
|
12
|
+
function shortSha(sha) {
|
|
13
|
+
const trimmed = sha?.trim();
|
|
14
|
+
return trimmed ? trimmed.slice(0, 8) : null;
|
|
15
|
+
}
|
|
16
|
+
function buildScopeLine(scope) {
|
|
17
|
+
const to = shortSha(scope.toSha);
|
|
18
|
+
const from = shortSha(scope.fromSha);
|
|
19
|
+
let range;
|
|
20
|
+
if (scope.mode === "incremental" && from) {
|
|
21
|
+
range = `增量评审 ${from} → ${to ?? "HEAD"}`;
|
|
22
|
+
}
|
|
23
|
+
else if (scope.mode === "baseline") {
|
|
24
|
+
range = to ? `首轮评审(至 ${to})` : "首轮评审";
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
range = to ? `评审(至 ${to},未对接平台历史)` : "评审(未对接平台历史)";
|
|
28
|
+
}
|
|
29
|
+
const size = `变更 ${scope.changedFiles} 个文件(+${scope.added} / −${scope.removed})`;
|
|
30
|
+
const reviewed = typeof scope.reviewedFiles === "number" ? `,送审 ${scope.reviewedFiles} 个` : "";
|
|
31
|
+
return `${range} · ${size}${reviewed}`;
|
|
32
|
+
}
|
|
33
|
+
function buildDeltaLine(delta) {
|
|
34
|
+
const parts = [`修复 ${delta.fixed}`, `新增 ${delta.new}`, `待处理 ${delta.open}`];
|
|
35
|
+
if (delta.wontFix > 0)
|
|
36
|
+
parts.push(`人工驳回 ${delta.wontFix}`);
|
|
37
|
+
return `较上次:${parts.join(" · ")}`;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* 从对账统计派生「相对上次」:
|
|
41
|
+
* - 新增 = 本次新建 − 验证排除(排除的不发布、另有「验证排除 N 条」说明)
|
|
42
|
+
* - 修复 = fixed − severity 迁移(迁移是换键,不是修复)
|
|
43
|
+
* - 仍待处理 = 保活的已知 finding − 复核判定已修复的
|
|
44
|
+
*/
|
|
45
|
+
function buildReviewDelta(stats) {
|
|
46
|
+
const nonNegative = (n) => (n > 0 ? n : 0);
|
|
47
|
+
return {
|
|
48
|
+
new: nonNegative(stats.new - stats.suppressed),
|
|
49
|
+
fixed: nonNegative(stats.fixed - stats.severityMigrated),
|
|
50
|
+
open: nonNegative(stats.kept - stats.revalidatedFixed),
|
|
51
|
+
wontFix: stats.wontFix,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/** `file:line`,能拼出 blob 链接时指向本次评审 commit 上的那一行 */
|
|
55
|
+
function fileRef(file, line, links) {
|
|
56
|
+
const label = `\`${file}:${line}\``;
|
|
57
|
+
const base = links?.projectUrl?.trim().replace(/\/+$/, "");
|
|
58
|
+
const sha = links?.sha?.trim();
|
|
59
|
+
if (!base || !sha)
|
|
60
|
+
return label;
|
|
61
|
+
return `[${label}](${base}/-/blob/${sha}/${encodeURI(file)}#L${line})`;
|
|
62
|
+
}
|
|
63
|
+
// ───────────────────────── 合入前检查项(确定性规则) ─────────────────────────
|
|
64
|
+
const MIGRATION_DIR_RE = /(^|\/)(migrations?|db\/migrate|flyway|liquibase)\//i;
|
|
65
|
+
const MIGRATION_FILE_RE = /\.(sql|ts|js|mjs|cjs|py|rb|xml|ya?ml|kt|java|go)$/i;
|
|
66
|
+
const DATA_MODEL_RE = /(^|\/)schema\.prisma$/;
|
|
67
|
+
const CI_RE = /(^|\/)(\.gitlab-ci\.ya?ml|\.gitlab\/.*|ci-templates\/.*|Jenkinsfile[^/]*|\.github\/workflows\/.*|\.circleci\/.*)$/;
|
|
68
|
+
const DEPS_RE = /(^|\/)(package\.json|package-lock\.json|pnpm-lock\.yaml|yarn\.lock|go\.mod|go\.sum|pom\.xml|build\.gradle(\.kts)?|settings\.gradle(\.kts)?|gradle\/libs\.versions\.toml|Podfile|Podfile\.lock|Package\.swift|Package\.resolved|Cartfile(\.resolved)?|requirements[^/]*\.txt|pyproject\.toml|poetry\.lock|Cargo\.toml|Cargo\.lock|Gemfile(\.lock)?|composer\.(json|lock))$/;
|
|
69
|
+
const DEPLOY_RE = /(^|\/)(\.env(\.[^/]+)?|Dockerfile[^/]*|docker-compose[^/]*\.ya?ml|(k8s|kubernetes|helm|deploy|deployment)\/.*)$/i;
|
|
70
|
+
const CONTRACT_RE = /(^|\/)(openapi[^/]*\.(ya?ml|json)|swagger[^/]*\.(ya?ml|json)|[^/]*\.proto|schema\.graphql|openspec\/specs\/.*)$/i;
|
|
71
|
+
/** 存量数据修改或破坏性 DDL:这些迁移不能只靠「再跑一次」回滚 */
|
|
72
|
+
const DATA_CHANGE_RE = /\b(UPDATE\s+\S+\s+SET|DELETE\s+FROM|TRUNCATE\s+(TABLE\s+)?\S+|DROP\s+(TABLE|COLUMN|INDEX)|ALTER\s+TABLE\s+\S+\s+(DROP|MODIFY|CHANGE|RENAME))\b/i;
|
|
73
|
+
function isMigrationFile(file) {
|
|
74
|
+
return (MIGRATION_DIR_RE.test(file) && MIGRATION_FILE_RE.test(file)) || DATA_MODEL_RE.test(file);
|
|
75
|
+
}
|
|
76
|
+
/** 按文件收集 diff 里的新增行(不含 `+++` 头),只用于迁移文件的风险判断 */
|
|
77
|
+
function addedLinesByFile(diff) {
|
|
78
|
+
const out = new Map();
|
|
79
|
+
let current = null;
|
|
80
|
+
for (const line of diff.split("\n")) {
|
|
81
|
+
const header = /^diff --git a\/(.+?) b\/(.+)$/.exec(line);
|
|
82
|
+
if (header) {
|
|
83
|
+
current = header[2];
|
|
84
|
+
if (!out.has(current))
|
|
85
|
+
out.set(current, []);
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
if (!current)
|
|
89
|
+
continue;
|
|
90
|
+
if (line.startsWith("+") && !line.startsWith("+++")) {
|
|
91
|
+
out.get(current).push(line.slice(1));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return out;
|
|
95
|
+
}
|
|
96
|
+
function listFiles(files, max = 3) {
|
|
97
|
+
const shown = files.slice(0, max).map((f) => `\`${f}\``);
|
|
98
|
+
return files.length > max ? `${shown.join("、")} 等 ${files.length} 个` : shown.join("、");
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* 从变更文件清单识别需要人工确认的合入 / 发布事项。规则跨语言、只看路径(迁移文件另看新增行),
|
|
102
|
+
* 结果稳定可测;模型只在这之上补充判断性的条目。
|
|
103
|
+
*/
|
|
104
|
+
function detectMergeChecklist(files, diff = "") {
|
|
105
|
+
const items = [];
|
|
106
|
+
const unique = [...new Set(files)];
|
|
107
|
+
const migrations = unique.filter(isMigrationFile);
|
|
108
|
+
if (migrations.length > 0) {
|
|
109
|
+
const added = addedLinesByFile(diff);
|
|
110
|
+
const risky = migrations.some((f) => (added.get(f) ?? []).some((line) => DATA_CHANGE_RE.test(line)));
|
|
111
|
+
items.push(`数据库迁移 / 数据模型变更:${listFiles(migrations)}${risky ? ";含存量数据修改或破坏性 DDL,确认可回滚与上线顺序" : ""}`);
|
|
112
|
+
}
|
|
113
|
+
const ci = unique.filter((f) => CI_RE.test(f));
|
|
114
|
+
if (ci.length > 0)
|
|
115
|
+
items.push(`CI / 流水线配置变更:${listFiles(ci)}`);
|
|
116
|
+
const deps = unique.filter((f) => DEPS_RE.test(f));
|
|
117
|
+
if (deps.length > 0)
|
|
118
|
+
items.push(`依赖变更:${listFiles(deps)}`);
|
|
119
|
+
const deploy = unique.filter((f) => DEPLOY_RE.test(f));
|
|
120
|
+
if (deploy.length > 0)
|
|
121
|
+
items.push(`部署 / 环境配置变更:${listFiles(deploy)}`);
|
|
122
|
+
const contracts = unique.filter((f) => CONTRACT_RE.test(f));
|
|
123
|
+
if (contracts.length > 0)
|
|
124
|
+
items.push(`接口契约 / 规格变更:${listFiles(contracts)}`);
|
|
125
|
+
return items;
|
|
126
|
+
}
|
|
127
|
+
function normalizeTitle(raw) {
|
|
128
|
+
return raw.replace(/^[^\p{L}\p{N}]+/u, "").trim();
|
|
129
|
+
}
|
|
130
|
+
/** 只按二级标题切分;三级标题属于所在段落的正文 */
|
|
131
|
+
function splitSections(markdown) {
|
|
132
|
+
const result = { overview: null, changes: null, checklist: null, recognized: false };
|
|
133
|
+
let currentKey = null;
|
|
134
|
+
const buffers = { overview: [], changes: [], checklist: [] };
|
|
135
|
+
for (const line of markdown.split("\n")) {
|
|
136
|
+
const heading = /^##\s+(.+?)\s*$/.exec(line);
|
|
137
|
+
if (heading) {
|
|
138
|
+
const title = normalizeTitle(heading[1]);
|
|
139
|
+
if (title.includes("概述"))
|
|
140
|
+
currentKey = "overview";
|
|
141
|
+
else if (title.includes("主要变更"))
|
|
142
|
+
currentKey = "changes";
|
|
143
|
+
else if (title.includes("合入前检查项") || title.includes("注意事项"))
|
|
144
|
+
currentKey = "checklist";
|
|
145
|
+
else
|
|
146
|
+
currentKey = "ignored";
|
|
147
|
+
if (currentKey !== "ignored")
|
|
148
|
+
result.recognized = true;
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
if (currentKey && currentKey !== "ignored")
|
|
152
|
+
buffers[currentKey].push(line);
|
|
153
|
+
}
|
|
154
|
+
const body = (lines) => {
|
|
155
|
+
const text = lines.join("\n").trim();
|
|
156
|
+
return text ? text : null;
|
|
157
|
+
};
|
|
158
|
+
result.overview = body(buffers.overview);
|
|
159
|
+
result.changes = body(buffers.changes);
|
|
160
|
+
result.checklist = body(buffers.checklist);
|
|
161
|
+
return result;
|
|
162
|
+
}
|
|
163
|
+
const EMPTY_CHECKLIST_RE = /^[\s\-*•]*(无|没有|无。|none|n\/a)[\s。.]*$/i;
|
|
164
|
+
/** 模型写的检查项规整为「- 」列表;写「无」视为空 */
|
|
165
|
+
function normalizeChecklistItems(body) {
|
|
166
|
+
if (!body)
|
|
167
|
+
return [];
|
|
168
|
+
if (EMPTY_CHECKLIST_RE.test(body.trim()))
|
|
169
|
+
return [];
|
|
170
|
+
const items = [];
|
|
171
|
+
for (const raw of body.split("\n")) {
|
|
172
|
+
if (!raw.trim())
|
|
173
|
+
continue;
|
|
174
|
+
const indented = /^\s+[-*•]\s+/.test(raw);
|
|
175
|
+
if (indented) {
|
|
176
|
+
items.push(raw.replace(/^\s+[-*•]\s+/, " - "));
|
|
177
|
+
continue;
|
|
178
|
+
}
|
|
179
|
+
const line = raw.trim();
|
|
180
|
+
if (/^\d+[.、)]\s+/.test(line))
|
|
181
|
+
items.push(`- ${line.replace(/^\d+[.、)]\s+/, "")}`);
|
|
182
|
+
else if (/^[-*•]\s+/.test(line))
|
|
183
|
+
items.push(`- ${line.replace(/^[-*•]\s+/, "")}`);
|
|
184
|
+
else
|
|
185
|
+
items.push(`- ${line}`);
|
|
186
|
+
}
|
|
187
|
+
return items;
|
|
188
|
+
}
|
|
189
|
+
/** 按二级标题拆模型输出;「受影响文件」段丢弃;空输出返回 null */
|
|
190
|
+
function parseModelSummary(markdown) {
|
|
191
|
+
const raw = markdown?.trim() ?? "";
|
|
192
|
+
if (!raw)
|
|
193
|
+
return null;
|
|
194
|
+
const sections = splitSections(raw);
|
|
195
|
+
if (!sections.recognized) {
|
|
196
|
+
return { overview: raw, changes: null, checklist: [], recognized: false };
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
overview: sections.overview,
|
|
200
|
+
changes: sections.changes,
|
|
201
|
+
checklist: normalizeChecklistItems(sections.checklist),
|
|
202
|
+
recognized: true,
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
//# sourceMappingURL=summary-compose.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"summary-compose.js","sourceRoot":"","sources":["../../src/core/summary-compose.ts"],"names":[],"mappings":"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"}
|
package/dist/core/verdict.d.ts
CHANGED
|
@@ -1,8 +1,45 @@
|
|
|
1
1
|
import type { AIComment, Verdict } from "../types";
|
|
2
|
+
import { type ModelSummary, type ReviewDeltaInfo, type ReviewScopeInfo, type SummaryLinkBase } from "./summary-compose";
|
|
2
3
|
export declare function computeVerdict(comments: AIComment[]): Verdict;
|
|
4
|
+
export interface VerdictMarkdownOptions {
|
|
5
|
+
/** 本次新发现、经取证验证未获证实而被排除(SUPPRESSED)的 finding 数 */
|
|
6
|
+
suppressedCount?: number;
|
|
7
|
+
/** 本次 run 预算耗尽,部分候选未验证 */
|
|
8
|
+
verificationIncomplete?: boolean;
|
|
9
|
+
/** 只进摘要、不发行内评论的非 P0 意见(P1 / P2),按文件与行号排序后封顶展示 */
|
|
10
|
+
digestComments?: AIComment[];
|
|
11
|
+
/** 评审范围(首轮 / 增量、commit 区间、变更规模);缺省不渲染 */
|
|
12
|
+
scope?: ReviewScopeInfo;
|
|
13
|
+
/** 相对上次评审的变化;只在增量运行提供 */
|
|
14
|
+
delta?: ReviewDeltaInfo;
|
|
15
|
+
/** 行级条目的 blob 链接基址;缺省为纯文本 `file:line` */
|
|
16
|
+
links?: SummaryLinkBase;
|
|
17
|
+
/** 模型摘要的解析结果;摘要调用失败时为空,概述与主要变更不渲染 */
|
|
18
|
+
summary?: ModelSummary | null;
|
|
19
|
+
/** CLI 按文件路径识别的合入前检查项 */
|
|
20
|
+
checklist?: string[];
|
|
21
|
+
/** 附加段落(覆盖缺口、敏感预警),放在页脚说明之前 */
|
|
22
|
+
appendix?: string[];
|
|
23
|
+
}
|
|
24
|
+
/** 摘要里非 P0 提示的展示上限(用户 2026-10-21 拍板:封顶 10 条) */
|
|
25
|
+
export declare const DIGEST_MAX_ITEMS = 10;
|
|
26
|
+
/** 非 P0 意见只在摘要里汇总:未验证、不发行内评论、不影响准入 */
|
|
27
|
+
export declare function buildDigestSection(comments?: AIComment[], links?: SummaryLinkBase): string[];
|
|
28
|
+
/** 需修复的 P0 按文件 / 行号列出:行内线程之外再给一个可点的入口 */
|
|
29
|
+
export declare function buildBlockingP0Section(comments: AIComment[], links?: SummaryLinkBase): string[];
|
|
30
|
+
/** 发布策略说明:有任何 finding 时在页脚提示一次,让研发知道行内评论为什么只剩 P0 */
|
|
31
|
+
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>";
|
|
32
|
+
/** 验证排除与预算耗尽的提示行;没有可说的返回空数组 */
|
|
33
|
+
export declare function buildVerificationNotes(options?: VerdictMarkdownOptions): string[];
|
|
34
|
+
/** 评审范围与相对上次的变化:结论句之后的引用块;没有 scope 时不渲染 */
|
|
35
|
+
export declare function buildScopeLines(options?: VerdictMarkdownOptions): string[];
|
|
3
36
|
/**
|
|
4
|
-
*
|
|
37
|
+
* 整条摘要 note 的正文(页脚之前的附加段由 options.appendix 传入):
|
|
38
|
+
* 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → P1 提示 → 合入前检查项
|
|
39
|
+
* → 折叠的主要变更 → 附加段 → 发布策略说明。
|
|
40
|
+
*
|
|
41
|
+
* @param comments 合并后的 OPEN 全集(计数口径)
|
|
5
42
|
* @param blockingComments 参与准入判定的子集;省略时等于 comments(无持久化的降级路径)
|
|
6
43
|
*/
|
|
7
|
-
export declare function buildVerdictMarkdown(verdict: Verdict, comments: AIComment[], blockingComments?: AIComment[]): string;
|
|
44
|
+
export declare function buildVerdictMarkdown(verdict: Verdict, comments: AIComment[], blockingComments?: AIComment[], options?: VerdictMarkdownOptions): string;
|
|
8
45
|
//# sourceMappingURL=verdict.d.ts.map
|
|
@@ -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;
|
|
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,EAIL,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;CACrB;AAED,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAYnC,sCAAsC;AACtC,wBAAgB,kBAAkB,CAChC,QAAQ,GAAE,SAAS,EAAO,EAC1B,KAAK,CAAC,EAAE,eAAe,GACtB,MAAM,EAAE,CAcV;AAED,yCAAyC;AACzC,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;AAkCD;;;;;;;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,CAyCR"}
|