From: Arran Cudbard-Bell Date: Fri, 15 May 2026 14:32:32 +0000 (-0600) Subject: Diagnose failures on developer/* branches as well as master X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=897aed8355636bb2d08e1e26fea547c8fbe7776f;p=thirdparty%2Ffreeradius-server.git Diagnose failures on developer/* branches as well as master workflow_run jobs only run if the if: condition holds, and previously that required head_branch == 'master'. Failures on personal developer/ branches were silently skipped even though that's exactly the place where seeing a diagnosis comment is most useful (you're iterating on a fix and want the prior failure understood). Loosen the gate to accept any branch whose name is master or starts with developer/. Push event + failure conclusion gates stay; PR-event failures still skip (they get covered by the separate Claude Code Review path). --- diff --git a/.github/workflows/claude-ci-failure-diagnosis.yml b/.github/workflows/claude-ci-failure-diagnosis.yml index 394dc2c9c97..110d252b1ea 100644 --- a/.github/workflows/claude-ci-failure-diagnosis.yml +++ b/.github/workflows/claude-ci-failure-diagnosis.yml @@ -1,9 +1,10 @@ name: Claude CI Failure Diagnosis -# Fires after a CI workflow finishes on master. If it failed, Claude reads the -# job logs, classifies the failure (regression / flake / infra / unknown), and -# posts a diagnostic comment on the offending commit. Diagnosis only - no PRs, -# no pushes, no edits to the repo. +# Fires after a CI workflow finishes on master or a developer/* branch. +# If it failed, Claude reads the job logs, classifies the failure +# (regression / flake / infra / unknown), and posts a diagnostic comment on +# the offending commit. Diagnosis only - no PRs, no pushes, no edits to the +# repo. on: workflow_run: @@ -31,14 +32,16 @@ jobs: diagnose: # GitHub doesn't expose an event-level conclusion filter for workflow_run, # so the workflow fires for every CI completion and this job-level if: - # filters out anything that isn't a master-push failure. The downside is - # a "Skipped" entry in the Actions tab for every CI success; the upside - # is that the alternative (self-delete from inside the job) doesn't work - # because the API refuses to delete an in-progress run. + # filters out anything that isn't a failure on master or one of the + # developer/* personal branches. The downside is a "Skipped" entry in + # the Actions tab for every CI success; the upside is that the + # alternative (self-delete from inside the job) doesn't work because + # the API refuses to delete an in-progress run. if: | github.repository == 'FreeRADIUS/freeradius-server' && github.event.workflow_run.conclusion == 'failure' && - github.event.workflow_run.head_branch == 'master' && + (github.event.workflow_run.head_branch == 'master' || + startsWith(github.event.workflow_run.head_branch, 'developer/')) && github.event.workflow_run.event == 'push' runs-on: ubuntu-latest