Skip to content

optimize: 优化 code review 输出,避免阻塞 - #261

Closed
CongkeChen wants to merge 2 commits into
mainfrom
internal_pipeline_test
Closed

optimize: 优化 code review 输出,避免阻塞#261
CongkeChen wants to merge 2 commits into
mainfrom
internal_pipeline_test

Conversation

@CongkeChen

Copy link
Copy Markdown
Contributor

TAPD: --story=136641053

@CongkeChen CongkeChen closed this Jul 30, 2026
@CongkeChen CongkeChen reopened this Jul 30, 2026
@helloopenworld

Copy link
Copy Markdown
Contributor

AI Code Review

发现的问题

未发现明显阻塞问题。

本次 PR 仅修改 .github/code_review/prompts/findings.md 这一个提示词文件,变更内容为收紧 LLM 输出 JSON 的格式协议(强制首字符 {、末字符 }、禁止过程性文字与 Markdown 围栏、补充 JSON 转义与尾逗号校验),并从描述中移除"阻断判断"字样。

核对下游消费方:.github/code_review/scripts/evaluate_gate.py:13-15.github/code_review/scripts/post_inline_comments.py:11-14 均通过 json.load 读取 findings.json 并按既有字段(severitypathstart_lineend_linetitlebodyinline_candidate)处理,本次未改变这些字段定义或取值约束,因此不构成破坏性变更。移除 JSON 代码块围栏正是为了让模型输出可被 json.loads 直接解析,方向与下游解析逻辑一致,属正向优化。

总结

整体风险低,属于提示词鲁棒性增强,不存在必须修复的问题。

测试建议

暂无额外测试建议。

@helloopenworld

Copy link
Copy Markdown
Contributor

AI Code Review

审查完成。该 PR 仅修改 .github/code_review/prompts/findings.md(LLM 提示词),不涉及任何可执行代码逻辑。我核对了下游消费方 evaluate_gate.pypost_inline_comments.pypost_review_comment.py 以及 ci.yml 等工作流,确认本次变更不会破坏它们的接口或行为。

发现的问题

未发现明显阻塞问题。

本次变更是对提示词的纯文本优化,主要动作合理且自洽:

  • 删除示例 JSON 外的 ```json 代码围栏、强化"首字符必须为 {/末字符必须为 `}`"、补全转义与尾逗号等校验要求,方向上更有利于下游 `json.loads` 一次解析成功,与 `evaluate_gate.py:10``post_inline_comments.py:13` 的解析逻辑一致。
  • 将"阻断判断"从用途描述中删除仅是措辞调整,实际阻断仍由 evaluate_gate.py:14 基于 severity == "critical" 判定,行为不受影响。
  • 空结果用例改为内联 {"findings":[]},与"只输出 JSON"的协议一致。

总结

整体风险很低,不存在必须修复的问题;本次为提示词层面的输出协议收紧,与现有脚本兼容且方向正确。

测试建议

暂无额外测试建议。该目录无自动化测试覆盖,且变更不进入 CI 运行路径;如后续希望保障稳定性,可考虑在 .github/code_review/scripts/ 下对 evaluate_gate.py 的 critical 阻断逻辑补一条最小单元测试,但这不属于本 PR 必需范围。

@helloopenworld

Copy link
Copy Markdown
Contributor

AI Code Review

基于 diff 和上下文分析完成。

发现的问题

🚨 Critical

无。

⚠️ Warning

  • pipeline_test/run_all_examples.sh:41:跳过 skills_code_review_agent 示例未说明原因
    • 该 PR 仅在 SKIPPED_EXAMPLES 中新增一行跳过 examples/skills_code_review_agent/run_agent.py,但未在 commit message 或代码注释中说明跳过原因(该示例实际存在且可运行)。这会让后续维护者无法判断是临时绕过还是永久禁用,也可能掩盖示例本身的真实故障。建议补充跳过原因注释,或在该示例修复后移除此行;若仅为临时跳过,应在跟踪 issue 中记录。
    • 相邻代码:
      "examples/skills_with_cube/run_agent.py"
      "examples/skills_code_review_agent/run_agent.py"  # 缺少原因说明
      )

总结

本 PR 主体是对 .github/code_review/prompts/findings.md 提示词的强化(强制纯 JSON 输出、收紧校验规则)以及流水线跳过一个示例,整体风险较低。不存在必须修复的阻塞问题;唯一值得处理的是新增的示例跳过缺少原因记录,影响可维护性与故障可追溯性。

测试建议

  • 建议补一条针对 findings.md 提示词产出的契约测试:给定一份包含多严重级别、含定位失败场景的 review.md 样本,断言输出能被 json.loads 解析、且首个/末个字符为 {/},以锁定本次强化的输出协议。
  • skills_code_review_agent 跳过是临时的,建议在取消跳过后于 CI 中验证其 run_agent.py 可独立运行通过。

@CongkeChen CongkeChen closed this Aug 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants