Files
fkysly 3c4e7d3a8c fix: declare a dsh-tools peer range that matches hosts that exist (#12)
`@deepseek-ai/dsh-tools: ^0.1.0-rc.6` only ever matched `0.1.0-rc.6/7/8`, yet
it is the range that shipped as the 0.3.7 fix for #4. Node-semver lets a
prerelease satisfy a range only when a comparator in that range carries a
prerelease on the *same* major.minor.patch, so pinning one prerelease line
excludes every later one — and every DSH release is a prerelease. Hosts ship
lockstep (`dsh@0.1.5-rc.1` → `dsh-base` → `dsh-tools@^0.1.5-rc.1`), so the
declared range has matched no host since 0.1.1, including both the current
`latest` and `next`.

The range now names each shipped host line through 0.1.7, and
`scripts/check-peer-range.mjs` resolves `latest`/`next` from the registry,
finds the dsh-tools version each installs, and fails when the declared range
does not accept it — so the next host line is caught the day it ships instead
of in a user's bug report. CI runs it, and a second job typechecks against
`dsh-tools@next`.
2026-09-25 22:56:02 +08:00
..