From b38cfd21861b5552c2831dca5582a454f4fca59a Mon Sep 17 00:00:00 2001 From: Kevin Turcios Date: Thu, 9 Apr 2026 04:59:24 -0500 Subject: [PATCH 1/3] ci: scope workflow triggers to relevant paths - codeflash-optimize.yaml: replace paths: ['**'] wildcard with targeted filters - mypy.yml: add path filters (was firing on every PR/push including docs) - prek.yaml: add path filters (was firing on every PR) - unit-tests.yaml: add path filters (was firing on every PR/push) Docs-only, README, experiment, and LICENSE changes no longer trigger these workflows. Saves ~20 workflow runs per docs-only PR. --- .github/workflows/codeflash-optimize.yaml | 6 +++++- .github/workflows/mypy.yml | 12 ++++++++++++ .github/workflows/prek.yaml | 10 +++++++++- .github/workflows/unit-tests.yaml | 18 ++++++++++++++++++ 4 files changed, 44 insertions(+), 2 deletions(-) diff --git a/.github/workflows/codeflash-optimize.yaml b/.github/workflows/codeflash-optimize.yaml index ee8362df4..fd0603adb 100644 --- a/.github/workflows/codeflash-optimize.yaml +++ b/.github/workflows/codeflash-optimize.yaml @@ -3,7 +3,11 @@ name: CodeFlash on: pull_request: paths: - - '**' # Trigger for all paths + - 'codeflash/**' + - 'tests/**' + - 'pyproject.toml' + - 'uv.lock' + - '.github/workflows/codeflash-optimize.yaml' workflow_dispatch: diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 34fc2fe9e..ded12eaee 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -4,7 +4,19 @@ on: push: branches: - main + paths: + - 'codeflash/**' + - 'pyproject.toml' + - 'uv.lock' + - 'mypy_allowlist.txt' + - '.github/workflows/mypy.yml' pull_request: + paths: + - 'codeflash/**' + - 'pyproject.toml' + - 'uv.lock' + - 'mypy_allowlist.txt' + - '.github/workflows/mypy.yml' concurrency: group: ${{ github.workflow }}-${{ github.ref_name }} diff --git a/.github/workflows/prek.yaml b/.github/workflows/prek.yaml index af48e9330..757c1323c 100644 --- a/.github/workflows/prek.yaml +++ b/.github/workflows/prek.yaml @@ -1,5 +1,13 @@ name: Lint -on: [pull_request] +on: + pull_request: + paths: + - 'codeflash/**' + - 'tests/**' + - 'packages/**' + - 'pyproject.toml' + - 'uv.lock' + - '.github/workflows/prek.yaml' concurrency: group: ${{ github.workflow }}-${{ github.ref_name }} diff --git a/.github/workflows/unit-tests.yaml b/.github/workflows/unit-tests.yaml index dd050623e..22bce4b33 100644 --- a/.github/workflows/unit-tests.yaml +++ b/.github/workflows/unit-tests.yaml @@ -3,7 +3,25 @@ name: unit-tests on: push: branches: [main] + paths: + - 'codeflash/**' + - 'codeflash-benchmark/**' + - 'codeflash-java-runtime/**' + - 'tests/**' + - 'packages/**' + - 'pyproject.toml' + - 'uv.lock' + - '.github/workflows/unit-tests.yaml' pull_request: + paths: + - 'codeflash/**' + - 'codeflash-benchmark/**' + - 'codeflash-java-runtime/**' + - 'tests/**' + - 'packages/**' + - 'pyproject.toml' + - 'uv.lock' + - '.github/workflows/unit-tests.yaml' workflow_dispatch: concurrency: From e2e85579587e7b990caf4bfd276546d9bf279a7f Mon Sep 17 00:00:00 2001 From: Kevin Turcios Date: Thu, 9 Apr 2026 05:04:32 -0500 Subject: [PATCH 2/3] ci: remove self-reference from codeflash-optimize paths Editing the workflow config shouldn't trigger a full optimization run. --- .github/workflows/codeflash-optimize.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/codeflash-optimize.yaml b/.github/workflows/codeflash-optimize.yaml index fd0603adb..a27cc1ce9 100644 --- a/.github/workflows/codeflash-optimize.yaml +++ b/.github/workflows/codeflash-optimize.yaml @@ -7,7 +7,6 @@ on: - 'tests/**' - 'pyproject.toml' - 'uv.lock' - - '.github/workflows/codeflash-optimize.yaml' workflow_dispatch: From 07e456627179f56f8aa7e93d12956327d901d517 Mon Sep 17 00:00:00 2001 From: Kevin Turcios Date: Thu, 9 Apr 2026 05:08:19 -0500 Subject: [PATCH 3/3] ci: remove self-references from workflow path filters Editing a workflow YAML file should not trigger that same workflow to run. Removes .github/workflows/ from its own paths filter in mypy.yml, prek.yaml, and unit-tests.yaml. --- .github/workflows/mypy.yml | 2 -- .github/workflows/prek.yaml | 1 - .github/workflows/unit-tests.yaml | 2 -- 3 files changed, 5 deletions(-) diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index ded12eaee..f19d6c3dc 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -9,14 +9,12 @@ on: - 'pyproject.toml' - 'uv.lock' - 'mypy_allowlist.txt' - - '.github/workflows/mypy.yml' pull_request: paths: - 'codeflash/**' - 'pyproject.toml' - 'uv.lock' - 'mypy_allowlist.txt' - - '.github/workflows/mypy.yml' concurrency: group: ${{ github.workflow }}-${{ github.ref_name }} diff --git a/.github/workflows/prek.yaml b/.github/workflows/prek.yaml index 757c1323c..88bda6436 100644 --- a/.github/workflows/prek.yaml +++ b/.github/workflows/prek.yaml @@ -7,7 +7,6 @@ on: - 'packages/**' - 'pyproject.toml' - 'uv.lock' - - '.github/workflows/prek.yaml' concurrency: group: ${{ github.workflow }}-${{ github.ref_name }} diff --git a/.github/workflows/unit-tests.yaml b/.github/workflows/unit-tests.yaml index 22bce4b33..4591922e3 100644 --- a/.github/workflows/unit-tests.yaml +++ b/.github/workflows/unit-tests.yaml @@ -11,7 +11,6 @@ on: - 'packages/**' - 'pyproject.toml' - 'uv.lock' - - '.github/workflows/unit-tests.yaml' pull_request: paths: - 'codeflash/**' @@ -21,7 +20,6 @@ on: - 'packages/**' - 'pyproject.toml' - 'uv.lock' - - '.github/workflows/unit-tests.yaml' workflow_dispatch: concurrency: