SuperAPI AI 工具集

pr-risk-scoring

编程与开发

查看项目

更新于 10-15 22:16

技能介绍

用途:对仓库中所有开放 PR 按 6 维风险评分标准打分,生成 CSV 报告,用于重新评分、评级或分诊开放 PR。

主要能力:六个评分维度为 Zone(0-10,涉及文件区域,认证核心高于传输、数据模型、业务逻辑、UI、文档)、Size(0-5,改动行数与文件数)、Structural(0-5,迁移、中间件顺序、新路由)、Security(0-5,安全不变量影响)、Test Gap(0-5,有生产代码改动却缺测试的扣分)、Performance(0-5,数据库连接压力、N+1 风险、缓存绕过)。按总分分档:1-Deep(20-35)、2-Standard(11-19)、3-Focused(5-10)、4-Quick(0-4)。

使用方式:先获取 PR 元数据,用 gh pr list --json number,title,url,additions,deletions,changedFiles,author,labels 保存到临时文件,默认 limit 为 30,须使用 --limit 500 或更高,并核对数量与 GitHub 一致;再获取文件列表与审批数,对每个 PR 执行 gh pr diff <number> --name-only 保存到每个 PR 的文件,并用 gh pr view <number> --json reviews 生成 pr_number,approvals 两列 CSV;随后运行评分脚本:SKILL_DIR="$(git rev-parse --show-toplevel)/.claude/skills/pr-risk-scoring"; OUTPUT="$(git rev-parse --show-toplevel)/todo/pr_risk_scores.csv"; mkdir -p "$(dirname "$OUTPUT")"; python3 "$SKILL_DIR/score_prs.py" /tmp/all_prs.json /tmp/pr_files "$OUTPUT" /tmp/pr_approvals.csv。脚本会向 stdout 打印分档分布摘要。最后展示分档数量、风险最高的 10 个 PR(编号、总分、档位、标题)、预计评审时长(档 1:4-8 小时,档 2:1-2 小时,档 3:30-60 分钟,档 4:5-15 分钟)以及 CSV 位置。

限制:维度 3-6 仅使用文件名启发式判断,Tier 1 和 Tier 2 的 PR 评审者应依据 review_rubric.md 应用完整标准;每个 PR 一次 API 调用,100 多个 PR 约需 2-3 分钟;空的 diff 的 PR 会失败,属预期情况;如修改区域映射或评分权重,需同时更新 score_prs.py(自动评分的唯一真实来源)和 review_rubric.md(完整标准的人类可读参考)。