# PR #22138 完整报告

- 仓库：`sgl-project/sglang`
- 标题：[CI]Temporary ban auto benchmark tool test
- 合并时间：2026-04-05 14:18
- 原文链接：http://prhub.com.cn/sgl-project/sglang/pull/22138

---

# 执行摘要

- 一句话：临时禁用自动化基准测试工具单元测试，解决 CI 不稳定性问题。
- 推荐动作：该 PR 变更简单，但揭示了 CI 测试稳定性的管理策略。建议关注：1）团队如何处理 flaky 测试的权衡（快速修复 vs 精细处理）；2）后续是否会有 PR 恢复测试或关联跟踪 issue。对于理解 CI 维护模式有参考价值。

# 功能与动机

PR body 中引用了 CI 失败链接（https://github.com/sgl-project/sglang/actions/runs/23987407407/job/69981448837?pr=21405），表明自动化基准测试工具测试在 CI 中不稳定，需要临时禁用以恢复 CI 正常运行。

# 实现拆解

仅修改一个文件：test/registered/unit/test_auto_benchmark_tools.py。在 register_cuda_ci 调用中添加 disabled="Flaky test" 参数，将整个测试模块标记为禁用，从而在 CI 中跳过该模块的所有测试。

关键文件：
- `test/registered/unit/test_auto_benchmark_tools.py`（模块 测试基础设施）: 唯一修改的文件，通过添加 disabled 参数禁用整个测试模块，是 PR 的核心变更点。

关键符号：register_cuda_ci


# 评论区精华

review 中 gemini-code-assist[bot] 指出：1）禁用整个测试文件范围过宽，会降低 CI 覆盖率，因为模块中可能包含稳定测试；2）建议识别具体不稳定的测试并用 @unittest.skip 单独跳过；3）建议在 disabled 原因中包含跟踪 issue 链接以便后续修复。PR 作者未回应这些建议，直接合并了 PR。

- 禁用测试的范围合理性 (testing): PR 作者未采纳建议，直接合并了禁用整个模块的变更。
- 测试禁用跟踪 (testing): PR 中仅使用 "Flaky test" 作为原因，未关联 issue，可能增加技术债务。

# 风险与影响

- 风险：1. 测试覆盖风险：禁用整个模块会丢失对自动化基准测试工具功能的 CI 验证，可能掩盖后续回归。2. 技术债务风险：缺少跟踪 issue，可能导致测试被永久禁用而遗忘。3. 维护风险：未按建议精细处理，后续修复需重新分析具体不稳定测试。
- 影响：1. 对 CI 系统：立即解决测试不稳定性，恢复 CI 通过率，但牺牲了部分测试覆盖。2. 对团队：减少了 CI 噪声，但需注意自动化基准测试工具相关变更可能缺乏即时验证。3. 对用户：无直接影响，属于内部测试基础设施调整。
- 风险标记：测试覆盖降低 , 缺少跟踪 issue

# 关联脉络

- PR #21736 [Benchmark] Add auto benchmark tool with YAML-driven server flag search and canonical dataset format: 该 PR 添加了自动化基准测试工具，本 PR 禁用的测试正是针对该工具的单元测试，两者直接相关。
- PR #22119 feat: CI auto-bisect workflow for automated regression analysis: 同属 CI 基础设施改进，本 PR 处理 flaky 测试，22119PR 提供自动化回归分析工具，可辅助诊断类似问题。