Skip to content

Revert broken sgl_kernel exclusion patterns in paths-filter#18193

Merged
Kangyan-Zhou merged 1 commit intosgl-project:mainfrom
Kangyan-Zhou:fix_detect_file_change
Feb 3, 2026
Merged

Revert broken sgl_kernel exclusion patterns in paths-filter#18193
Kangyan-Zhou merged 1 commit intosgl-project:mainfrom
Kangyan-Zhou:fix_detect_file_change

Conversation

@Kangyan-Zhou
Copy link
Collaborator

Summary

This PR reverts commit cd31540 ("Improve Per Commit Test job filtering for sglang-kernel (#18054)") which introduced broken exclusion patterns in the sgl_kernel filter.

Problem

The exclusion patterns added in #18054 caused dorny/paths-filter to incorrectly mark sgl_kernel=true for all PRs, even those that don't touch any sgl-kernel/ files.

For example, PR #17706 only modified:

  • python/sglang/srt/layers/radix_attention.py
  • python/sglang/srt/model_executor/piecewise_cuda_graph_runner.py
  • python/sglang/srt/models/qwen3_next.py
  • test/registered/models/test_qwen3_next_models_pcg.py

But the CI run incorrectly detected sgl_kernel=true and triggered unnecessary kernel builds/tests.

Root Cause

The dorny/paths-filter action uses predicate-quantifier: 'some' by default, meaning if ANY pattern matches, the filter returns true.

The exclusion patterns like !sgl-kernel/pyproject_cpu.toml are interpreted as: "match any file that is NOT sgl-kernel/pyproject_cpu.toml".

This means python/sglang/srt/layers/radix_attention.py matches the exclusion pattern (because it's not that file), causing the entire sgl_kernel filter to return true.

From the CI logs:

##[group]Filter sgl_kernel = true
Matching files:
python/sglang/srt/layers/radix_attention.py [modified]
python/sglang/srt/model_executor/piecewise_cuda_graph_runner.py [modified]

Solution

Revert to the simple sgl-kernel/** pattern which correctly matches only files under the sgl-kernel/ directory.

If we want to exclude certain files in the future, we should use one of these approaches:

  1. picomatch negation syntax: sgl-kernel/!(pyproject_cpu.toml|README.md)
  2. predicate-quantifier: 'every': Requires restructuring all filters
  3. Explicit include patterns: List only the directories/files we want to match

References:

Test plan

  • Verify that PRs not touching sgl-kernel/ no longer trigger kernel builds
  • Verify that PRs touching sgl-kernel/ still correctly trigger kernel builds

🤖 Generated with Claude Code

@gemini-code-assist
Copy link
Contributor

Note

Gemini is unable to generate a summary for this pull request due to the file types involved not being currently supported.

@github-actions github-actions bot added the amd label Feb 3, 2026
@Kangyan-Zhou Kangyan-Zhou merged commit 0db6fd4 into sgl-project:main Feb 3, 2026
53 of 59 checks passed
charlesHsuGG pushed a commit to charlesHsuGG/sglang that referenced this pull request Feb 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant