You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The claude-review check fails during authentication, before it reviews anything — it dies in ~24s, where a real review run takes minutes. Every other check on the PR passes.
Reporting the observations rather than a root cause, because the run history doesn't fit a single clean explanation (details below).
Requesting OIDC token...
Failed to get OIDC token: error: Error message: Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable
at /home/runner/work/_actions/anthropics/claude-code-action/v1/node_modules/@actions/core/lib/oidc-utils.js:71:27
Action failed with error: Could not fetch an OIDC token.
Did you remember to add `id-token: write` to your workflow permissions?
Process completed with exit code 1
The action's hint is misleading here
id-token: writeis already declared in .github/workflows/claude-code-review.yml:
That file hasn't changed since 3a412b3 (2026-07-07), so the same declaration was in place for both the failing and the succeeding runs below. So the suggested fix in the error message doesn't apply — something is preventing the permission from being granted, not from being requested.
Run history (Claude Code Review, most recent first)
The earlier failures were not fork PRs. Seven consecutive same-repo runs failed (Aug 2 21:47 → Aug 3 02:32) with the same OIDC error — I spot-checked Fix DOCX output compression loss #333's log and it matches. So this is not purely a fork restriction.
It then recovered for same-repo PRs (four successes, 11:58 → 13:08) and failed again on the only fork-originated run.
That pattern is consistent with a fork-PR restriction being one cause (a pull_request run from a fork gets a read-only token and no secrets/OIDC by design — the same restriction your dependabot comment already documents), but it does not explain the earlier same-repo cluster. There may be two things going on, or something environmental in that window.
Questions
Is claude-review intended to run on fork PRs at all? If not, extending the existing dependabot guard to cover forks (e.g. also skipping when github.event.pull_request.head.repo.fork) would turn a permanently-red, uncontributor-fixable check into a clean skip — the same reasoning as the comment already in the workflow:
Dependabot PRs never get repository secrets (including CLAUDE_CODE_OAUTH_TOKEN) on pull_request-triggered runs — that's a GitHub security restriction, not something this workflow can work around. Skip the job there instead of showing a permanently-red, unfixable check on every dependency-bump PR.
Was the Aug 2–3 same-repo failure cluster known/expected? If those were a separate transient problem, the fork case may be the only remaining one.
Not blocking
Nothing here suggests a problem with the PR's contents — build-and-test, test, build-npm and all three build-matrix legs pass. Filing this only so the red check on external PRs is explainable, and in case the earlier same-repo cluster points at something real.
The
claude-reviewcheck fails during authentication, before it reviews anything — it dies in ~24s, where a real review run takes minutes. Every other check on the PR passes.Reporting the observations rather than a root cause, because the run history doesn't fit a single clean explanation (details below).
Symptom
Run: https://github.com/JSv4/Docxodus/actions/runs/30828296388 (PR #337, a fork PR)
The action's hint is misleading here
id-token: writeis already declared in.github/workflows/claude-code-review.yml:That file hasn't changed since
3a412b3(2026-07-07), so the same declaration was in place for both the failing and the succeeding runs below. So the suggested fix in the error message doesn't apply — something is preventing the permission from being granted, not from being requested.Run history (
Claude Code Review, most recent first)pr/word-compare-parity(#337)fix/nvca-list-numbering-screenshotfix/nvca-list-numbering-screenshotfix/nvca-list-numbering-screenshotfix/nvca-list-numbering-screenshotdependabot/...(skipped by the existing guard)dependabot/...fix/331-docx-compression(#333)issue-330-tracked-surgical-replacementssmoke-test-mcp-round-threesmoke-test-mcp-round-threeagent/issue-319-tracked-formattingagent/issue-317-comment-threadsagent/issue-316-mcp-header-footerTwo things stand out:
That pattern is consistent with a fork-PR restriction being one cause (a
pull_requestrun from a fork gets a read-only token and no secrets/OIDC by design — the same restriction your dependabot comment already documents), but it does not explain the earlier same-repo cluster. There may be two things going on, or something environmental in that window.Questions
Is
claude-reviewintended to run on fork PRs at all? If not, extending the existing dependabot guard to cover forks (e.g. also skipping whengithub.event.pull_request.head.repo.fork) would turn a permanently-red, uncontributor-fixable check into a clean skip — the same reasoning as the comment already in the workflow:Was the Aug 2–3 same-repo failure cluster known/expected? If those were a separate transient problem, the fork case may be the only remaining one.
Not blocking
Nothing here suggests a problem with the PR's contents —
build-and-test,test,build-npmand all threebuild-matrixlegs pass. Filing this only so the red check on external PRs is explainable, and in case the earlier same-repo cluster points at something real.