From 968266da7f99349aea152de15cf73bd15a09a403 Mon Sep 17 00:00:00 2001 From: bjoernbethge Date: Thu, 15 Jan 2026 14:04:43 +0100 Subject: [PATCH] Add path filters to skip builds on documentation-only changes Added paths-ignore filters to workflows to skip CI/security runs when only documentation files are changed: - PR Claude Code Review workflow - CI workflow (lint, typecheck, test, build) - CodeQL security analysis - Semgrep security scan Exception: Did not add filters to scheduled-claude-code-docs-sync.yml as it needs to run on markdown changes. Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/ci.yml | 12 ++++++++++++ .github/workflows/codeql.yml | 12 ++++++++++++ .github/workflows/pr-claude-code-review.yml | 6 ++++++ .github/workflows/semgrep.yml | 12 ++++++++++++ 4 files changed, 42 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 426ea9e..fdab506 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,8 +3,20 @@ name: CI on: push: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' pull_request: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' concurrency: group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index eff037e..2559f2f 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -3,8 +3,20 @@ name: CodeQL Analysis on: push: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' pull_request: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' schedule: # Run weekly on Wednesday at 3 AM UTC - cron: '0 3 * * 3' diff --git a/.github/workflows/pr-claude-code-review.yml b/.github/workflows/pr-claude-code-review.yml index dc724c0..d38127a 100644 --- a/.github/workflows/pr-claude-code-review.yml +++ b/.github/workflows/pr-claude-code-review.yml @@ -3,6 +3,12 @@ name: PR - Claude Code Review on: pull_request: types: [opened, synchronize, reopened] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' issue_comment: types: [created] diff --git a/.github/workflows/semgrep.yml b/.github/workflows/semgrep.yml index 599069c..9b4d330 100644 --- a/.github/workflows/semgrep.yml +++ b/.github/workflows/semgrep.yml @@ -3,8 +3,20 @@ name: Semgrep Security Scan on: push: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' pull_request: branches: [main] + paths-ignore: + - '**.md' + - 'docs/**' + - 'LICENSE' + - '.gitignore' + - '**.txt' schedule: # Run weekly on Monday at 8 AM UTC - cron: '0 8 * * 1'