fix(ci): unblock app-hub refresh workflow (duplicate Authorization header)#632
Conversation
actions/checkout@v6 persists a basic-auth extraheader that collides with the credentials peter-evans/create-pull-request sets, producing a duplicate Authorization header and a 400 from GitHub during `git remote prune origin`. Disabling credential persistence on checkout lets the PR action manage auth alone. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
|
Caution Review failedPull request was closed or merged during review No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe cross-app-connect-refresh-app-hub workflow's Checkout step now explicitly disables credential persistence by setting ChangesWorkflow Credential Persistence
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Size Change: 0 B Total Size: 8.84 MB ℹ️ View Unchanged
|
Summary
actions/checkout@v6writes a basic-authhttp.https://github.com/.extraheaderand keeps it after the step finishes.peter-evans/create-pull-request@v7then layers its own credentials on top, so git sends twoAuthorizationheaders and GitHub rejects with HTTP 400 ongit remote prune origin.persist-credentials: falseon the checkout step lets the PR action own auth alone, which is what its own docs recommend.Failure observed on the scheduled run:
```
remote: Duplicate header: "Authorization"
fatal: unable to access 'https://github.com/vechain/vechain-kit/': The requested URL returned error: 400
Error: The process '/usr/bin/git' failed with exit code 128
```
Test plan
Cross-App Connect — Refresh App Hub cacheviaworkflow_dispatchand confirm the job reaches theOpen PR if anything changedstep without the duplicate-header error.mainon thechore/refresh-app-hub-cachebranch as before.🤖 Generated with Claude Code
Summary by CodeRabbit