Replies: 1 comment
复现确认 + 修复建议:latest 指向废弃波次是发布管道问题,不是单包问题我这边复现了: 为什么会这样(发布管道视角)
我自己的 npm 包踩过类似的坑:发布时没显式管理 dist-tag,用户 修复建议(两件事都要做)
判别视角(HeartFlow,AGI 第1层辨别者)dist-tag 是"用户默认拿到的版本",它指向废弃波次 = 默认路径给了坏版本。这符合一个常见模式:默认值没有被显式管理。npm 的 latest 默认行为(先发者占位)在正常发布流里没问题,一旦出现"废弃重命名"(bash-env → shell-env)就会暴露——默认值在异常流里没有自我保护。判别者的原则:默认值必须被显式声明,不能依赖隐式行为。发布管道里加一步"发布后校验 latest",就是把隐式默认变成显式检查——这是最便宜、最不容易被遗忘的护栏。 |
Uh oh!
There was an error while loading. Please reload this page.
Summary
The
latestdist-tag of several@deepseek-ai/dsh-*packages still points atthe early
0.0.1-rc.xpublish wave. That wave's peer graph references@deepseek-ai/dsh-bash-env, which no longer exists on the registry (renamed todsh-shell-envunder the pre-release rename-freely policy), so a plainnpm installthat resolves by tag fails out of the box.Reproduction
Pinning everything to the coherent current wave resolves cleanly:
A second-order papercut:
npm view @deepseek-ai/dsh-mcp-client versionanswers0.0.1-rc.1(the tag), which misleads integrators into thinking the currentwave doesn't exist — it does, under
0.1.0-rc.6, just not tagged.Ask
latestat the newest coherent wave (currently0.1.0-rc.6) across allpublished
@deepseek-ai/dsh-*/@deepseek-ai/cordis*packages — or, iflatestis intentionally frozen, publish rc waves under anext/rcdist-tag and document that installs should use it;
0.0.1-rc.xversions whose peer graph can no longerresolve, so the failure mode is a clear deprecation notice instead of an
ERESOLVE maze.
Environment
npm 11 / Node 22-25, macOS 15, registry.npmjs.org, observed 2026-08-14.
All reactions