Prhub

#38791 [Bugfix] Fix test mocks after SM100 restriction in #38730

原始 PR 作者 stecasta 合并时间 2026-04-03 01:12 文件变更 1 提交数 1 评论 1 代码增减 +3 / -3

执行摘要

修复因 #38730 更改 API 导致的 TRT-LLM 注意力测试 mock 失效问题。

PR body明确指出这是对#38730的直接跟进,因为#38730将supports_trtllm_attention()中的is_device_capability_family(100)改为is_device_capability(100),但未更新测试mock,导致测试失败。CI在#38730中未捕获此问题,因为'Kernels Attention Test'作业的源文件依赖不包含vllm/utils/flashinfer.py,仅在生产环境夜间测试中发现。

该PR变更简单直接,无需精读。值得关注的是其中揭示的CI依赖管理问题(如#38792所提),这对测试稳定性和CI可靠性有借鉴意义。

讨论亮点

review中无实质性技术讨论,仅包含形式性批准。作者stecasta在Issue评论中建议关注#38792,因为它将添加缺失的源文件依赖,避免未来类似测试中断。

实现拆解

仅修改一个测试文件tests/kernels/attention/test_use_trtllm_attention.py,将三个测试函数中的mock对象从vllm.utils.flashinfer.current_platform.is_device_capability_family替换为vllm.utils.flashinfer.current_platform.is_device_capability,以匹配#38730中生产代码的API变更。

文件 模块 状态 重要度
tests/kernels/attention/test_use_trtllm_attention.py tests/kernels/attention modified 5.0

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

关键符号

test_supports_batch_invariant_disables test_supports_sm100_with_artifactory test_supports_non_sm100_platform

评论区精华

CI 依赖管理缺陷 测试

作者在 Issue 评论中指出 #38730 未触发测试失败是因为 CI 作业的源文件依赖不完整,并建议关注 #38792 以修复此问题。

结论:需通过 #38792 添加缺失依赖,避免未来类似测试中断。 · 已解决

风险与影响

风险极低:仅修改测试mock,不涉及生产代码逻辑。但需确保mock替换完全正确,未遗漏其他相关测试。由于变更简单且针对性强,回归风险可忽略。

影响范围仅限于TRT-LLM注意力相关测试的通过性。修复后确保测试能正确模拟生产环境行为,避免因测试失败误导开发或CI状态。对用户和系统无直接影响。

测试 mock 更新

关联 Issue

未识别关联 Issue

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

完整报告

执行摘要

  • 一句话:修复因#38730更改API导致的TRT-LLM注意力测试mock失效问题。
  • 推荐动作:该PR变更简单直接,无需精读。值得关注的是其中揭示的CI依赖管理问题(如#38792所提),这对测试稳定性和CI可靠性有借鉴意义。

功能与动机

PR body明确指出这是对#38730的直接跟进,因为#38730将supports_trtllm_attention()中的is_device_capability_family(100)改为is_device_capability(100),但未更新测试mock,导致测试失败。CI在#38730中未捕获此问题,因为'Kernels Attention Test'作业的源文件依赖不包含vllm/utils/flashinfer.py,仅在生产环境夜间测试中发现。

实现拆解

仅修改一个测试文件tests/kernels/attention/test_use_trtllm_attention.py,将三个测试函数中的mock对象从vllm.utils.flashinfer.current_platform.is_device_capability_family替换为vllm.utils.flashinfer.current_platform.is_device_capability,以匹配#38730中生产代码的API变更。

关键文件:

  • tests/kernels/attention/test_use_trtllm_attention.py(模块 tests/kernels/attention): 唯一被修改的文件,包含三个需要更新mock的测试函数,直接修复测试与生产代码API不一致问题。

关键符号:test_supports_batch_invariant_disables, test_supports_sm100_with_artifactory, test_supports_non_sm100_platform

评论区精华

review中无实质性技术讨论,仅包含形式性批准。作者stecasta在Issue评论中建议关注#38792,因为它将添加缺失的源文件依赖,避免未来类似测试中断。

  • CI依赖管理缺陷 (testing): 需通过#38792添加缺失依赖,避免未来类似测试中断。

风险与影响

  • 风险:风险极低:仅修改测试mock,不涉及生产代码逻辑。但需确保mock替换完全正确,未遗漏其他相关测试。由于变更简单且针对性强,回归风险可忽略。
  • 影响:影响范围仅限于TRT-LLM注意力相关测试的通过性。修复后确保测试能正确模拟生产环境行为,避免因测试失败误导开发或CI状态。对用户和系统无直接影响。
  • 风险标记:测试mock更新

关联脉络

  • PR #38730 [Bugfix] Fix test mocks after SM100 restriction in #38730: 本PR直接跟进#38730,修复其引入的测试mock不一致问题。
  • PR #38773 自动回滚PR(具体标题未知): 本PR替代了自动回滚PR #38773,说明原变更导致测试失败触发了自动回滚机制。
  • PR #38792 添加缺失源文件依赖的PR(具体标题未知): 作者在Issue评论中提及,该PR旨在修复CI依赖管理缺陷,避免未来类似测试中断。

参与讨论