Skip to content

[Feat]: Skip build & lint jobs when no relevant files changed #12

Description

@emaarco

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

  • Typecheck + Build is skipped when only non-source files changed
  • Lint + Format is skipped when only non-source files changed
  • Both jobs still run on source/config/workflow changes

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions