perf(ci): skip build checks for Markdown-only pull requests
Merged
VI
1mo ago+118+118+012345678901234567890123456789-3-3-0123456789
Summary
Markdown-only pull requests currently install dependencies and run all three build/test jobs. Classify changed paths before those jobs and skip them when every changed path ends in .md.
pull request with only Markdown changes: skip build/test jobs
other changes, main pushes, manual runs, or detection failure: run full suite
Keep required check names stable and preserve PR title validation, dependency review, and GitHub-managed CodeQL. Disable rename detection so renaming code to Markdown still runs the full suite.
Evidence
- Before: all three jobs ran unconditionally; the new workflow test failed because no changed-file detector existed.
- After:
npm run test:cipasses all 10 cases against temporary Git repositories, including mixed changes, renames, deletions, empty diffs, missing refs, and non-PR events. npm run test:pr-title: 29 passing tests.- Targeted TypeScript checking, Biome lint, and
git diff --checkpass. - Full hosted CI and runtime savings are not yet verified. This PR changes executable files, so it runs the full suite.
Merge Danger
Door: two-way
Revert the workflow change to restore unconditional checks.
Blast Radius: CI
Markdown-only PRs skip build/test coverage. All other file types run the full suite; detector failures also run it. No branch-protection or CodeQL settings change.