@unifan/pi-unifan-zh 1.0.21 → 1.0.22
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.
|
@@ -201,47 +201,48 @@ type ReviewTarget =
|
|
|
201
201
|
|
|
202
202
|
// 针对不同审查目标的中文提示词
|
|
203
203
|
const LITE_REVIEW_PROMPT =
|
|
204
|
-
"
|
|
204
|
+
"【极速体检模式】请首先运行 `git diff` 获取代码改动,并针对改动涉及的核心函数按需使用 `read` 查阅周边上下文(如所在完整方法实现与生命周期),快速排查高危逻辑崩溃与安全漏洞。结合上下文精准核验后直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。";
|
|
205
205
|
|
|
206
206
|
const FULL_REVIEW_PROMPT =
|
|
207
|
-
"
|
|
207
|
+
"【全量深度审查模式】请对当前代码改动展开深度的上下文关联审查:首先运行 `git diff` 全量查阅改动,必须使用 `read` / `grep` 深入查阅改动方法所在的完整类定义、调用方契约、状态机与生命周期等关键上下文,深入排查业务逻辑隐患、边界异常、并发安全、性能GC开销与架构契约,结合完整代码脉络直接输出详尽审查清单。严禁输出任何步骤清单。所有输出必须使用纯正中文。";
|
|
208
208
|
|
|
209
209
|
const UNCOMMITTED_PROMPT =
|
|
210
|
-
"
|
|
210
|
+
"请审查当前代码的所有改动(包含暂存区、未暂存区以及新增文件)。先运行 `git diff` 与 `git status` 获取改动,再针对关键改动按需使用 `read` / `grep` 查阅周边上下文代码与调用链路,结合完整上下文直接输出审查发现。严禁输出任何步骤清单或待办列表。所有输出必须使用纯正中文。";
|
|
211
211
|
|
|
212
212
|
const BASE_BRANCH_PROMPT_WITH_MERGE_BASE =
|
|
213
|
-
"请审查当前分支相对于基准分支 '{baseBranch}' 的改动(合并基准 commit: {mergeBaseSha}
|
|
213
|
+
"请审查当前分支相对于基准分支 '{baseBranch}' 的改动(合并基准 commit: {mergeBaseSha})。运行 `git diff {mergeBaseSha}` 查看改动,并按需使用 `read` / `grep` 结合周边上下文深入分析,直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。";
|
|
214
214
|
|
|
215
215
|
const BASE_BRANCH_PROMPT_FALLBACK =
|
|
216
|
-
"请审查当前分支相对于基准分支 '{branch}'
|
|
216
|
+
"请审查当前分支相对于基准分支 '{branch}' 的改动。先使用 `git merge-base` 与 `git diff` 查看改动,并按需使用 `read` / `grep` 结合周边上下文深入分析,直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。";
|
|
217
217
|
|
|
218
218
|
const COMMIT_PROMPT_WITH_TITLE =
|
|
219
|
-
'请审查提交 commit {sha} ("{title}")
|
|
219
|
+
'请审查提交 commit {sha} ("{title}") 引入的代码改动。运行 `git show {sha}` 查看差异,并按需使用 `read` / `grep` 结合周边上下文深入分析,直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。';
|
|
220
220
|
|
|
221
221
|
const COMMIT_PROMPT =
|
|
222
|
-
"请审查提交 commit {sha}
|
|
222
|
+
"请审查提交 commit {sha} 引入的代码改动。运行 `git show {sha}` 查看差异,并按需使用 `read` / `grep` 结合周边上下文深入分析,直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。";
|
|
223
223
|
|
|
224
224
|
const PULL_REQUEST_PROMPT =
|
|
225
|
-
'请审查 Pull Request #{prNumber} ("{title}") 相对于基准分支 \'{baseBranch}\' 的改动(合并基准 commit: {mergeBaseSha}
|
|
225
|
+
'请审查 Pull Request #{prNumber} ("{title}") 相对于基准分支 \'{baseBranch}\' 的改动(合并基准 commit: {mergeBaseSha})。运行 `git diff {mergeBaseSha}` 查看改动,并按需使用 `read` / `grep` 结合周边上下文深入分析,直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。';
|
|
226
226
|
|
|
227
227
|
const PULL_REQUEST_PROMPT_FALLBACK =
|
|
228
|
-
'请审查 Pull Request #{prNumber} ("{title}") 相对于基准分支 \'{baseBranch}\'
|
|
228
|
+
'请审查 Pull Request #{prNumber} ("{title}") 相对于基准分支 \'{baseBranch}\' 的改动。先运行 `git diff` 查看改动,并按需使用 `read` / `grep` 结合周边上下文深入分析,直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。';
|
|
229
229
|
|
|
230
230
|
const FOLDER_REVIEW_PROMPT =
|
|
231
|
-
"请对以下目录/文件路径的代码进行快照审查:{paths}
|
|
231
|
+
"请对以下目录/文件路径的代码进行快照审查:{paths}。直接读取这些文件并结合上下文直接输出审查发现。严禁输出任何步骤清单。所有输出必须使用纯正中文。";
|
|
232
232
|
|
|
233
233
|
// 权威的中文代码审查准则 (基于 Codex 准则精炼与本土化)
|
|
234
234
|
const REVIEW_RUBRIC = `> 🚨【最高执行原则】:
|
|
235
235
|
> 1. **全流程纯中文**:思维链(Thinking)、推理分析与最终报告必须 100% 使用纯正中文,严禁包含任何英文段落或英文小标题!
|
|
236
|
-
> 2.
|
|
236
|
+
> 2. **结合上下文,拒绝断章取义**:仅看 diff 的片段容易产生误判。请**先运行 \`git diff\` 锁定变动,再针对改动涉及的关键方法、类生命周期或调用方,按需使用 \`read\` 或 \`grep\` 查阅必要的上下文代码**(精准核验,切勿无目的漫游遍历),结合真实完整的业务上下文做出准确裁决!
|
|
237
|
+
> 3. **直接审查,拒绝繁琐步骤**:严禁打印任何工作流待办清单(Checklist)或环境测试命令!
|
|
237
238
|
|
|
238
239
|
# 核心代码审查准则
|
|
239
240
|
|
|
240
|
-
|
|
241
|
+
你是一名资深技术专家,正在审查提交的代码改动。请结合完整代码上下文,直击本质,拦截真实缺陷:
|
|
241
242
|
|
|
242
243
|
## 重点排查范围
|
|
243
|
-
1.
|
|
244
|
-
2.
|
|
244
|
+
1. **代码正确性与边界**:结合函数整体逻辑与调用方,排查业务漏洞、空指针/未定义引用、边界越界、生命周期异常、未捕获的运行时崩溃。
|
|
245
|
+
2. **并发与状态安全**:结合上下文状态机与生命周期,排查竞态条件、死锁隐患、异步缺少等待、脏状态残留。
|
|
245
246
|
3. **性能与内存开销**:高频主循环内的大量堆内存分配 (GC 压力)、不必要的深拷贝、高复杂度算法、资源句柄泄露。
|
|
246
247
|
4. **防御与输入校验**:外部未受信任输入未做严格参数化或校验(SQL注入、路径穿越、越权等)。
|
|
247
248
|
5. **只关注本次改动**:严禁将改动前既有的历史代码当作本次改动的缺陷。
|
|
@@ -249,7 +250,7 @@ const REVIEW_RUBRIC = `> 🚨【最高执行原则】:
|
|
|
249
250
|
## 严格过滤误报
|
|
250
251
|
- ❌ 严禁提出吹毛求疵、纯属个人审美的风格建议。
|
|
251
252
|
- ❌ 严禁提出 Linter / 类型检查器会自动捕获的浅层格式建议。
|
|
252
|
-
- ❌
|
|
253
|
+
- ❌ 严禁脱离上下文进行无端猜测,每条问题必须有明确的代码与上下文事实证据。
|
|
253
254
|
|
|
254
255
|
## 缺陷等级标记 [P0~P3]
|
|
255
256
|
- **[P0 - 致命阻塞]** 崩溃、死锁、数据损坏、关键功能不可用,必须阻断合并
|
|
@@ -261,8 +262,8 @@ const REVIEW_RUBRIC = `> 🚨【最高执行原则】:
|
|
|
261
262
|
### 审查发现清单
|
|
262
263
|
每个问题按以下格式列出(若无存活缺陷,明确输出:\`未发现存活的代码缺陷,代码质量良好,建议合并。\`):
|
|
263
264
|
- **[P0|P1|P2|P3] 简短标题**:\`文件路径:行号\`
|
|
264
|
-
-
|
|
265
|
-
-
|
|
265
|
+
- **缺陷说明**:结合上下文简明说明后果与触发场景。
|
|
266
|
+
- **代码证据**:引用关键代码及上下文。
|
|
266
267
|
- **修改建议**:给出最小化修复思路或代码替换块(可使用 \`\`\`suggestion)。
|
|
267
268
|
|
|
268
269
|
### 综合裁决
|