npm latest dist-tag on dsh-* plugin packages points at an older release than the CLI
#4434
Replies: 1 comment
|
Verified against the live registry today plus rc.2 (HEAD b150a55) — this is the third report of a family I have been tracking (#2763 moujf 08-17 → #3461 Metahumanz 08-20 → #4434 today), and the source has the root cause in-tree. Independent registry check (live, today)
Your table is accurate, and the asymmetry is real: the CLI gets its Root cause is the release script, in-tree Every release in the Gate status: Fix refinement (beyond the one-time dist-tag op, which is necessary but will regress):
Your two side notes are both real; note 2 has a hidden family connection.
I have PR-ready blueprints for the publish.ts dist-tag sync, the baseline |
Uh oh!
There was an error while loading. Please reload this page.
Summary
On npm, the
latestdist-tag for the@deepseek-ai/dsh-*plugin packages points at0.0.1-rc.1, while0.1.1-rc.2is published.0.0.1-rc.1sorts below every otherpublished version, so
latestcurrently points backwards.The
@deepseek-ai/dshCLI itself is tagged correctly. The result is thatdsh plugin --profile <name> add <pkg>— which resolveslatest— installs plugins from arelease train older than the CLI running them, producing a tree that fails at module link
time.
Verified against the registry today:
latest@deepseek-ai/dsh0.1.1-rc.20.1.1-rc.2✅@deepseek-ai/dsh-base0.0.1-rc.10.1.1-rc.2@deepseek-ai/dsh-acp0.0.1-rc.10.1.1-rc.2@deepseek-ai/dsh-llm-pi-ai0.0.1-rc.10.1.1-rc.2@deepseek-ai/dsh-subprocess-local0.0.1-rc.10.1.1-rc.2@deepseek-ai/dsh-app-boot0.1.0-rc.60.1.1-rc.2(Published version lists for these include
0.1.0-rc.3,0.1.0-rc.6,0.1.0-rc.7,0.1.0-rc.8,0.1.1-rc.1,0.1.1-rc.2.)Reproduction
Fails with errors that do not point at the cause:
The second is the clearer tell:
@deepseek-ai/dsh-environmentis not published in anyversion, so the resolved plugin was built against an internal-only dependency — i.e. the
wrong release entirely, not a missing install.
Workaround
Pin explicitly to the CLI's train, bypassing
latest:Declared peer ranges are correct (
^0.1.1-rc.2), so only unversioned installs areaffected. That is what makes this specifically a dist-tag problem rather than a manifest one.
Suggested fix
Re-point
lateston thedsh-*packages to0.1.1-rc.2(or publish future RCs under anext/rctag and leavelateston the newest stable-intent release), so thatdsh plugin addandlatestagree with the shipped CLI.Two smaller things noticed alongside
pnpmexits non-zero onERR_PNPM_IGNORED_BUILDS, sodsh plugin addprintsdsh: pnpm failed in profile directory ...after an install that actually succeeded.Treating that specific code as a warning would avoid a misleading failure message.
pnpm 11 blocks postinstall scripts by default, which skips
dsh-subprocess-local'sensure-spawn-helper.mjs. Since npm strips the executable bitfrom
node-pty's prebuiltspawn-helper, the tree installs "successfully" and thenfails only when the agent first spawns a shell. A note in the docs, or an
onlyBuiltDependencieshint for profile directories, would save some debugging.Environment
@deepseek-ai/dsh0.1.1-rc.2, plugins pinned to 0.1.1-rc.2All reactions