diff --git a/.gitea/workflows/firefox-extension.yml b/.gitea/workflows/firefox-extension.yml index 2fac9ef..4a5c567 100644 --- a/.gitea/workflows/firefox-extension.yml +++ b/.gitea/workflows/firefox-extension.yml @@ -2,13 +2,31 @@ name: Firefox Extension CI on: pull_request: + # edited: removing the WIP: prefix starts the real run. + types: [opened, synchronize, reopened, edited] push: branches: - develop - main + workflow_dispatch: + +# The gate and concurrency use the github.* context, Gitea's alias for gitea.*: +# it is the form the pattern was canaried with and the one pr-flow detects. +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + # Cancel superseded PR runs, never a push run: main's push uploads the package. + cancel-in-progress: ${{ github.event_name == 'pull_request' }} jobs: validate: + # WIP gate: skip PRs titled WIP: so early PRs cost no run per push. Gate on + # the title and nothing else, since a skipped job reports success on the + # required check (see ~/.claude/docs/gitea-ci-pattern.md). + if: >- + github.event_name != 'pull_request' || ( + !startsWith(github.event.pull_request.title, 'WIP:') && + !startsWith(github.event.pull_request.title, '[WIP]') + ) runs-on: ubuntu-latest steps: - name: Check out repository