执行摘要
修复 serving 基准配置 JSON 并加校验 hook
Issue #43537 指出 .buildkite/performance-benchmarks/tests/serving-tests.json 在 main 上是无效 JSON,jq . 报错 parse error: Objects must consist of key:value pairs at line 35, column 5,Python json.load 同样失败,导致默认 serving benchmark 配置无法被 run-performance-benchmarks.sh 读取。git blame 定位该问题由 PR #43262 引入。PR body 明确说明需要移除重复对象并增加校验守卫,确保未来配置变更能快速失败。
该 PR 值得快速阅读,是一个典型的 CI 防御性改进案例。重点在于:pre-commit hook 的作用域设计(files 正则限定目录)以及将 rev 固定为 commit hash 的做法,对于其他类似配置校验场景有参考价值。
Review 中主要有两个讨论点:
- hook 版本固定:维护者 hmellor 在评论中要求将
rev由 tagv5.0.0改为 commit hash,并给出建议值3e8a8703264a2f4a69428a0aa4dcb512790b2c8c。该建议已被采纳,最终提交中已使用 commit hash。 - PR 价值确认:reviewer wjabbour 在批准时指出「serving-tests 已在 PR 打开后修复,但 pre-commit 添加仍然有价值」,同时说明自己不是 maintainer,需要 maintainer 推动合入。
参与讨论