目标
定义并落地自动合并的门禁自身 SLI(用数据知道"是否成功"),外加固定成本的人类环节:每周随机抽样 3 个已自动合并的 PR 做审计。把 review 从 100% 覆盖降为统计抽样——这是"人类不成为瓶颈"的正确形态。
背景(源自 #81 §8)
自动化程度不能凭感觉。核心指标:自动合并率、人类触碰数/merged PR(目标→0)、门禁逃逸率(被 revert + 事后发现的问题 / 周——真正的风险指标,必须有分母)、卡死 PR 数与停留 P95、gate 假红率、熵增指标(抑制标记净增、覆盖率趋势、新增依赖数)。抽样审计让人类判断的成本与 PR 数量脱钩——不是消灭人类判断。
涉及文件
CI-Workflows 或 .github 仓新增 SLI 采集脚本(scripts/sli-report.sh 之类)
- 周期 workflow(每周跑,产出 issue/讨论区报告)
governance/policy/(指标定义、阈值、抽样参数:每周 3 个、随机种子可复现)
- 审计 issue 模板
执行步骤
- 实现 SLI 采集(数据源:GitHub API——PR 时间线、reviews、check runs、revert 事件、workflow runs):
- 自动合并率 = auto-merged / total merged PR;
- 人类触碰数 / merged PR(人工 comment/review/手动合并/手动 rerun 计数);
- 门禁逃逸率 = (revert 数 + drift-check/生产事后发现数) / 周,带分母;
- 卡死 PR 数、PR 停留时长 P95;
- gate 假红率(flaky 重试才通过的占比,消费 P2-9 的 flaky 记录);
- 熵增:抑制标记净增(消费 P2-2 计数)、覆盖率趋势(消费 P2-3 数据)、新增依赖数(消费 P2-5 数据)。
- 周期 workflow 每周产出报告 issue(含周环比),关键指标越阈值自动升级(如逃逸率 >0 连续两周 → P1 issue)。
- 每周抽样审计:自动开审计 issue,含随机 3 个本周已自动合并 PR 的链接 + 审计 checklist;随机种子记录在 issue 中(可复现、防"挑软的抽"质疑)。
- 审计发现的问题回流:逃逸样本归因后回写指标,必要时触发门禁补强 issue。
验收标准
- 每周自动产出 SLI 报告,六项指标齐全且分母正确。
- 每周自动开出含 3 个随机样本的审计 issue,种子可复现。
- 指标越阈值自动升级。
测试方法(预先指定)
T1 指标正确性(核心,回放测试):
- 用过去 30 天的真实组织数据离线跑采集脚本。
- 人工用 gh 命令独立核算其中 3 个指标(自动合并率、人类触碰数、卡死 PR 数——抽样核对,如取 2 个仓 × 2 周)。
- 断言脚本输出与人工核算完全一致;不一致先修脚本再谈上线。
T2 分母陷阱(单元级):构造 fixture 数据(JSON 形式的 PR/review/run 记录):
- 零 PR 的周 → 各比率指标输出 "N/A" 而非除零崩溃或 100%;
- 全人工合并的周 → 自动合并率 = 0 且告警;
- 含 revert 事件的周 → 逃逸率分子正确计入。
T3 抽样可复现与无偏(核心):
- 同一周数据 + 同一 seed 跑两次 → 断言抽中样本完全相同(可复现)。
- 不同 seed → 样本不同(非固定)。
- 统计粗检:对模拟的 100 个 PR 总体跑 1000 次抽样,断言每个 PR 被抽中频率在期望值的统计容差内(卡方粗检 p>0.01)——证明抽样无系统性偏好。
T4 端到端(正向):workflow 手动触发一次 → 断言产出 SLI 报告 issue + 审计 issue,格式符合模板,链接可点。
T5 阈值升级(注入):注入"逃逸率连续两周 >0"的 fixture → 断言自动开出 P1 升级 issue。
依赖
- P2-2 / P2-3 / P2-5 / P2-9(熵增与假红指标消费这些卡的数据产出;它们未落地前对应指标可先标记 "pending" 上线,不阻塞本卡)
- P2-6(逃逸率的 revert 数据源)
目标
定义并落地自动合并的门禁自身 SLI(用数据知道"是否成功"),外加固定成本的人类环节:每周随机抽样 3 个已自动合并的 PR 做审计。把 review 从 100% 覆盖降为统计抽样——这是"人类不成为瓶颈"的正确形态。
背景(源自 #81 §8)
自动化程度不能凭感觉。核心指标:自动合并率、人类触碰数/merged PR(目标→0)、门禁逃逸率(被 revert + 事后发现的问题 / 周——真正的风险指标,必须有分母)、卡死 PR 数与停留 P95、gate 假红率、熵增指标(抑制标记净增、覆盖率趋势、新增依赖数)。抽样审计让人类判断的成本与 PR 数量脱钩——不是消灭人类判断。
涉及文件
CI-Workflows或.github仓新增 SLI 采集脚本(scripts/sli-report.sh之类)governance/policy/(指标定义、阈值、抽样参数:每周 3 个、随机种子可复现)执行步骤
验收标准
测试方法(预先指定)
T1 指标正确性(核心,回放测试):
T2 分母陷阱(单元级):构造 fixture 数据(JSON 形式的 PR/review/run 记录):
T3 抽样可复现与无偏(核心):
T4 端到端(正向):workflow 手动触发一次 → 断言产出 SLI 报告 issue + 审计 issue,格式符合模板,链接可点。
T5 阈值升级(注入):注入"逃逸率连续两周 >0"的 fixture → 断言自动开出 P1 升级 issue。
依赖