Skip to content
MyDSHMy DSH Field Notes
中文
Independently maintained; not affiliated with DeepSeek. No association with mydsh.dev or other MyDSH sites.

Home/Modes & context/Glossary

Term: version gate (engines.dsh) — a concept with no implementation in sight

Plugin notes mention 'engines.dsh mismatch' or 'rejected by the version gate' and you do not know the mechanism.

To be testedVersion and environmentChecked 2026-11-14
Measured
223 packages under profiles/node_modules, none declare dsh in engines
Checked
2026-11-14

Copyable command

python -c "import json,glob;print(sum(1 for p in glob.glob('*/package.json') if 'dsh' in ((json.load(open(p,encoding='utf-8')).get('engines') or {}))))"

Literal definition: a plugin declares its supported host version range in engines.dsh inside package.json; when the host falls outside it, the plugin stays listed but is not loaded.

Measured: reading every package.json for the 223 packages under ~/.dsh/profiles/node_modules, zero declare engines.dsh. Not one official package declares it.

So on this version there is no observable evidence of the gate as a mechanism: nothing declares it, so nothing can be blocked by it. The 'rejected by the version gate' entry in /fix/ comes from a community plugin's CHANGELOG and is a compiled claim, not our measurement.

Then how does incompatibility show up

On this version, observable compatibility problems come from two places:

  • Host engines.node: the node requirement in package.json, >=24.9.0 from 0.2.2. This one genuinely applies.
  • Dependencies failing to install: the plugin's own dependencies break during pnpm install, so it fails at install time rather than loading and being skipped.

How to use this

When you meet a claim like 'the version gate rejected it', ask three questions: which file declares it, where the host checks it, and what refusal looks like. If none can be answered, treat it as a community claim, not a troubleshooting step.

What counts as working

Check every line. All of them pass or the job is not done.

  • Run the command and confirm zero
  • You know engines.node and engines.dsh are different
  • You do not cite the gate as a troubleshooting step without qualification

Where it fails

Symptom, cause, what to do — written in the order it actually happens.

SymptomCauseWhat to do
Incompatible yet no error at allNo gate mechanism in this version; the plugin loads anywayDebug via dependency and runtime errors, not a gate

Sources

Verified means measured here. Compiled means every line carries a source.