fix(ci): Replace npm install -g @go-task/cli with go-task/setup-task action to eliminate npm supply-chain risk.#109
Conversation
…sk` action to eliminate npm supply-chain risk.
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 27 minutes and 30 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ 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 |
|
Closing this PR as it has been fully superseded by #110 (merged as 38bf51e). PR #110 addressed the same npm supply-chain risk by:
Rebasing this branch on main results in conflicts since main already contains a superset of these changes. Skipping our commit would produce an empty PR. |
Description
All CI workflows install the Task runner via
npm install -g @go-task/cli.@go-task/clideclaresa transitive dependency on
axios: ^1.8.2, and because global npm installs have no lock file, npmresolves to whatever the latest semver-compatible version is at install time. During the
axios supply-chain compromise on 2026-03-31, this caused CI runners to pull in the
malicious
axios@1.14.1package, which executed a post-install script that connected to anattacker-controlled C2 server.
This PR replaces all occurrences of
npm install -g @go-task/cliwith the officialgo-task/setup-taskGitHub Action, pinned by commit SHA. The action downloads the Taskbinary directly from GitHub Releases without involving npm, eliminating the transitive dependency on
axios and the broader npm supply-chain attack surface.
Checklist
breaking change.
Validation performed
npm install -gcommands remain in any workflow file.3be4020d41929789a01026e0e427a4321ce0ad44corresponds togo-task/setup-taskv2.0.0.