@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.
Files changed (70) hide show
  1. package/README.md +82 -0
  2. package/dist/core/agent-runtime.d.ts +88 -0
  3. package/dist/core/agent-runtime.d.ts.map +1 -0
  4. package/dist/core/agent-runtime.js +187 -0
  5. package/dist/core/agent-runtime.js.map +1 -0
  6. package/dist/core/cursor-rules.d.ts +20 -2
  7. package/dist/core/cursor-rules.d.ts.map +1 -1
  8. package/dist/core/cursor-rules.js +67 -26
  9. package/dist/core/cursor-rules.js.map +1 -1
  10. package/dist/core/default-ignore.d.ts +4 -11
  11. package/dist/core/default-ignore.d.ts.map +1 -1
  12. package/dist/core/default-ignore.js +34 -8
  13. package/dist/core/default-ignore.js.map +1 -1
  14. package/dist/core/incremental.d.ts +15 -4
  15. package/dist/core/incremental.d.ts.map +1 -1
  16. package/dist/core/incremental.js +60 -2
  17. package/dist/core/incremental.js.map +1 -1
  18. package/dist/core/model.d.ts +8 -0
  19. package/dist/core/model.d.ts.map +1 -1
  20. package/dist/core/model.js +19 -1
  21. package/dist/core/model.js.map +1 -1
  22. package/dist/core/prompt.d.ts +3 -0
  23. package/dist/core/prompt.d.ts.map +1 -1
  24. package/dist/core/prompt.js +24 -15
  25. package/dist/core/prompt.js.map +1 -1
  26. package/dist/core/reviewer.d.ts.map +1 -1
  27. package/dist/core/reviewer.js +3 -1
  28. package/dist/core/reviewer.js.map +1 -1
  29. package/dist/core/summarizer.d.ts +4 -1
  30. package/dist/core/summarizer.d.ts.map +1 -1
  31. package/dist/core/summarizer.js +4 -2
  32. package/dist/core/summarizer.js.map +1 -1
  33. package/dist/core/summary-compose.d.ts +68 -0
  34. package/dist/core/summary-compose.d.ts.map +1 -0
  35. package/dist/core/summary-compose.js +205 -0
  36. package/dist/core/summary-compose.js.map +1 -0
  37. package/dist/core/verdict.d.ts +39 -2
  38. package/dist/core/verdict.d.ts.map +1 -1
  39. package/dist/core/verdict.js +128 -21
  40. package/dist/core/verdict.js.map +1 -1
  41. package/dist/core/verification.d.ts +96 -0
  42. package/dist/core/verification.d.ts.map +1 -0
  43. package/dist/core/verification.js +363 -0
  44. package/dist/core/verification.js.map +1 -0
  45. package/dist/core/verify-tools.d.ts +80 -0
  46. package/dist/core/verify-tools.d.ts.map +1 -0
  47. package/dist/core/verify-tools.js +436 -0
  48. package/dist/core/verify-tools.js.map +1 -0
  49. package/dist/gitlab/api.d.ts +6 -3
  50. package/dist/gitlab/api.d.ts.map +1 -1
  51. package/dist/gitlab/api.js +13 -6
  52. package/dist/gitlab/api.js.map +1 -1
  53. package/dist/platform/findings.d.ts +1 -1
  54. package/dist/platform/findings.d.ts.map +1 -1
  55. package/dist/platform/findings.js +12 -2
  56. package/dist/platform/findings.js.map +1 -1
  57. package/dist/runner.d.ts.map +1 -1
  58. package/dist/runner.js +79 -19
  59. package/dist/runner.js.map +1 -1
  60. package/dist/shared/identity.d.ts +8 -0
  61. package/dist/shared/identity.d.ts.map +1 -1
  62. package/dist/shared/identity.js +21 -0
  63. package/dist/shared/identity.js.map +1 -1
  64. package/dist/shared/run-budget.d.ts +20 -0
  65. package/dist/shared/run-budget.d.ts.map +1 -0
  66. package/dist/shared/run-budget.js +53 -0
  67. package/dist/shared/run-budget.js.map +1 -0
  68. package/dist/types.d.ts +31 -3
  69. package/dist/types.d.ts.map +1 -1
  70. package/package.json +2 -1
@@ -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:按本次改动文件做 globs 匹配,全 shard 共用同一份规则。
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[]): Promise<string | null>;
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;;GAEG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,gBAAgB,EACxB,QAAQ,GAAE,SAAS,EAAO,GACzB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAqBxB"}
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"}
@@ -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":"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"}
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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"}
@@ -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
- * @param comments 合并后的 OPEN 全集(表格统计口径)
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;AAEnD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAG7D;AAaD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,SAAS,EAAE,EACrB,gBAAgB,CAAC,EAAE,SAAS,EAAE,GAC7B,MAAM,CAoCR"}
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"}