@wuyanbin/ai-code-review-cli-remote 1.4.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.
@@ -1,4 +1,5 @@
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;
3
4
  export interface VerdictMarkdownOptions {
4
5
  /** 本次新发现、经取证验证未获证实而被排除(SUPPRESSED)的 finding 数 */
@@ -7,19 +8,38 @@ export interface VerdictMarkdownOptions {
7
8
  verificationIncomplete?: boolean;
8
9
  /** 只进摘要、不发行内评论的非 P0 意见(P1 / P2),按文件与行号排序后封顶展示 */
9
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[];
10
23
  }
11
24
  /** 摘要里非 P0 提示的展示上限(用户 2026-10-21 拍板:封顶 10 条) */
12
25
  export declare const DIGEST_MAX_ITEMS = 10;
13
26
  /** 非 P0 意见只在摘要里汇总:未验证、不发行内评论、不影响准入 */
14
- export declare function buildDigestSection(comments?: AIComment[]): string[];
15
- /** 发布策略说明:有任何 finding 时提示一次,让研发知道行内评论为什么只剩 P0 */
16
- export declare const PUBLISH_POLICY_NOTE = "> \u2139\uFE0F \u884C\u5185\u8BC4\u8BBA\u53EA\u5305\u542B\u7ECF\u53D6\u8BC1\u9A8C\u8BC1\u7684 P0 \u95EE\u9898\uFF1BP1 \u63D0\u793A\u6C47\u603B\u5728\u672C\u6458\u8981\u672B\u5C3E\uFF0C\u4E0D\u53D1\u884C\u5185\u8BC4\u8BBA\u3001\u4E0D\u5F71\u54CD\u5408\u5165\u3002";
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>";
17
32
  /** 验证排除与预算耗尽的提示行;没有可说的返回空数组 */
18
33
  export declare function buildVerificationNotes(options?: VerdictMarkdownOptions): string[];
34
+ /** 评审范围与相对上次的变化:结论句之后的引用块;没有 scope 时不渲染 */
35
+ export declare function buildScopeLines(options?: VerdictMarkdownOptions): string[];
19
36
  /**
20
- * @param comments 合并后的 OPEN 全集(表格统计口径)
37
+ * 整条摘要 note 的正文(页脚之前的附加段由 options.appendix 传入):
38
+ * 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → P1 提示 → 合入前检查项
39
+ * → 折叠的主要变更 → 附加段 → 发布策略说明。
40
+ *
41
+ * @param comments 合并后的 OPEN 全集(计数口径)
21
42
  * @param blockingComments 参与准入判定的子集;省略时等于 comments(无持久化的降级路径)
22
- * @param options 验证排除计数与预算耗尽提示
23
43
  */
24
44
  export declare function buildVerdictMarkdown(verdict: Verdict, comments: AIComment[], blockingComments?: AIComment[], options?: VerdictMarkdownOptions): string;
25
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,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;CAC9B;AAED,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,sCAAsC;AACtC,wBAAgB,kBAAkB,CAAC,QAAQ,GAAE,SAAS,EAAO,GAAG,MAAM,EAAE,CAqBvE;AAED,iDAAiD;AACjD,eAAO,MAAM,mBAAmB,2QACwB,CAAC;AAEzD,+BAA+B;AAC/B,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,sBAA2B,GAAG,MAAM,EAAE,CAYrF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,SAAS,EAAE,EACrB,gBAAgB,CAAC,EAAE,SAAS,EAAE,EAC9B,OAAO,GAAE,sBAA2B,GACnC,MAAM,CA4CR"}
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"}
@@ -3,37 +3,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PUBLISH_POLICY_NOTE = exports.DIGEST_MAX_ITEMS = void 0;
4
4
  exports.computeVerdict = computeVerdict;
5
5
  exports.buildDigestSection = buildDigestSection;
6
+ exports.buildBlockingP0Section = buildBlockingP0Section;
6
7
  exports.buildVerificationNotes = buildVerificationNotes;
8
+ exports.buildScopeLines = buildScopeLines;
7
9
  exports.buildVerdictMarkdown = buildVerdictMarkdown;
10
+ const summary_compose_1 = require("./summary-compose");
8
11
  function computeVerdict(comments) {
9
12
  const p0Count = comments.filter((c) => c.severity === "P0").length;
10
13
  return p0Count > 0 ? "ACTION_REQUIRED" : "PASSED";
11
14
  }
12
- function buildSeverityTable(p0, p1, p2) {
13
- return [
14
- "| 级别 | 数量 |",
15
- "|------|------|",
16
- `| 🔴 P0 (Critical) | ${p0} |`,
17
- `| 🟡 P1 (Major) | ${p1} |`,
18
- `| 🔵 P2 (Minor) | ${p2} |`,
19
- "",
20
- ];
21
- }
22
15
  /** 摘要里非 P0 提示的展示上限(用户 2026-10-21 拍板:封顶 10 条) */
23
16
  exports.DIGEST_MAX_ITEMS = 10;
17
+ /** 摘要每条只展示 message 首行;后面还有实质内容时补「…」提示有省略 */
18
+ function firstLine(message) {
19
+ const [head, ...rest] = message.split("\n");
20
+ return rest.some((line) => line.trim().length > 0) ? `${head}…` : head;
21
+ }
22
+ function sortByLocation(items) {
23
+ return [...items].sort((a, b) => a.file.localeCompare(b.file) || a.line - b.line);
24
+ }
24
25
  /** 非 P0 意见只在摘要里汇总:未验证、不发行内评论、不影响准入 */
25
- function buildDigestSection(comments = []) {
26
+ function buildDigestSection(comments = [], links) {
26
27
  const items = comments.filter((c) => c.severity !== "P0");
27
28
  if (items.length === 0)
28
29
  return [];
29
- const sorted = [...items].sort((a, b) => a.file.localeCompare(b.file) || a.line - b.line);
30
- const shown = sorted.slice(0, exports.DIGEST_MAX_ITEMS);
30
+ const shown = sortByLocation(items).slice(0, exports.DIGEST_MAX_ITEMS);
31
31
  const lines = [
32
- `## 🟡 P1 提示(未验证,共 ${items.length} 条)`,
33
- "",
34
- "以下为性能与规范类提示,未经取证验证,不发行内评论、不影响准入:",
32
+ `### 🟡 P1 提示 · ${items.length} 条(模型意见,未经取证验证)`,
35
33
  "",
36
- ...shown.map((c) => `- \`${c.file}:${c.line}\` ${c.message.split("\n")[0]}`),
34
+ ...shown.map((c) => `- ${(0, summary_compose_1.fileRef)(c.file, c.line, links)} ${firstLine(c.message)}`),
37
35
  ];
38
36
  if (items.length > shown.length) {
39
37
  lines.push("", `另有 ${items.length - shown.length} 条未列出。`);
@@ -41,8 +39,20 @@ function buildDigestSection(comments = []) {
41
39
  lines.push("");
42
40
  return lines;
43
41
  }
44
- /** 发布策略说明:有任何 finding 时提示一次,让研发知道行内评论为什么只剩 P0 */
45
- exports.PUBLISH_POLICY_NOTE = "> ℹ️ 行内评论只包含经取证验证的 P0 问题;P1 提示汇总在本摘要末尾,不发行内评论、不影响合入。";
42
+ /** 需修复的 P0 按文件 / 行号列出:行内线程之外再给一个可点的入口 */
43
+ function buildBlockingP0Section(comments, links) {
44
+ const items = sortByLocation(comments.filter((c) => c.severity === "P0"));
45
+ if (items.length === 0)
46
+ return [];
47
+ return [
48
+ `### 🔴 需修复的 P0 · ${items.length} 条(已取证验证,见行内评论)`,
49
+ "",
50
+ ...items.map((c) => `- ${(0, summary_compose_1.fileRef)(c.file, c.line, links)} ${firstLine(c.message)}`),
51
+ "",
52
+ ];
53
+ }
54
+ /** 发布策略说明:有任何 finding 时在页脚提示一次,让研发知道行内评论为什么只剩 P0 */
55
+ exports.PUBLISH_POLICY_NOTE = "<sub>ℹ️ 行内评论只包含经取证验证的 P0;P1 汇总于此,不发行内评论、不影响合入。</sub>";
46
56
  /** 验证排除与预算耗尽的提示行;没有可说的返回空数组 */
47
57
  function buildVerificationNotes(options = {}) {
48
58
  const notes = [];
@@ -55,44 +65,94 @@ function buildVerificationNotes(options = {}) {
55
65
  }
56
66
  return notes.length > 0 ? [...notes, ""] : notes;
57
67
  }
68
+ /** 评审范围与相对上次的变化:结论句之后的引用块;没有 scope 时不渲染 */
69
+ function buildScopeLines(options = {}) {
70
+ if (!options.scope)
71
+ return [];
72
+ const lines = [`> ${(0, summary_compose_1.buildScopeLine)(options.scope)}`];
73
+ if (options.delta)
74
+ lines.push(`> ${(0, summary_compose_1.buildDeltaLine)(options.delta)}`);
75
+ lines.push("");
76
+ return lines;
77
+ }
78
+ function buildOverviewSection(summary) {
79
+ if (!summary?.overview)
80
+ return [];
81
+ return ["### 📝 概述", "", summary.overview, ""];
82
+ }
83
+ /** CLI 识别的确定项在前、模型补充在后;摘要可解析但两边都没有时写「无」 */
84
+ function buildChecklistSection(checklist = [], summary) {
85
+ const items = [...checklist.map((item) => `- ${item}`), ...(summary?.checklist ?? [])];
86
+ if (items.length === 0 && !summary?.recognized)
87
+ return [];
88
+ return ["### 📋 合入前检查项", "", ...(items.length > 0 ? items : ["无"]), ""];
89
+ }
90
+ function buildChangesSection(summary) {
91
+ if (!summary?.changes)
92
+ return [];
93
+ return [
94
+ "<details>",
95
+ "<summary>主要变更(按模块)</summary>",
96
+ "",
97
+ summary.changes,
98
+ "",
99
+ "</details>",
100
+ "",
101
+ ];
102
+ }
103
+ function countsSuffix(p0, p1, p2) {
104
+ return `(P0 ${p0} · P1 ${p1}${p2 > 0 ? ` · P2 ${p2}` : ""})`;
105
+ }
58
106
  /**
59
- * @param comments 合并后的 OPEN 全集(表格统计口径)
107
+ * 整条摘要 note 的正文(页脚之前的附加段由 options.appendix 传入):
108
+ * 结论与计数 → 评审范围 / 较上次 → 验证说明 → 概述 → 需修复的 P0 → P1 提示 → 合入前检查项
109
+ * → 折叠的主要变更 → 附加段 → 发布策略说明。
110
+ *
111
+ * @param comments 合并后的 OPEN 全集(计数口径)
60
112
  * @param blockingComments 参与准入判定的子集;省略时等于 comments(无持久化的降级路径)
61
- * @param options 验证排除计数与预算耗尽提示
62
113
  */
63
114
  function buildVerdictMarkdown(verdict, comments, blockingComments, options = {}) {
64
115
  const p0 = comments.filter((c) => c.severity === "P0").length;
65
116
  const p1 = comments.filter((c) => c.severity === "P1").length;
66
117
  const p2 = comments.filter((c) => c.severity === "P2").length;
67
- const blockingP0 = (blockingComments ?? comments).filter((c) => c.severity === "P0").length;
118
+ const blocking = blockingComments ?? comments;
119
+ const blockingP0 = blocking.filter((c) => c.severity === "P0").length;
68
120
  const advisoryP0 = p0 - blockingP0;
69
- const policyNote = comments.length > 0 ? [exports.PUBLISH_POLICY_NOTE, ""] : [];
121
+ const parts = [];
70
122
  if (verdict === "PASSED") {
71
- const parts = ["## ✅ PASSED", ""];
123
+ parts.push("## ✅ PASSED", "");
72
124
  if (advisoryP0 > 0) {
73
- parts.push(`本次改动范围内无需修复的 P0 问题;另有 ${advisoryP0} 个存量 P0 为非阻塞提示,建议排期修复。`, "");
125
+ parts.push(`本次改动范围内无需修复的 P0;另有 ${advisoryP0} 个存量 P0 为非阻塞提示,建议排期修复${countsSuffix(p0, p1, p2)}`, "");
74
126
  }
75
- else if (p1 > 0) {
76
- parts.push(`无 P0 问题,另有 ${p1} 条 P1 提示见下方汇总,不阻断合入。`, "");
127
+ else if (p1 > 0 || p2 > 0) {
128
+ parts.push(`无 P0 问题,可合入;P1 提示见下方汇总,不影响合入${countsSuffix(p0, p1, p2)}`, "");
77
129
  }
78
130
  else {
79
- parts.push("没有 P0/P1 级别的问题,建议合入。", "");
131
+ parts.push("没有 P0 / P1 级别的问题,建议合入。", "");
80
132
  }
81
- parts.push(...buildSeverityTable(p0, p1, p2));
82
- parts.push(...policyNote);
83
- parts.push(...buildVerificationNotes(options));
84
- parts.push(...buildDigestSection(options.digestComments));
85
- return parts.join("\n");
86
133
  }
87
- const parts = ["## ⚠️ ACTION REQUIRED", ""];
88
- parts.push(`发现 ${blockingP0} 个 P0 问题,需修复后再次触发审查。`, "");
89
- if (advisoryP0 > 0) {
90
- parts.push(`另有 ${advisoryP0} 个存量 P0 为非阻塞提示,不计入准入判定。`, "");
134
+ else {
135
+ parts.push("## ⚠️ ACTION REQUIRED", "");
136
+ parts.push(`发现 ${blockingP0} 个 P0 问题,需修复后再次触发审查${countsSuffix(p0, p1, p2)}`, "");
137
+ if (advisoryP0 > 0) {
138
+ parts.push(`另有 ${advisoryP0} 个存量 P0 为非阻塞提示,不计入准入判定。`, "");
139
+ }
91
140
  }
92
- parts.push(...buildSeverityTable(p0, p1, p2));
93
- parts.push(...policyNote);
141
+ parts.push(...buildScopeLines(options));
94
142
  parts.push(...buildVerificationNotes(options));
95
- parts.push(...buildDigestSection(options.digestComments));
143
+ parts.push(...buildOverviewSection(options.summary));
144
+ if (verdict !== "PASSED")
145
+ parts.push(...buildBlockingP0Section(blocking, options.links));
146
+ parts.push(...buildDigestSection(options.digestComments, options.links));
147
+ parts.push(...buildChecklistSection(options.checklist, options.summary));
148
+ parts.push(...buildChangesSection(options.summary));
149
+ for (const section of options.appendix ?? []) {
150
+ const trimmed = section.trim();
151
+ if (trimmed)
152
+ parts.push(trimmed, "");
153
+ }
154
+ if (comments.length > 0)
155
+ parts.push(exports.PUBLISH_POLICY_NOTE, "");
96
156
  return parts.join("\n");
97
157
  }
98
158
  //# sourceMappingURL=verdict.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/core/verdict.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verdict.js","sourceRoot":"","sources":["../../src/core/verdict.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,22 @@ export declare const LIST_FILES_MAX = 200;
20
20
  /** 声明超过此行数只返回签名 + 开头窗口(与符号上下文的 MAX_DECLARATION_LINES 同值) */
21
21
  export declare const SYMBOL_MAX_LINES = 150;
22
22
  export declare const SYMBOL_WINDOW_LINES = 40;
23
+ /**
24
+ * 单次 git 子进程的墙钟上限。候选截止 90s 内要给模型留几轮工具调用,宽正则在大仓库上的
25
+ * git grep 不能吃掉整条候选(进而把整 run 拖过 10 分钟);超时以工具错误返回给模型,
26
+ * 它可以收窄 pattern / pathGlob 再试。
27
+ */
28
+ export declare const GIT_TIMEOUT_MS = 20000;
23
29
  export interface VerifyToolContext {
24
30
  /** CI 检出根目录 */
25
31
  root: string;
32
+ /**
33
+ * 候选截止信号:触发即终止进行中的 git 子进程并以工具错误返回。运行时在每次工具调用
34
+ * 时传入的信号优先(见 buildVerifyTools);直接调用工具函数时可在这里给。
35
+ */
36
+ signal?: AbortSignal;
37
+ /** 单次 git 子进程超时(ms),缺省 GIT_TIMEOUT_MS;测试注入 */
38
+ gitTimeoutMs?: number;
26
39
  }
27
40
  export type ToolResult = {
28
41
  ok: true;
@@ -1 +1 @@
1
- {"version":3,"file":"verify-tools.d.ts","sourceRoot":"","sources":["../../src/core/verify-tools.ts"],"names":[],"mappings":"AAKA,OAAO,EAAmB,KAAK,SAAS,EAAuB,MAAM,iBAAiB,CAAC;AAgBvF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,mBAAmB,QAAY,CAAC;AAC7C,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,cAAc,MAAM,CAAC;AAClC,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAKtC,MAAM,WAAW,iBAAiB;IAChC,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF,KAAK,YAAY,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAe1F;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,CAAC,CAuCvB;AAqBD,wBAAsB,YAAY,CAChC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5D,OAAO,CAAC,UAAU,CAAC,CAmDrB;AA4BD,wBAAsB,cAAc,CAClC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACjE,OAAO,CAAC,UAAU,CAAC,CAoCrB;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GACtB,OAAO,CAAC,UAAU,CAAC,CAarB;AA+CD,wBAAsB,aAAa,CACjC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GACrC,OAAO,CAAC,UAAU,CAAC,CA4DrB;AAMD,0BAA0B;AAC1B,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,CA8CpE"}
1
+ {"version":3,"file":"verify-tools.d.ts","sourceRoot":"","sources":["../../src/core/verify-tools.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,KAAK,SAAS,EAGf,MAAM,iBAAiB,CAAC;AAgBzB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,mBAAmB,QAAY,CAAC;AAC7C,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAC5C,eAAO,MAAM,cAAc,MAAM,CAAC;AAClC,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAGtC;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAAS,CAAC;AAGrC,MAAM,WAAW,iBAAiB;IAChC,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,8CAA8C;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF,KAAK,YAAY,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAe1F;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,CAAC,CAuCvB;AAqBD,wBAAsB,YAAY,CAChC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5D,OAAO,CAAC,UAAU,CAAC,CAmDrB;AA4DD,wBAAsB,cAAc,CAClC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACjE,OAAO,CAAC,UAAU,CAAC,CAoCrB;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GACtB,OAAO,CAAC,UAAU,CAAC,CAarB;AA+CD,wBAAsB,aAAa,CACjC,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GACrC,OAAO,CAAC,UAAU,CAAC,CA4DrB;AAcD,0BAA0B;AAC1B,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,CA8CpE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SYMBOL_WINDOW_LINES = exports.SYMBOL_MAX_LINES = exports.LIST_FILES_MAX = exports.SEARCH_PATTERN_MAX_CHARS = exports.SEARCH_LINE_MAX_CHARS = exports.SEARCH_DEFAULT_RESULTS = exports.SEARCH_MAX_RESULTS = exports.READ_FILE_MAX_BYTES = exports.READ_FILE_MAX_LINES = void 0;
3
+ exports.GIT_TIMEOUT_MS = exports.SYMBOL_WINDOW_LINES = exports.SYMBOL_MAX_LINES = exports.LIST_FILES_MAX = exports.SEARCH_PATTERN_MAX_CHARS = exports.SEARCH_LINE_MAX_CHARS = exports.SEARCH_DEFAULT_RESULTS = exports.SEARCH_MAX_RESULTS = exports.READ_FILE_MAX_BYTES = exports.READ_FILE_MAX_LINES = void 0;
4
4
  exports.resolveReadablePath = resolveReadablePath;
5
5
  exports.readFileTool = readFileTool;
6
6
  exports.searchCodeTool = searchCodeTool;
@@ -40,7 +40,13 @@ exports.SYMBOL_MAX_LINES = 150;
40
40
  exports.SYMBOL_WINDOW_LINES = 40;
41
41
  /** 不给 file 时按名字搜索候选文件的数量上限 */
42
42
  const SYMBOL_CANDIDATE_FILES = 20;
43
- const GIT_EXEC_OPTIONS = { maxBuffer: 10 * 1024 * 1024 };
43
+ /**
44
+ * 单次 git 子进程的墙钟上限。候选截止 90s 内要给模型留几轮工具调用,宽正则在大仓库上的
45
+ * git grep 不能吃掉整条候选(进而把整 run 拖过 10 分钟);超时以工具错误返回给模型,
46
+ * 它可以收窄 pattern / pathGlob 再试。
47
+ */
48
+ exports.GIT_TIMEOUT_MS = 20000;
49
+ const GIT_EXEC_OPTIONS = { maxBuffer: 10 * 1024 * 1024, timeout: exports.GIT_TIMEOUT_MS };
44
50
  function errorText(error) {
45
51
  return error instanceof Error ? error.message.split("\n")[0] : String(error);
46
52
  }
@@ -178,13 +184,40 @@ function parseGrepLine(line) {
178
184
  function truncateChars(text, max) {
179
185
  return text.length > max ? `${text.slice(0, max)}…` : text;
180
186
  }
181
- async function runGit(root, args) {
187
+ /**
188
+ * 跑一条 git 命令。三种非零退出都以结果值返回、不抛出:
189
+ * - 候选截止(ctx.signal):已触发则不再 spawn,进行中则 kill 子进程;
190
+ * - 超时(gitTimeoutMs):execFile 的 timeout 以 SIGTERM 结束子进程,`killed` 为真且无退出码;
191
+ * - 普通失败:退出码 + stderr 首行(git grep 以 1 表示无匹配,由调用方解释)。
192
+ */
193
+ async function runGit(ctx, args) {
194
+ const command = `git ${args[0] ?? ""}`.trim();
195
+ const abortedText = `${command} aborted: candidate deadline reached(候选已截止)`;
196
+ if (ctx.signal?.aborted)
197
+ return { ok: false, code: null, error: abortedText };
198
+ const timeout = ctx.gitTimeoutMs ?? exports.GIT_TIMEOUT_MS;
182
199
  try {
183
- const { stdout } = await execFileAsync("git", args, { ...GIT_EXEC_OPTIONS, cwd: root });
200
+ const { stdout } = await execFileAsync("git", args, {
201
+ ...GIT_EXEC_OPTIONS,
202
+ timeout,
203
+ cwd: ctx.root,
204
+ ...(ctx.signal ? { signal: ctx.signal } : {}),
205
+ });
184
206
  return { ok: true, stdout };
185
207
  }
186
208
  catch (error) {
187
209
  const e = error;
210
+ if (e.name === "AbortError" || e.code === "ABORT_ERR") {
211
+ return { ok: false, code: null, error: abortedText };
212
+ }
213
+ // 超时被 kill:没有退出码;maxBuffer 超限同样 killed 但带 ERR_CHILD_PROCESS_STDIO_MAXBUFFER,走普通失败
214
+ if (e.killed === true && (e.code === null || e.code === undefined)) {
215
+ return {
216
+ ok: false,
217
+ code: null,
218
+ error: `${command} timed out after ${Math.round(timeout / 1000)}s(超时); narrow the pattern or pathGlob and retry`,
219
+ };
220
+ }
188
221
  const code = typeof e.code === "number" ? e.code : null;
189
222
  const stderr = typeof e.stderr === "string" ? e.stderr.trim().split("\n")[0] : "";
190
223
  return { ok: false, code, error: stderr || errorText(error) };
@@ -204,7 +237,7 @@ async function searchCodeTool(ctx, input) {
204
237
  const glob = input.pathGlob?.trim();
205
238
  if (glob)
206
239
  args.push(`:(glob)${glob.replace(/^\.\/+/, "")}`);
207
- const result = await runGit(ctx.root, args);
240
+ const result = await runGit(ctx, args);
208
241
  if (!result.ok) {
209
242
  // git grep 以退出码 1 表示无匹配
210
243
  if (result.code === 1)
@@ -230,7 +263,7 @@ async function listFilesTool(ctx, input) {
230
263
  const glob = input.glob.trim().replace(/^\.\/+/, "");
231
264
  if (!glob)
232
265
  return { ok: false, error: "glob is empty(glob 为空)" };
233
- const result = await runGit(ctx.root, ["ls-files", "--", `:(glob)${glob}`]);
266
+ const result = await runGit(ctx, ["ls-files", "--", `:(glob)${glob}`]);
234
267
  if (!result.ok)
235
268
  return { ok: false, error: `git ls-files failed: ${result.error}` };
236
269
  const files = result.stdout.split("\n").filter(Boolean).filter(isReadableRelPath);
@@ -295,7 +328,7 @@ async function getSymbolTool(ctx, input) {
295
328
  }
296
329
  else {
297
330
  // -w -F:整词、字面量匹配。不用 `\b`——git 自带的正则引擎在部分平台不支持
298
- const result = await runGit(ctx.root, ["grep", "-l", "-I", "-w", "-F", "-e", needle, "--"]);
331
+ const result = await runGit(ctx, ["grep", "-l", "-I", "-w", "-F", "-e", needle, "--"]);
299
332
  if (!result.ok && result.code !== 1) {
300
333
  return { ok: false, error: `git grep failed: ${result.error}` };
301
334
  }
@@ -348,6 +381,13 @@ async function getSymbolTool(ctx, input) {
348
381
  function toOutcome(result) {
349
382
  return result.ok ? result.text : { error: result.error };
350
383
  }
384
+ /**
385
+ * 工具数组按 run 构建一次、各候选共用;候选截止信号由运行时在每次调用时传入
386
+ * (SDK Tool Runner 的 `run(input, { signal })`),有则覆盖上下文级信号。
387
+ */
388
+ function withSignal(ctx, run) {
389
+ return run?.signal ? { ...ctx, signal: run.signal } : ctx;
390
+ }
351
391
  /** 四个只读工具,供验证 agent 使用 */
352
392
  function buildVerifyTools(ctx) {
353
393
  return [
@@ -371,7 +411,7 @@ function buildVerifyTools(ctx) {
371
411
  pathGlob: zod_1.z.string().optional().describe("限定搜索的路径 glob"),
372
412
  maxResults: zod_1.z.number().int().optional().describe(`返回条数上限(默认 ${exports.SEARCH_DEFAULT_RESULTS},最多 ${exports.SEARCH_MAX_RESULTS})`),
373
413
  }),
374
- run: (input) => searchCodeTool(ctx, input).then(toOutcome),
414
+ run: (input, run) => searchCodeTool(withSignal(ctx, run), input).then(toOutcome),
375
415
  }),
376
416
  (0, agent_runtime_1.defineAgentTool)({
377
417
  name: "list_files",
@@ -379,7 +419,7 @@ function buildVerifyTools(ctx) {
379
419
  inputSchema: zod_1.z.object({
380
420
  glob: zod_1.z.string().describe("路径 glob"),
381
421
  }),
382
- run: (input) => listFilesTool(ctx, input).then(toOutcome),
422
+ run: (input, run) => listFilesTool(withSignal(ctx, run), input).then(toOutcome),
383
423
  }),
384
424
  (0, agent_runtime_1.defineAgentTool)({
385
425
  name: "get_symbol",
@@ -389,7 +429,7 @@ function buildVerifyTools(ctx) {
389
429
  name: zod_1.z.string().describe("符号名,可为 Foo.bar"),
390
430
  file: zod_1.z.string().optional().describe("限定查找的文件(相对仓库根)"),
391
431
  }),
392
- run: (input) => getSymbolTool(ctx, input).then(toOutcome),
432
+ run: (input, run) => getSymbolTool(withSignal(ctx, run), input).then(toOutcome),
393
433
  }),
394
434
  ];
395
435
  }
@@ -1 +1 @@
1
- {"version":3,"file":"verify-tools.js","sourceRoot":"","sources":["../../src/core/verify-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verify-tools.js","sourceRoot":"","sources":["../../src/core/verify-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAwIA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA+ZhD"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AA+IA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAichD"}