Repository navigation
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
2106ce2 to
7366abb
Compare
|
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
7366abb to
367b65e
Compare
367b65e to
5548d84
Compare
5548d84 to
d65e449
Compare
d65e449 to
63974a9
Compare
63974a9 to
cda7c0f
Compare
Part of #82786.
What?
Sets
package-manager-cache: falseexplicitly on everyactions/setup-nodestep inpublish-npm-packages.yml(2 steps).publish-npm-packages.ymlreleasepublish-npm-packages.ymlreleaseWhy?
Cache poisoning is an attack in which a release workflow picks up build state cached by an earlier, less-trusted workflow run. A job that produces a published npm package should install from the lockfile every time.
actions/setup-node'spackage-manager-cacheinput defaults totrue. It currently engages only whenpackage.jsondeclarespackageManager(ordevEngines.packageManager) naming npm — which this branch does not. That means these jobs are uncached by accident, not by intent: adding that field later would silently switch caching back on in the release path with no visible change to any workflow file. Stating it explicitly removes that dependency on unrelated packaging metadata.How?
Ports WordPress/gutenberg#79835, "Disable caching when publishing built assets", adapted for this branch. Upstream routes these jobs through the composite
.github/setup-nodeaction and threads a newcacheinput through to.github/setup-npm; this branch has nosetup-npmcomposite and its release jobs callactions/setup-nodedirectly, so the equivalent input is set on each step instead.build-plugin-zip.yml, which #79835 also changes, is removed from this branch in #82881.This branch's
actions/setup-nodepin inpublish-npm-packages.yml(v4.2.0) predates thepackage-manager-cacheinput, so the setting takes effect once #82883 updates it tov7.0.0.The composite
.github/setup-nodeon this branch is deliberately left alone: it is only ever called by test and automation workflows, none of which publish a release artifact.Use of AI Tools
This PR was created by Claude Code under my supervision. All code should be treated as AI-produced and not yet reviewed by a human until this PR is marked Ready for Review.
🤖 Generated with Claude Code