diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8514951..f497d61 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,13 +3,19 @@ name: CI permissions: contents: read +# TRIGGERS: `push` is scoped to `main`. Without a branch filter it also matches +# pushes to pull-request branches, which already match `pull_request`, so every +# job ran twice per commit, on two separate workflow runs. Naming `branches:` +# also stops tag pushes from matching. `pull_request` checks out the branch +# already merged into its base, so merge coverage is not what is being dropped +# here — the one thing lost is CI on a branch with no pull request open, and +# `workflow_dispatch` replaces it (`gh workflow run ci.yml --ref `). + on: - push: - branches: - - "**" pull_request: - branches: - - main + push: + branches: [main] + workflow_dispatch: env: CARGO_TERM_COLOR: always