Skip to content

Run full CI on any non-data/non-doc change - #170

Open
DunklesArchipel wants to merge 2 commits into
echemdb:mainfrom
DunklesArchipel:ci-full-check-non-data
Open

Run full CI on any non-data/non-doc change#170
DunklesArchipel wants to merge 2 commits into
echemdb:mainfrom
DunklesArchipel:ci-full-check-non-data

Conversation

@DunklesArchipel

@DunklesArchipel DunklesArchipel commented Jun 25, 2026

Copy link
Copy Markdown
Member

Why

While working on the automatic-metadata-version-check PR (#146), not a single CI workflow ran even though it changed echemdb_ecdata/-adjacent config and added a new workflow. That isn't optimal: a PR can touch the GitHub workflows, util/ scripts, the lockfile, or root config and get merged with zero CI coverage.

The cause is that the data (build), Test and Validate Examples workflows used allowlist paths: filters scoped only to literature/**, echemdb_ecdata/**, pyproject.toml, and their own workflow file. Any change outside that list matched nothing, so all checks were skipped.

What

Switch those three workflows from allowlist paths: to blocklist paths-ignore:, so that anything outside the data/docs fast-path runs the full checks. Quick Data Check is left untouched as the data-only fast path.

Resulting behavior:

  • Pure data PR (literature/** + news fragment) → data + Quick Data Check only (no Python test matrix).
  • Pure docs PR (*.md, doc/**) → heavy checks skipped.
  • Anything else (workflows, util/, pixi.lock, pyproject.toml, root config) → full data + Test + Validate Examples.

This PR is also its own test case: it changes only .github/workflows/** + doc/news/**, which previously triggered nothing — under the new filters it should now run data, Test, and Validate Examples.

Note

Test is a 5-Python × 3-OS matrix (15 jobs), so it now runs on any non-data/non-doc change. That's intentional for catching breakage, but worth being aware of for CI minutes.

🤖 Generated with Claude Code

The build/test/validation workflows used allowlist `paths:` filters scoped to
data and code dirs, so PRs touching only workflows, util scripts, the lockfile
or root config triggered no CI at all. Switch them to `paths-ignore` so any
change outside the data/docs fast-path runs the full checks; quick-data-check
remains the data-only fast path.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant