Skip to content

CI: skip docs-only changes and duplicate runs - #26

Merged
drshade merged 2 commits into
mainfrom
ci-skip-docs
Aug 1, 2026
Merged

CI: skip docs-only changes and duplicate runs#26
drshade merged 2 commits into
mainfrom
ci-skip-docs

Conversation

@drshade

@drshade drshade commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Two trigger changes to the Haskell-CI workflow, no job changes:

  • paths-ignore on both push and pull_request: **.md, specs/**, LICENSE, .gitignore — a change touching only those files cannot affect the build, so the 5-compiler matrix is skipped. A PR touching both docs and code still runs (paths-ignore only skips when every changed file matches). Note the golden corpus .json files are deliberately not ignored — they are test inputs.
  • push restricted to main: previously every PR ran the matrix twice (once for the branch push, once for the PR event). Now branches build via pull_request only, and main builds on merge. merge_group and workflow_dispatch are unchanged (dispatch remains the manual escape hatch to force a run).

Safe because main has no required status checks (verified — no branch protection), so a skipped workflow can't wedge a merge as eternally 'Expected'.

Regeneration-proofing: the workflow is haskell-ci-generated, so a bare hand edit would be reverted by the next haskell-ci regenerate (e.g. adding a GHC version). The trigger edit is therefore also captured as .github/haskell-ci.patch and wired up via github-patches in a new cabal.haskell-ci, which haskell-ci re-applies after generating.

This PR touches the workflow file itself, so CI runs on it — which validates the new trigger YAML parses.

push builds only main and both triggers ignore Markdown, specs/, LICENSE
and .gitignore — changes that cannot affect the build. The trigger edit is
stored as .github/haskell-ci.patch and wired into cabal.haskell-ci
(github-patches), so haskell-ci regenerate re-applies it instead of
reverting it.
A new push to a branch or PR cancels the previous in-flight run via a
concurrency group; runs on main always complete. Captured in
.github/haskell-ci.patch alongside the trigger changes.
@drshade
drshade merged commit d61a2ad into main Aug 1, 2026
5 checks passed
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