Skip to content

Commit fc12f6b

Browse files
ci: upgrade Claude orchestrator to v2.1.0 — graceful API unavailability skip (#35336)
## Summary - Bump `ai-workflows` reference from `v2.0.0` → `v2.1.0` in `ai_claude-orchestrator.yml` - `v2.1.0` adds pre-flight Anthropic API availability check + runtime error triage ## Problem When the Claude service has an outage, all PR pipelines fail with: ``` API Error: 500 {"type":"error","error":{"type":"api_error","message":"Internal server error"}} · check status.claude.com ``` Example blocked run: https://github.com/dotCMS/core/actions/runs/24461196854 ## What changed in `v2.1.0` (`ai-workflows`) **Pre-flight check (Layer 1):** - Calls `GET /v1/models` before running claude-code-action (15s timeout, 2 retries) - 5xx or network failure → `available=false` → skip Claude step gracefully with `::warning::` - 401/403/429 or other codes → proceed so the action surfaces the specific error **Runtime protection (Layer 2):** - `continue-on-error: true` on the Claude step - Post-execution step re-checks the API if Claude failed - API available after failure → re-fail the job ("legitimate error") - API unavailable after failure → skip gracefully ("service degradation") ## Test Validated in dotCMS#460 (also updated to `v2.1.0`): - Pre-flight check correctly identifies API availability - Legitimate errors still surface and fail the job (correct) - Service outage path is code-correct (pre-flight would skip before Claude runs) Fixes #35328 Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 673f109 commit fc12f6b

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

.github/workflows/ai_claude-orchestrator.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ jobs:
8080
)
8181
)
8282
)
83-
uses: dotCMS/ai-workflows/.github/workflows/claude-orchestrator.yml@v2.0.0
83+
uses: dotCMS/ai-workflows/.github/workflows/claude-orchestrator.yml@v2.1.0
8484
with:
8585
trigger_mode: interactive
8686
claude_args: '--allowedTools "Bash(git status),Bash(git diff)"'
@@ -108,7 +108,7 @@ jobs:
108108
!contains(github.event.pull_request.body, '@claude') &&
109109
!contains(github.event.pull_request.body, '@Claude') &&
110110
!contains(github.event.pull_request.body, '@CLAUDE')
111-
uses: dotCMS/ai-workflows/.github/workflows/claude-orchestrator.yml@v2.0.0
111+
uses: dotCMS/ai-workflows/.github/workflows/claude-orchestrator.yml@v2.1.0
112112
with:
113113
trigger_mode: automatic
114114
prompt: |
@@ -135,7 +135,7 @@ jobs:
135135
id-token: write
136136
pull-requests: write
137137
issues: write
138-
uses: dotCMS/ai-workflows/.github/workflows/claude-orchestrator.yml@v2.0.0
138+
uses: dotCMS/ai-workflows/.github/workflows/claude-orchestrator.yml@v2.1.0
139139
with:
140140
trigger_mode: automatic
141141
prompt: |

0 commit comments

Comments
 (0)