gitlink-cli/demo/pr-guard-architecture.md

6.4 KiB
Raw Blame History

代码质量看门人 · 工作流说明与架构(子任务三)

端到端自动化工作流PR 提交后自动跑完「采集 → AI Review → CI → 评论 → 质量判定/合并」。 对应 Skillskills/gitlink-pr-guard/SKILL.md;可复现脚本:demo/pr-guard-workflow.sh


一、工作流架构图

        ┌─────────────────────────────────────────────┐
        │           触发PR 提交 / 更新                │
        │       (或用户:帮我把关 PR #<id>           │
        └──────────────────────┬──────────────────────┘
                               ▼
        ┌─────────────────────────────────────────────┐
        │  Step 1  采集 PR 变更                         │
        │  pr +view  →  pr +files  →  pr +diff --stat  │
        │  产出PR 详情 / 变更文件 / diff 统计          │
        └──────────────────────┬──────────────────────┘
                               ▼
        ┌─────────────────────────────────────────────┐
        │  Step 2  AI Review复用 code-review 逻辑)   │
        │  逐文件分析 diff → 分级找问题                  │
        │  🔴 Critical / 🟡 Warning / 🔵 Suggestion     │
        └──────────────────────┬──────────────────────┘
                               ▼
        ┌─────────────────────────────────────────────┐
        │  Step 3  CI 检查                              │
        │  ci +builds → 匹配分支最新构建 → 状态          │
        │  success / failure / pending                  │
        └──────────────────────┬──────────────────────┘
                               ▼
        ┌─────────────────────────────────────────────┐
        │  Step 4  发布质量看门人报告                    │
        │  api POST .../pulls/:id/reviews              │
        │  报告:判定 + 问题清单 + CI + 处置建议          │
        └──────────────────────┬──────────────────────┘
                               ▼
        ┌─────────────────────────────────────────────┐
        │  Step 5  质量判定(门禁规则)                  │
        │  ┌─────────────────────────────────────┐    │
        │  │ 0 Critical + CI success → ✅ 合并    │    │
        │  │ 有 Critical            → 🔴 请求修改 │    │
        │  │ CI failure             → 🔴 请求修改 │    │
        │  └─────────────────────────────────────┘    │
        │  达标+确认 → pr +merge                       │
        └─────────────────────────────────────────────┘

二、串联的 CLI 命令 / Skill满足"≥3 步"

Step 命令域 具体调用 类型
1 pr pr +view / +files / +diff 采集
2 code-review Review 分析逻辑(分级找问题) AI 分析
3 ci ci +builds / +log 采集
4 api POST .../pulls/:id/reviews 写(评论)
5 pr pr +merge(达标确认后) 写(合并)

共串联 4 个命令域 + 5 个步骤 + 2 处写操作,远超任务三"≥3 步"要求。


三、与子任务二的区别(关键)

维度 子任务二 Skill如 code-review 子任务三 本工作流pr-guard
交付单位 单个 Skill 串联多步的完整解决方案
职责 只做 Review Review + CI + 评论 + 合并决策
触发 用户要 Review PR 提交自动跑完整流水线
决策 输出意见 质量门禁判定(通过/拒绝/合并)

code-review 是"审查员"pr-guard 是"看门人"——后者在前者基础上加了 CI 维度和合并决策,形成完整门禁。


四、可复现性(对应交付要求)

要求 满足方式
串联 ≥3 步 CLI/Skill 5 步、4 域
含自定义 Skill 兼容 Agent gitlink-pr-guard SKILL.mdClaude Code 可读)
可复现执行脚本 demo/pr-guard-workflow.sh(参数化)
真实 GitLink 项目演示 登录后对真实 PR 运行(见下)
工作流说明 + 架构图 本文档

五、真实演示步骤(登录后)

# 1. 登录
gitlink-cli auth login

# 2. 找一个真实 PR
gitlink-cli pr +list --owner <owner> --repo <repo> --state open

# 3. 跑质量看门人流水线脚本采集AI 在 Claude Code 做 Step2 分析)
bash demo/pr-guard-workflow.sh <owner> <repo> <pr_id>

# 或在 Claude Code 里自然语言触发:
# "读 skills/gitlink-pr-guard/SKILL.md帮我把关 <owner>/<repo> 的 PR #42"

预期 AI 行为:读 pr-guard SKILL.md → 按工作流跑 5 步 → 输出质量看门人报告 + 判定(通过/拒绝)+ 合并建议。


六、交付清单

  • skills/gitlink-pr-guard/SKILL.md — 工作流定义 + 门禁规则 + 报告模板
  • demo/pr-guard-workflow.sh — 可复现脚本5 步串联)
  • demo/pr-guard-architecture.md — 本文档(说明 + 架构图)
  • 真实项目演示(登录后运行 + 截图/录屏)
  • 报告(暂缓,后续按统一策略补《新需求构思》《变更影响测试》)