chore(wsl): exclude resend from the npm trust policy - #4032
Conversation
Reviewer's guide (collapsed on small PRs)Reviewer's GuideUpdates the WSL mise configuration so npm:resend-cli can be installed despite resend losing npm provenance, by adding a targeted trust policy exclusion and aligning the lock file options entry. Sequence diagram for the resend-cli installation trust policysequenceDiagram
participant Mise
participant Aube
participant Npm
Mise->>Aube: install npm:resend-cli@latest
Aube->>Npm: resolve resend dependency
alt resend@>=6.18.1 is excluded
Aube-->>Mise: install succeeds
else no trust_policy_excludes
Aube-->>Mise: trust downgrade error
end
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey - I've found 1 issue
Prompt for AI Agents
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location path="wsl/home/.config/mise/config.toml" line_range="85-87" />
<code_context>
+# resend dropped npm provenance from 6.18.1 onward while its release automation is
+# reworked, which trips aube's no-downgrade trust policy.
+# ref: https://github.com/resend/resend-node/issues/1061
+"npm:resend-cli" = { version = "latest", allow_builds = ["esbuild"], trust_policy_excludes = [
+ "resend@>=6.18.1",
+] }
# ai agents
</code_context>
<issue_to_address>
**issue (bug_risk):** The multiline array is placed inside a TOML inline table, but standard TOML inline tables cannot contain newlines. mise therefore fails to parse this configuration before it can install any tools.
**Suggested fix:** Keep the inline table on one line, or move the `resend-cli` options into a TOML table form that supports multiline values.
```suggestion
"npm:resend-cli" = { version = "latest", allow_builds = ["esbuild"], trust_policy_excludes = ["resend@>=6.18.1"] }
```
</issue_to_address>Sourcery assessment
Needs a human reviewer. 1 finding to address first, and this changes the npm trust boundary by exempting all resend versions at or above 6.18.1 from the provenance/no-downgrade policy, so a compromised or unexpectedly released package could be accepted without the usual trust signal. Reverting prevents future exemptions, but it cannot undo code that an already-installed package executed or data it may have accessed.
Blocking findings: wsl/home/.config/mise/config.toml:87
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
| "npm:resend-cli" = { version = "latest", allow_builds = ["esbuild"], trust_policy_excludes = [ | ||
| "resend@>=6.18.1", | ||
| ] } |
There was a problem hiding this comment.
issue (bug_risk): The multiline array is placed inside a TOML inline table, but standard TOML inline tables cannot contain newlines. mise therefore fails to parse this configuration before it can install any tools.
Suggested fix: Keep the inline table on one line, or move the resend-cli options into a TOML table form that supports multiline values.
| "npm:resend-cli" = { version = "latest", allow_builds = ["esbuild"], trust_policy_excludes = [ | |
| "resend@>=6.18.1", | |
| ] } | |
| "npm:resend-cli" = { version = "latest", allow_builds = ["esbuild"], trust_policy_excludes = ["resend@>=6.18.1"] } |
resend stopped publishing with npm provenance from 6.18.1 onward, which trips aube's no-downgrade trust policy and blocks any resend-cli upgrade. Scope the exclude to resend@>=6.18.1 so it covers every affected release without weakening the policy for anything else. No version is bumped here; Renovate handles the resend-cli upgrade separately.
3045da5 to
3e4eba0
Compare
Summary
npm:resend-clito install despiteresendlosing npm provenance, by addingtrust_policy_excludes = ["resend@>=6.18.1"]to the global mise configresend-cliupgrade is left to RenovateWhy
Lock file maintenance (#3990) bumps
resend-cli2.10.0 -> 2.15.0, which pinsresendat 6.21.0. That fails the WSL installer test:This is not a compromise.
resendbriefly published through CI:That window is resend/resend-node#999 (
feat: tegami release process, merged 2026-07-03), reverted by resend/resend-node#1033 (merged 2026-07-27) because it "was a bit of an internal experiment" with unresolved prerelease details. 6.18.1 is the first release after the revert.The same trust failure was already reported upstream as resend/resend-node#1061, and a maintainer confirmed it is expected "for a while in the following new versions, while we are reworking our automation release processes".
Scope of the exclude
resend@>=6.18.1rather than a single pinned version, so a futureresend-clibump that pulls 6.22.0 or later does not reintroduce the failure. Versions up to 6.18.0 keep their provenance requirement, and no other package is affected.Verification
Installed
npm:resend-cliinto an isolatedMISE_DATA_DIR:resend@>=6.18.1, resend-cli 2.15.0resend@>=6.18.1, resend-cli 2.10.0 (current pin)mise run check --lintpasses.Notes
mise.lockoptions entry is updated to match, since mise records install-time options thereSummary by Sourcery
Exclude newer
resendreleases from the npm trust policy soresend-cliinstallation continues to work while the package’s release provenance is being reworked.Bug Fixes:
resend-clidespite missing npm provenance on newerresendreleases.Enhancements:
resend@>=6.18.1while preserving provenance checks for earlier versions.Chores: