Summary
Add path filters to the CI workflow so the Typecheck + Build and Lint + Format jobs are skipped when no source or config files have been modified.
Motivation
Currently both CI jobs run on every push and PR to main, regardless of what changed. Editing docs, issue templates, or other non-code files still triggers a full build and lint run, wasting CI minutes and slowing feedback.
Proposed Solution
Add paths filters to the on.push / on.pull_request triggers in .github/workflows/ci.yml. Relevant path patterns:
**/*.ts
**/package.json
pnpm-lock.yaml
tsconfig*.json
eslint.config.*
.prettierrc*
.github/workflows/ci.yml
Acceptance Criteria
Alternatives Considered
Using a dedicated path-filter action (e.g., dorny/paths-filter) for finer per-job control — viable but adds a dependency; native paths: triggers are simpler.
Summary
Add path filters to the CI workflow so the
Typecheck + BuildandLint + Formatjobs are skipped when no source or config files have been modified.Motivation
Currently both CI jobs run on every push and PR to
main, regardless of what changed. Editing docs, issue templates, or other non-code files still triggers a full build and lint run, wasting CI minutes and slowing feedback.Proposed Solution
Add
pathsfilters to theon.push/on.pull_requesttriggers in.github/workflows/ci.yml. Relevant path patterns:**/*.ts**/package.jsonpnpm-lock.yamltsconfig*.jsoneslint.config.*.prettierrc*.github/workflows/ci.ymlAcceptance Criteria
Typecheck + Buildis skipped when only non-source files changedLint + Formatis skipped when only non-source files changedAlternatives Considered
Using a dedicated path-filter action (e.g.,
dorny/paths-filter) for finer per-job control — viable but adds a dependency; nativepaths:triggers are simpler.