Maintainer Review — PR #
【免费下载链接】ArchonThe first open-source harness builder for AI coding. Make AI coding deterministic and repeatable.项目地址: https://gitcode.com/GitHub_Trending/archon3/Archon
Verdict
<one of: ready-to-merge | minor-fixes-needed | blocking-issues>
Summary
<2-3 sentence overview. What the PR does, what's good, what's blocking.>
Findings
CRITICAL (N)
- file:line:
- From: <which aspect(s) flagged this>
- Suggested fix:
HIGH (N)
- (same format)
MEDIUM (N)
- (same format)
LOW / NITPICK (N)
- (consolidated)
CLAUDE.md compliance
Aspects run
- code-review: <yes/no, summary line>
- error-handling: <yes/no, summary line>
- test-coverage: <yes/no, summary line>
- comment-quality: <yes/no, summary line>
- docs-impact: <yes/no, summary line>
Aspects skipped
<list with reason — e.g. "test-coverage skipped: no source code changes detected by review-classify".>
逐字段要点: - **Verdict** 三态(`ready-to-merge` / `minor-fixes-needed` / `blocking-issues`)与各分面命令 Summary 中的判定词一致,保证整条流水线口径统一; - **Findings** 中每条都带 `From` 字段标注来源分面,便于维护者理解"哪个 Agent 发现了它",同时印证了去重的必要性(同一问题可能标多个来源); - **CLAUDE.md compliance** 直接从 code-review 分面"搬运"违规清单,合成器不做二次判定,只负责转述([maintainer-review-code-review.md](https://link.gitcode.com/i/92e85ab2c46ca458bce1c1ca4e6d21a3) 中该字段定义为"violations carried forward"); - **Aspects skipped** 必须给出理由,典型如分类器判定"无源码变更"而跳过 test-coverage。 这套"结论先行 + 分级清单 + 来源追溯"的结构,与 Archon 仓库自身的工程规范(CLAUDE.md 中强调的类型安全、结构化日志、错误必须显式暴露等原则)一脉相承:评审报告本身也要可追溯、可执行、不虚构。 ## 五、Phase 4 编写 review-comment.md:面向贡献者的 PR 评论草稿 第二份产物是 `$ARTIFACTS_DIR/review/review-comment.md`,它是最终会发布到 PR 上的 Markdown 正文,维护者可以直接复制粘贴或编辑后发布。命令文档给出的格式: ```markdown ## Review Summary **Verdict**: <ready-to-merge | minor-fixes-needed | blocking-issues> <2-3 sentence overview written for the PR author, not for the maintainer.> ### Blocking issues - (list CRITICAL findings, file:line, fix suggestion) ### Suggested fixes - (list HIGH findings) ### Minor / nice-to-have - (list MEDIUM + LOW combined) ### Compliments <optional: 1-2 things the PR did particularly well — patterns, tests, docs. Keep brief and genuine.> --- *Reviewed via maintainer-review-pr workflow (Pi/Minimax). Aspects run: <list>.*命令文档对 PR 评论的语气有明确约束:
- 直接称呼贡献者("you"、"your change");
- 必须具体:file:line + 具体修复建议;
- 避免官腔(no corporate-speak)、避免过度吹捧、不做点名式 AI 署名(页脚那一行就足够了)。
注意与 synthesis.md 的读者差异:synthesis.md 写给维护者(含 skipped 原因、跨分面来源等内部信息),review-comment.md 写给 PR 作者(只保留阻塞项、建议修复、小事、真诚的赞美)。同一批 findings 要面向两类读者做两次视角转换,这正是"合成"而非"搬运"的体现。
评论发布是自动化的:工作流中post-review节点在合成成功后执行gh pr comment "$PR_NUM" --body-file "$ARTIFACTS_DIR/review/review-comment.md"(见 maintainer-review-pr.yaml),并校验评论文件必须存在否则报错。这意味着合成器写出的review-comment.md是流水线的"可交付物"之一,其格式正确性直接决定下游发布是否成功。
六、Phase 5 RETURN 与 CHECKPOINT:单行摘要与自检清单
合成器最终只返回一行摘要,供工作流日志与上游节点消费:
Synthesized: <verdict>. <N> CRITICAL / <N> HIGH / <N> MEDIUM / <N> LOW findings across <K> aspects. Comment drafted at $ARTIFACTS_DIR/review/review-comment.md.返回前需通过自检清单(CHECKPOINT):
$ARTIFACTS_DIR/review/synthesis.md已写入;$ARTIFACTS_DIR/review/review-comment.md已写入;- findings 已跨分面去重;
- 严重度排序正确;
- 跳过的分面已附理由。
"只返回一行摘要、完整内容留在产物文件中"这一约定与五个分面命令完全一致(它们也都要求返回单行总结、不要把完整 findings 放进响应),保证了整条流水线节点间通信的轻量化——后续report节点通过读取产物而非解析响应来生成 final-report.md,且明确要求"数字必须与 synthesis.md 一致,不得编造 findings 数量"。
七、源码级佐证:从 workflow 定义看合成器的调用契约
结合 maintainer-review-pr.yaml 可进一步确认合成器的真实调用环境:
合成节点(收敛点):
- id: synthesize-review command: maintainer-review-synthesize depends_on: [code-review, error-handling, test-coverage, comment-quality, docs-impact] trigger_rule: one_success context: fresh【免费下载链接】ArchonThe first open-source harness builder for AI coding. Make AI coding deterministic and repeatable.项目地址: https://gitcode.com/GitHub_Trending/archon3/Archon
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考