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 |
|
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. |
c0ab343 to
a11e7a8
Compare
a11e7a8 to
2074bfa
Compare
2074bfa to
77eb817
Compare
|
Size Change: 0 B Total Size: 1.63 MB ℹ️ View Unchanged
|
Part of #82929.
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 #83667.This branch's
actions/setup-nodepin inpublish-npm-packages.yml(v3.8.1) predates thepackage-manager-cacheinput, so the setting takes effect once #83669 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