Files
upstream-mirror 709385cbaa
Some checks failed
NATS Server Tests / Lint (push) Failing after 3s
NATS Server Tests / Build (Latest Go) (push) Has been skipped
NATS Server Tests / Build (Minimum Go) (push) Has been skipped
NATS Server Tests / Build (Minimum Go, windows-2022) (push) Has been skipped
NATS Server Tests / Build (Minimum Go, windows-2025) (push) Has been skipped
NATS Server Tests / Test Stores (push) Has been skipped
NATS Server Tests / Test JetStream (push) Has been skipped
NATS Server Tests / Test Raft (push) Has been skipped
NATS Server Tests / Test JetStream Consumers (push) Has been skipped
NATS Server Tests / Test JetStream Cluster 1 (push) Has been skipped
NATS Server Tests / Test JetStream Cluster 2 (push) Has been skipped
NATS Server Tests / Test JetStream Cluster 3 (push) Has been skipped
NATS Server Tests / Test JetStream Cluster 4 (push) Has been skipped
NATS Server Tests / Test JetStream Supercluster (push) Has been skipped
NATS Server Tests / Test No-Race 1 (push) Has been skipped
NATS Server Tests / Test No-Race 2 (push) Has been skipped
NATS Server Tests / Test MQTT (push) Has been skipped
NATS Server Tests / Test Message Tracing (push) Has been skipped
NATS Server Tests / Test JWT (push) Has been skipped
NATS Server Tests / Test Remaining Server Tests (push) Has been skipped
NATS Server Tests / Test Other Packages (push) Has been skipped
Vulnerability Scan / govulncheck (push) Failing after 12m2s
snapshot of https://github.com/nats-io/nats-server.git (main, 2026-09-15; blobs > 131072B omitted)
2026-09-15 20:16:01 +05:00

65 lines
3.0 KiB
YAML

name: Claude Code
# GITHUB_TOKEN needs contents:read and actions:read — required by
# claude-code-action for restoring trusted config files from the base branch.
# All other GitHub API access uses the App token.
permissions:
contents: read
actions: read
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
pull_request_target:
types: [opened, reopened]
jobs:
claude:
name: Claude Review
uses: synadia-io/ai-workflows/.github/workflows/claude.yml@v2
if: contains(
fromJson('["OWNER","MEMBER","COLLABORATOR"]'),
github.event.comment.author_association || github.event.pull_request.author_association
)
with:
gh_app_id: ${{ vars.CLAUDE_GH_APP_ID }}
checkout_mode: "base"
# review_focus is used only by the auto-review job (pull_request_target), not the
# interactive @claude job — so the check below only needs github.event.pull_request,
# which pull_request_target populates. On issue_comment events that field is absent,
# so this evaluates to startsWith(null, 'backports/') -> false; harmless, since the
# interactive job ignores review_focus. Can't be fixed in-expression: issue_comment
# payloads carry no head ref at all.
review_focus: |
${{ startsWith(github.event.pull_request.head.ref, 'backports/') && '
This is a BACKPORT / RELEASE pull request. Every cherry-picked commit
originates from a PR that was already independently reviewed and approved
on the source branch. Do NOT re-review the individual code changes and do
NOT comment on the implementation of cherry-picked hunks — assume they are
correct.
Instead, focus exclusively on:
- Cherry-pick completeness. Inspect the PRs/commits included in this
backport. For each source PR, check its milestone, labels, and target
branch to decide whether it belongs in this release line. Flag any PR
that targets this release but is MISSING here, and any included PR that
does not belong.
- Non-clean picks. Call out commits that appear to have been modified
during the cherry-pick (conflict resolution, adapted context) — those
are the only changes that warrant a closer look.
- Release overview. Produce a concise summary of what this release ships,
grouped by area (JetStream, Raft/NRG, leafnodes, security, etc.), so
reviewers can sanity-check the scope at a glance.
' || '
Additionally focus on:
- Performance implications (hot paths, allocations, lock contention)
- Concurrency safety (goroutine leaks, race conditions, deadlocks)
- Raft consensus and JetStream clustering correctness
- Security boundaries (authentication, authorization, TLS handling)
' }}
secrets:
claude_oauth_token: ${{ secrets.CLAUDE_OAUTH_TOKEN }}
gh_app_private_key: ${{ secrets.CLAUDE_GH_APP_PRIVATE_KEY }}