gerrit-integration
能力
面向 Gerrit 代码评审系统,提供 Agent 级别的 PR 审核闭环。
| Tool | 对应 Gerrit REST API |
|---|---|
gerrit_fetch_change | GET /changes/{id}/detail — 拉取 change 详情 |
gerrit_get_diff | GET /changes/{id}/revisions/{rev}/patch — 拉取 diff |
gerrit_post_review | POST /changes/{id}/revisions/{rev}/review — 打分 + 评论(Code-Review 标签 -2 ~ +2) |
ask_user | 模糊场景向用户确认(比如打 -2 前) |
典型流程
Code-Review 标签语义
| 分值 | 含义 |
|---|---|
| +2 | 同意合并(通常只有 maintainer 才能给) |
| +1 | 认可但还需有人 +2 |
| 0 | 不表态 |
| -1 | 不建议合并,有待讨论 |
| -2 | 坚决拒绝,阻止合并 |
Agent 通常只在明确检测到严重问题时给 -1 或 -2,并附带具体证据。
安全 / 合规
| 事项 | 说明 |
|---|---|
| 凭据 | 通过 credential adapter 注入 Gerrit HTTP 密码 / OAuth Token |
| 租户隔离 | 每个租户独立凭据 |
| 审计 | 所有 post_review 操作记录到 ledger |
| 防误伤 | 打 -2 前默认先 ask_user 确认 |
触发方式
自然语言示例:
- "拉 Gerrit change 87654 看看"
- "对这个 change 做一次代码审核,然后回帖"
- "如果有严重 Bug 就打 -1"
与其他技能的配合
- git — fetch change refs 到本地
- code-review — L2 语义评审
- L1 工具链 — 静态分析
- html-report — 生成审核报告看板