一键导入
fix-ci-workflow-path-triggers
Fix CI workflows not triggering on PRs when new directories are added (backends/**, tests/**, etc.)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Fix CI workflows not triggering on PRs when new directories are added (backends/**, tests/**, etc.)
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Add device information query functions through HAL → ins:: API → language bindings
Add --device all/--timer/--info CLI flags to demos across all languages for competition scoring
Add composite signal operators using existing primitives (no dedicated backend kernels needed)
How to port a cusignal Python/CUDA module to ins::signal C++ using Insight7 primitives and HAL
Profile and optimize binding language (Lua/Julia/Python) demo performance to match or exceed C++ baseline
busted loads _insight.so from ~/.luarocks/lib first, not build/ — must copy .so after rebuild
| name | fix-ci-workflow-path-triggers |
| description | Fix CI workflows not triggering on PRs when new directories are added (backends/**, tests/**, etc.) |
| source | auto-skill |
| extracted_at | 2026-06-02T11:08:13.174Z |
When adding new source directories (e.g., backends/, bindings/, demos/), CI
workflows with paths: filters in their pull_request: trigger may not fire on
PRs that modify files in the new directory.
The push: trigger often has more paths than pull_request:. When a PR only
touches backends/cuda/kernels/signal/, workflows missing backends/** in
their pull_request.paths won't run.
GitHub Actions paths: filters use glob patterns. If a workflow has:
on:
push:
paths: ['bindings/**', 'include/**', 'src/**', 'backends/**']
pull_request:
paths: ['bindings/**', 'include/**', 'src/**'] # ← missing backends/**
A PR modifying backends/cuda/kernels/signal/windows/hann.cu will trigger on
push (after merge) but NOT on pull_request (during review).
Ensure pull_request.paths matches push.paths for all workflows:
on:
push:
branches: [main]
paths:
- 'bindings/**'
- 'include/**'
- 'src/**'
- 'backends/**'
- 'CMakeLists.txt'
- '.github/workflows/THIS_FILE.yml'
pull_request:
branches: [main]
paths:
- 'bindings/**'
- 'include/**'
- 'src/**'
- 'backends/**'
- 'CMakeLists.txt'
- '.github/workflows/THIS_FILE.yml'
Key: Always include .github/workflows/THIS_FILE.yml in both triggers so
changes to the workflow itself are tested.
When adding a new top-level directory, audit ALL workflow files:
grep -l "pull_request:" .github/workflows/*.yml
For each, compare push.paths vs pull_request.paths and add any missing entries.
| New Directory | Workflows to Update |
|---|---|
backends/** | cpu_tests, language_bindings, demo_tests |
tests/** | cpu_tests, language_bindings |
demos/** | demo_tests |
patches/** | plot_tests |
cmake/** | cpu_tests, plot_tests |
After fixing, the workflow should show in the PR's "Checks" tab. If it doesn't appear, the path filter is still wrong.