From 97f2d59801587c68fde7edc5c9d9d904be9c961f Mon Sep 17 00:00:00 2001 From: Stephen Freudenthaler Date: Mon, 28 Sep 2026 15:46:56 -0400 Subject: [PATCH 1/2] fix: move act concurrency to job level so comments can't cancel /dotbot Every comment starts the act workflow, and a workflow-level concurrency group is joined even when the act job is skipped, so an ordinary comment cancelled a waiting /dotbot run. Move concurrency onto the job in both the README example and this repo's dotbot-act.yml, and add queue: max so back-to-back /dotbot requests stay queued. Refs dotCMS/core#37778. Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01CGsrfnbtzU67HVPxkQCsZT --- .github/workflows/dotbot-act.yml | 13 +++++++++---- README.md | 11 ++++++++--- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/.github/workflows/dotbot-act.yml b/.github/workflows/dotbot-act.yml index 70982f8..4a59fd9 100644 --- a/.github/workflows/dotbot-act.yml +++ b/.github/workflows/dotbot-act.yml @@ -6,10 +6,6 @@ on: pull_request_review_comment: types: [created] -concurrency: - group: dotbot-act-${{ github.event.issue.number || github.event.pull_request.number || github.ref }} - cancel-in-progress: false - jobs: act: name: Act on /dotbot comments @@ -25,6 +21,15 @@ jobs: ) ) && github.actor != 'dependabot[bot]' + # Job-level, not workflow-level: every comment on the repo starts this + # workflow, and a workflow-level group is joined even when the job below is + # skipped. A skipped run would then cancel a waiting /dotbot run. A job + # skipped by `if:` never joins the group. queue: max keeps back-to-back + # /dotbot requests queued instead of dropping all but the newest. + concurrency: + group: dotbot-act-${{ github.event.issue.number || github.event.pull_request.number || github.ref }} + cancel-in-progress: false + queue: max runs-on: ubuntu-latest permissions: contents: write diff --git a/README.md b/README.md index a8e819b..599d448 100644 --- a/README.md +++ b/README.md @@ -70,9 +70,6 @@ permissions: workflows: write # needed if /dotbot may edit .github/workflows/* pull-requests: write issues: write -concurrency: - group: dotbot-act-${{ github.event.issue.number || github.event.pull_request.number || github.ref }} - cancel-in-progress: false jobs: act: name: Act on /dotbot comments @@ -88,6 +85,14 @@ jobs: ) ) && github.actor != 'dependabot[bot]' + # Job-level, not workflow-level: every comment starts this workflow, and a + # workflow-level group is joined even when the job is skipped, so an + # ordinary comment would cancel a waiting /dotbot run. queue: max keeps + # back-to-back /dotbot requests queued. + concurrency: + group: dotbot-act-${{ github.event.issue.number || github.event.pull_request.number || github.ref }} + cancel-in-progress: false + queue: max runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 From e61ef40c6f64a37006abd18535ab858b2731a942 Mon Sep 17 00:00:00 2001 From: Will Ezell Date: Tue, 29 Sep 2026 12:49:33 -0400 Subject: [PATCH 2/2] Update README with automatic PR approval details Add information about automatic PR approval using the DOTBOT_GITHUB_USER_PAT secret. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 599d448..abfb658 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ jobs: github_approval_token: ${{ secrets.DOTBOT_GITHUB_USER_PAT }} ``` + ### Automatic PR Approval If the `DOTBOT_GITHUB_USER_PAT` secret is set (passed via the