Prhub

#21937 [CI] Fix test suite names and add suite validation

原始 PR 作者 ispobock 合并时间 2026-04-03 23:47 文件变更 20 提交数 13 评论 6 代码增减 +341 / -24

执行摘要

修复 CI 测试套件名称并添加验证逻辑,提升测试编排准确性。

从文件变更和 review 讨论推断,动机是修复测试套件名称以标准化 CI 测试编排,并添加验证机制以防止测试被错误注册到不匹配的套件。review 评论中 gemini-code-assist[bot] 提到当前验证逻辑有 bug,需要修复。

该 PR 值得精读,特别是 test/run_suite.py 中的验证机制设计,展示了 CI 测试框架的健壮性改进。关注套件命名标准化策略和验证逻辑的潜在优化点,如 review 中提到的后端感知验证。

讨论亮点

review 中 gemini-code-assist[bot] 指出验证逻辑的缺陷:当前 validate_all_suites 使用平铺的套件集合,可能导致测试错误分配到其他后端的套件,且未涵盖 AMD 和 NPU 后端。这被视为一个待解决的问题,但 PR 已合并,建议在后续 PR 中修复。

实现拆解

实现分为两部分:一是修改多个测试文件中的 register_cuda_ci 或 register_cpu_ci 调用,将套件名称从 'stage-a-cpu-only' 改为 'stage-a-test-cpu',从 'stage-b-test-small-1-gpu' 改为 'stage-b-test-1-gpu-small';二是在 test/run_suite.py 中添加 validate_all_suites 函数和相关数据结构(如 OTHER_SUITES),用于检查测试是否注册到有效的套件。此外,新增了测试文件 test/registered/sampling/test_fused_temperature_softmax.py,但由于数值精度问题被禁用。

文件 模块 状态 重要度
test/run_suite.py CI 测试框架 modified 8.0
test/registered/sampling/test_fused_temperature_softmax.py 测试套件 added 4.0
test/registered/unit/utils/test_subprocess_watchdog.py 单元测试 modified 3.0

关键符号

validate_all_suites

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

验证逻辑的缺陷 正确性

gemini-code-assist[bot] 指出当前验证逻辑在 validate_all_suites 中使用平铺套件集合,可能导致跨后端错误注册,且未涵盖 AMD 和 NPU 后端,需要后端感知的验证。

结论:问题被指出,但 PR 已合并,建议在后续 PR 中修复验证逻辑。 · 未解决

风险与影响

主要风险包括验证逻辑不完善可能导致测试错误分配,影响 CI 结果准确性;套件名称变更可能影响现有 CI 配置的兼容性;新增的测试文件被禁用,未来启用时需解决数值精度问题。具体风险点:test/run_suite.py 中的 validate_all_suites 函数需要后端感知的验证逻辑。

对用户无直接影响,属于内部 CI 改进。对系统提升了测试套件管理的准确性和可靠性,减少因配置错误导致的 CI 失败。对团队简化了测试维护,提高了开发效率,但需要关注验证逻辑的后续修复。

验证逻辑不完善 套件名称变更可能影响 CI

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论