job51-gitlab-cr-node-jt-1 2.9.9 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +43 -29
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -549,40 +549,54 @@ ${allReportsText}
|
|
|
549
549
|
|
|
550
550
|
// 大文件模式下的特殊提示
|
|
551
551
|
const largeFilePrompt = isLargeFile ? `
|
|
552
|
-
**⚠️
|
|
553
|
-
|
|
554
|
-
1.
|
|
555
|
-
2.
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
3. 发现问题时,准确报告行号(基于文件内容的实际行号)
|
|
552
|
+
**⚠️ 大文件审查模式 - 强制格式要求**:
|
|
553
|
+
这是完整文件审查(GitLab diff截断),所有代码都是新增内容。
|
|
554
|
+
1. 直接输出审查报告,不要先分析后格式化
|
|
555
|
+
2. 发现问题后立即按模板格式写入 REPORT 和 LINE_INFO
|
|
556
|
+
3. 行号基于完整文件实际行号计算
|
|
557
|
+
4. **严禁在输出中写 "Let me format" 等中间过程文本**
|
|
558
|
+
5. **必须在 </REPORT> 后立即输出 <LINE_INFO> 标签,包含每个问题的行号**
|
|
560
559
|
` : '';
|
|
561
560
|
|
|
562
561
|
const prompt = `请调用 simple-code-review 技能审核代码变更。
|
|
563
562
|
文件路径:${filePath}
|
|
564
563
|
${largeFilePrompt}
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
564
|
+
**⚠️ 强制输出格式要求(违反会导致审查结果丢失)**:
|
|
565
|
+
|
|
566
|
+
你必须直接输出以下格式,不要输出任何分析过程、思考过程或中间文本:
|
|
567
|
+
|
|
568
|
+
<REPORT>
|
|
569
|
+
## 🤖 AI 代码审查结果
|
|
570
|
+
|
|
571
|
+
### 🔴 严重问题
|
|
572
|
+
|
|
573
|
+
**问题 1**:[问题描述]<br/>
|
|
574
|
+
**文件及行号**:[文件路径:实际行号]<br/>
|
|
575
|
+
**修改建议**:[修复建议]
|
|
576
|
+
|
|
577
|
+
**问题 2**:[问题描述]<br/>
|
|
578
|
+
**文件及行号**:[文件路径:实际行号]<br/>
|
|
579
|
+
**修改建议**:[修复建议]
|
|
580
|
+
|
|
581
|
+
...(更多问题按同样格式)
|
|
582
|
+
|
|
583
|
+
</REPORT>
|
|
584
|
+
|
|
585
|
+
<LINE_INFO>
|
|
586
|
+
[{"new_path":"文件路径","new_line":实际行号},{"new_path":"文件路径","new_line":实际行号}]
|
|
587
|
+
</LINE_INFO>
|
|
588
|
+
|
|
589
|
+
**审查重点**:
|
|
590
|
+
1. 资源泄漏:JDBC/文件流未关闭 → 报告资源创建行号
|
|
591
|
+
2. 框架问题:@Async返回具体类型 → 报告方法定义行号
|
|
592
|
+
3. 循环逻辑:状态过期、累积不一致 → 报告循环内出错行号
|
|
593
|
+
4. 异常吞没:catch块空实现 → 报告catch行号
|
|
594
|
+
5. 空指针:包装类型拆箱 → 报告使用行号
|
|
595
|
+
|
|
596
|
+
**关键**:
|
|
597
|
+
- 有严重问题时,LINE_INFO 必须包含对应行号,否则结果被丢弃
|
|
598
|
+
- 无问题时输出 <LINE_INFO>[]</LINE_INFO>
|
|
599
|
+
- 不要输出 "Let me analyze"、"Let me format" 等文本`;
|
|
586
600
|
//打印
|
|
587
601
|
debugLog(`[${blockIdentifier}] Claude命令: ${prompt}`);
|
|
588
602
|
// 最多重试5次,直到结果包含"🤖 AI 代码审查结果"或达到最大重试次数
|