From 67a5d1c74b8e17d9fb89262b263cfde2cd7bfde9 Mon Sep 17 00:00:00 2001 From: bitgobot Date: Tue, 20 Oct 2026 19:55:50 +0000 Subject: [PATCH] ci: restore Claude reviews with Sonnet 5.5 Upgrade the pinned Claude action to v1.0.260 and select the global Sonnet 5.5 profile. The action carries Claude Agent SDK 0.3.309, which supports the selected model. Disable extended thinking for tool-call replay compatibility. Keep custom mentions interactive. Restore the ten-minute timeout and target the triggering pull request explicitly. Ticket: WAL-2202 Session-Id: 146db0fb-b94c-4d9e-806e-4c150d26cfd3 Task-Id: e2770251-64bd-49f8-9e3f-2606f7e17c68 Requested-By: Zahin Mohammad --- .github/README.md | 17 +++++++++++++++++ .github/workflows/claude-code.yaml | 26 +++++++++++++++++--------- 2 files changed, 34 insertions(+), 9 deletions(-) create mode 100644 .github/README.md diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 00000000..05868aad --- /dev/null +++ b/.github/README.md @@ -0,0 +1,17 @@ +# Claude reviews + +Repository owners and members can request a pull request review by commenting +`@claude`. The workflow uses `prompts/code-review.md` and posts the review as a +pull request comment. Add instructions after `@claude` to use interactive mode +with the triggering comment and conversation context instead. + +Reviews use Claude Sonnet 5.5 through the global cross-region Bedrock inference +profile from `us-west-2`. Configure the model with `ANTHROPIC_MODEL`; the workflow +disables extended thinking because Bedrock rejects replayed tool-call turns +without a leading thinking block. The workflow has a ten-minute job timeout. +The inference role must permit invocation of the profile and its destination +models. + +Comment-triggered workflows use the default branch's workflow definition. +End-to-end verification of workflow changes requires merging them before +requesting another review. diff --git a/.github/workflows/claude-code.yaml b/.github/workflows/claude-code.yaml index 2db30051..0a666cd5 100644 --- a/.github/workflows/claude-code.yaml +++ b/.github/workflows/claude-code.yaml @@ -24,6 +24,7 @@ jobs: github.event.comment.author_association == 'MEMBER' ) runs-on: ubuntu-latest + timeout-minutes: 10 env: AWS_REGION: us-west-2 AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} @@ -80,31 +81,38 @@ jobs: echo "EOF" } >> "$GITHUB_OUTPUT" - - uses: anthropics/claude-code-action@69dec299f882fef0fff1652a1309b7e9771b9f98 + - uses: anthropics/claude-code-action@8d70a0dd265122bd65b8e09d3d959e65373ae2a1 # v1.0.260 if: steps.determine-prompt.outputs.use-code-review-prompt == 'true' env: + ANTHROPIC_MODEL: arn:aws:bedrock:us-west-2:168000258654:inference-profile/global.anthropic.claude-sonnet-5-5 AWS_REGION: us-west-2 AWS_ACCESS_KEY_ID: ${{ steps.inference-role.outputs.aws-access-key-id }} AWS_SECRET_ACCESS_KEY: ${{ steps.inference-role.outputs.aws-secret-access-key }} AWS_SESSION_TOKEN: ${{ steps.inference-role.outputs.aws-session-token }} + MAX_THINKING_TOKENS: '0' with: - timeout_minutes: '10' github_token: ${{ secrets.GITHUB_TOKEN }} use_bedrock: 'true' - anthropic_model: 'arn:aws:bedrock:us-west-2:168000258654:inference-profile/us.anthropic.claude-sonnet-4-20250514-v1:0' - direct_prompt: ${{ steps.read-prompt.outputs.prompt-content }} + claude_args: --allowed-tools 'Bash(gh pr diff:*),Bash(gh pr view:*),Bash(gh pr comment:*)' + prompt: | + REPO: ${{ github.repository }} + PR NUMBER: ${{ github.event.issue.number || github.event.pull_request.number }} - - uses: anthropics/claude-code-action@69dec299f882fef0fff1652a1309b7e9771b9f98 + Read this pull request with `gh pr view ${{ github.event.issue.number || github.event.pull_request.number }} --repo ${{ github.repository }}` + and `gh pr diff ${{ github.event.issue.number || github.event.pull_request.number }} --repo ${{ github.repository }}`. + Post the final review to the same pull request with `gh pr comment ${{ github.event.issue.number || github.event.pull_request.number }} --repo ${{ github.repository }}`. + + ${{ steps.read-prompt.outputs.prompt-content }} + + - uses: anthropics/claude-code-action@8d70a0dd265122bd65b8e09d3d959e65373ae2a1 # v1.0.260 if: steps.determine-prompt.outputs.use-code-review-prompt == 'false' env: + ANTHROPIC_MODEL: arn:aws:bedrock:us-west-2:168000258654:inference-profile/global.anthropic.claude-sonnet-5-5 AWS_REGION: us-west-2 AWS_ACCESS_KEY_ID: ${{ steps.inference-role.outputs.aws-access-key-id }} AWS_SECRET_ACCESS_KEY: ${{ steps.inference-role.outputs.aws-secret-access-key }} AWS_SESSION_TOKEN: ${{ steps.inference-role.outputs.aws-session-token }} - COMMENT_BODY: ${{ github.event.comment.body }} + MAX_THINKING_TOKENS: '0' with: - timeout_minutes: '10' github_token: ${{ secrets.GITHUB_TOKEN }} use_bedrock: 'true' - anthropic_model: 'arn:aws:bedrock:us-west-2:168000258654:inference-profile/us.anthropic.claude-sonnet-4-20250514-v1:0' - direct_prompt: $COMMENT_BODY