diff --git a/.github/workflows/bench.yml b/.github/workflows/bench.yml index 1962e16..2dc70cb 100644 --- a/.github/workflows/bench.yml +++ b/.github/workflows/bench.yml @@ -21,8 +21,18 @@ concurrency: on: push: branches: [main] + paths-ignore: + - '**/*.md' + - 'safety/**' + - 'scripts/mythos/**' + - 'tools/*.py' pull_request: branches: [main] + paths-ignore: + - '**/*.md' + - 'safety/**' + - 'scripts/mythos/**' + - 'tools/*.py' env: CARGO_TERM_COLOR: always diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 68ad02c..b5bb966 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,8 +7,23 @@ concurrency: on: push: branches: [main] + # Skip CI on docs/safety-only changes — they don't affect code + # behavior. Reduces meld's draw on the shared smithy rust-cpu + # fleet. Conservative exclusion: anything that could affect + # cargo build/test/clippy/fmt outputs (.rs, Cargo.{toml,lock}, + # workflows themselves) still triggers. + paths-ignore: + - '**/*.md' + - 'safety/**' + - 'scripts/mythos/**' + - 'tools/*.py' pull_request: branches: [main] + paths-ignore: + - '**/*.md' + - 'safety/**' + - 'scripts/mythos/**' + - 'tools/*.py' env: CARGO_TERM_COLOR: always diff --git a/.github/workflows/fuzz.yml b/.github/workflows/fuzz.yml index 7ace677..69ccd59 100644 --- a/.github/workflows/fuzz.yml +++ b/.github/workflows/fuzz.yml @@ -23,8 +23,18 @@ concurrency: on: push: branches: [main] + paths-ignore: + - '**/*.md' + - 'safety/**' + - 'scripts/mythos/**' + - 'tools/*.py' pull_request: branches: [main] + paths-ignore: + - '**/*.md' + - 'safety/**' + - 'scripts/mythos/**' + - 'tools/*.py' env: CARGO_TERM_COLOR: always diff --git a/CHANGELOG.md b/CHANGELOG.md index 36ffa9d..9094164 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,20 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +### Changed + +- **CI workflows now skip on docs/safety-only changes** + (`.github/workflows/{bench,fuzz,ci}.yml`). Adds conservative + `paths-ignore` filters to bench, fuzz, and ci workflows: PRs that + only edit Markdown, `safety/`, `scripts/mythos/`, or + `tools/*.py` skip the rust-cpu-hungry jobs (~9 jobs saved per + docs-only PR). The LS-N gate, mythos-gate, and mythos-auto + workflows are untouched — they need to keep firing on those very + paths (`safety/stpa/loss-scenarios.yaml` is what the LS-N gate + reads). Substantive code PRs are unaffected. Pulls meld's + footprint on the shared smithy fleet down without losing + regression signal on real changes. + ### Fixed - **LS-A-8 regression coverage** (`meld-core/src/adapter/fact.rs`).