Fix git checkout for Slack notify workflow#996
Merged
Conversation
claude-code-action restores trusted .claude/.mcp.json config from the base branch via git before running Claude, even in agent mode, which needs a git working tree. Add a checkout step; the default ref on pull_request_target is the base branch, not the PR head, so this stays consistent with never running PR-supplied code.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
danbarr
enabled auto-merge (squash)
June 30, 2026 19:00
JAORMX
approved these changes
Jun 30, 2026
4 tasks
This was referenced Jun 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Follow-up to #995. Removing
id-token: write(#994) fixed Anthropic-auth-unrelated OIDC, but the next run failed withfatal: not a git repository. claude-code-action'srestoreConfigFromBasestep unconditionally runsgit fetch/git checkoutagainst the base branch to restore trusted.claude/.mcp.jsonconfig before Claude runs, even in agent mode, and that needs an actual git working tree. This workflow never ranactions/checkout, so there was no.gitdirectory.Added a checkout step.
pull_request_target's default checkout ref (no explicitref:) is the base branch's HEAD, not the PR head, so this stays consistent with the workflow's existing security model: no PR-supplied code ever lands in the workspace.Type of change
Related issues/PRs
Follow-up to #994 and #995
Submitter checklist
Content and formatting
Reviewer checklist
Content