refactor: hoist the alpha.3 transitive peers into devDependencies
Replace the pnpm-workspace.yaml overrides with the plain-repo pattern: install every peer the dev tree touches (dsh-attachment, dsh-code-runtime, dsh-scope, dsh-session-projection, dsh-system-prompt, dsh-user-approval, dsh-util-time) as direct devDependencies pinned to the baseline, same as the thirteen already there. Root-level hoisting makes pnpm resolve the peers natively (peers check: zero unmet, no global forcing), and the list extends the existing bump workflow instead of introducing a new mechanism. Verified: typecheck clean, 107 test files / 1137 tests green, and the real-host mount smoke passes 14/14 against @deepseek-ai/dsh@0.1.2-alpha.3.
This commit is contained in:
@@ -37,7 +37,7 @@
|
||||
6. **`dsh-subagent` 的 `SUBAGENT_DESCRIPTOR_VERSION` 2 → 3**:sidechat 种子的 `subagent/descriptor` 版本由宿主包盖章,插件不硬编码;测试断言跟随常量(`tests/sidechat-routes.spec.ts`),勿钉字面量。
|
||||
7. **`@deepseek-ai/dsh-client-runtime` 包已消亡**(继任 seed 是裸名 `dsh-client-store`,无 `/client` 子路径):peerDependencies、devDependencies、`dsh.client.inject`、chunk externals 白名单(`src/client/chunk-loader.ts` / `tsdown.config.ts` / `tests/chunk-loader.spec.ts` / `tests/manifest-consistency.spec.ts` 四处同步)均已无该条目。
|
||||
8. **e2e scratch profile 的 `minimumReleaseAgeExclude` 含 `'@deepseek-ai/*'`**(`scripts/e2e-mount.sh` / `e2e-aggregate-mount.sh`,与仓库根 `pnpm-workspace.yaml` 同策):alpha 版本常在发布后 24h 内跑 lane,pnpm 11 的 `minimumReleaseAge` 默认会拒装新鲜包。
|
||||
9. **插件开发树的 dsh-* 传递 peer 需 overrides 钉齐**(alpha.3 首见):`dsh-subagent` 等 npm 包把 `dsh-attachment` 等 dsh-* 姊妹包全部声明为 peerDependencies(由宿主 bundle 树统一提供,宿主侧无此问题),插件仓库只直接 devDeps 其中 13 个——其余 peer(dsh-attachment / dsh-code-runtime / dsh-scope / dsh-session-projection / dsh-system-prompt / dsh-user-approval / dsh-util-time)在 pnpm 下会解析到树上残留的旧版,如 `dsh-attachment@0.1.1-rc.1` 缺 `admitPromptContent` 导出、`dsh-subagent` 产物 import 它时测试加载即崩。仓库根 `pnpm-workspace.yaml` 的 `overrides` 将这 7 个钉到 alpha 线——**属长期兜底而非等上游修复的临时补丁**(除非上游改为 dependencies 声明);`@deepseek-ai/cordis` peer 自 alpha.3 起要求 `^4.0.2`(上游全线 peer 已升)。适配新 alpha 版本时先跑 `pnpm peers check` 复查失配清单并扩充 override 列表。
|
||||
9. **插件开发树的 dsh-* 传递 peer 需提升为 devDependencies**(alpha.3 首见):`dsh-subagent` 等 npm 包把 `dsh-attachment` 等 dsh-* 姊妹包全部声明为 peerDependencies(由宿主 bundle 树统一提供,宿主侧无此问题),插件仓库若只直接依赖其中一部分,其余 peer 在 pnpm 下会解析到树上残留的旧版——如 `dsh-attachment@0.1.1-rc.1` 缺 `admitPromptContent` 导出、`dsh-subagent` 产物 import 它时测试加载即崩。因此 devDependencies 需涵盖 dev 树实际触达的全部 peer(attachment / code-runtime / scope / session-projection / system-prompt / user-approval / util-time 七个即为此提升,与直接依赖同款精确钉版);`@deepseek-ai/cordis` peer 自 alpha.3 起要求 `^4.0.2`(上游全线 peer 已升)。适配新 alpha 版本时先跑 `pnpm peers check`,把新失配的传递 peer 一并提升进 devDependencies。
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -141,18 +141,25 @@
|
||||
"devDependencies": {
|
||||
"@cordisjs/plugin-loader": "^1.0.0-rc.5",
|
||||
"@deepseek-ai/dsh-agent": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-attachment": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-client-locale": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-client-ui-conversation": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-client-ui-primitives": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-client-ui-settings": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-client-ui-slots": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-code-runtime": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-host-webserver": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-invariants": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-llm": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-scope": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-session": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-session-projection": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-settings": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-subagent": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-system-prompt": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-tools": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-user-approval": "0.1.2-alpha.3",
|
||||
"@deepseek-ai/dsh-util-time": "0.1.2-alpha.3",
|
||||
"@huanlin/dsh-plugin-better-locale": "^0.1.0",
|
||||
"@playwright/test": "^1.62.1",
|
||||
"@types/node": "^24.0.0",
|
||||
|
||||
Generated
+38
-26
@@ -4,15 +4,6 @@ settings:
|
||||
autoInstallPeers: true
|
||||
excludeLinksFromLockfile: false
|
||||
|
||||
overrides:
|
||||
'@deepseek-ai/dsh-attachment': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-code-runtime': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-user-approval': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-util-time': 0.1.2-alpha.3
|
||||
|
||||
importers:
|
||||
|
||||
.:
|
||||
@@ -117,6 +108,9 @@ importers:
|
||||
'@deepseek-ai/dsh-agent':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(6db40c898bf1f9c9361b38a9ea2de9a5)
|
||||
'@deepseek-ai/dsh-attachment':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-brand@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)))(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))
|
||||
'@deepseek-ai/dsh-client-locale':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)
|
||||
@@ -132,6 +126,9 @@ importers:
|
||||
'@deepseek-ai/dsh-client-ui-slots':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)
|
||||
'@deepseek-ai/dsh-code-runtime':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))
|
||||
'@deepseek-ai/dsh-host-webserver':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))
|
||||
@@ -141,18 +138,33 @@ importers:
|
||||
'@deepseek-ai/dsh-llm':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))
|
||||
'@deepseek-ai/dsh-scope':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))
|
||||
'@deepseek-ai/dsh-session':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-scope@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)))
|
||||
'@deepseek-ai/dsh-session-projection':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-session@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-scope@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))))
|
||||
'@deepseek-ai/dsh-settings':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-brand@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)))(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-session@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-scope@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))))(@deepseek-ai/schemastery@3.18.2)
|
||||
'@deepseek-ai/dsh-subagent':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(8e9d028c06ce5b195ed6c8c25c74c52c)
|
||||
'@deepseek-ai/dsh-system-prompt':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-llm@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)))(@deepseek-ai/dsh-scope@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)))
|
||||
'@deepseek-ai/dsh-tools':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(9856107a6511bd37694bb5d55ebb619c)
|
||||
'@deepseek-ai/dsh-user-approval':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(802fc4f1099cfbae100b0e7a224c7b5b)
|
||||
'@deepseek-ai/dsh-util-time':
|
||||
specifier: 0.1.2-alpha.3
|
||||
version: 0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))
|
||||
'@huanlin/dsh-plugin-better-locale':
|
||||
specifier: ^0.1.0
|
||||
version: 0.1.0(@deepseek-ai/cordis@4.0.2)(@deepseek-ai/dsh-client-locale@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-client-ui-primitives@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-client-ui-settings@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-client-ui-slots@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(@deepseek-ai/dsh-invariants@0.1.2-alpha.3(@deepseek-ai/cordis@4.0.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)
|
||||
@@ -370,10 +382,10 @@ packages:
|
||||
'@deepseek-ai/cordis': ^4.0.2
|
||||
'@deepseek-ai/dsh-invariants': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-llm': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-typert-protocol': ^0.1.2-alpha.3
|
||||
|
||||
'@deepseek-ai/dsh-attachment@0.1.2-alpha.3':
|
||||
@@ -453,7 +465,7 @@ packages:
|
||||
resolution: {integrity: sha512-iwWs0FdShoiCLLVk6lSZL18vKlFuliQXqy6gnu4U34B8K3uPb+QYWHjB3PrTXcK8ZVmb0zdWeyZ9osmANWWKnw==}
|
||||
peerDependencies:
|
||||
'@deepseek-ai/cordis': ^4.0.2
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': ^0.1.2-alpha.3
|
||||
|
||||
'@deepseek-ai/dsh-settings@0.1.2-alpha.3':
|
||||
resolution: {integrity: sha512-+zwP970YwzJoRdvFJUBN/mMN7BjSwX4nrhLcWbR9YmTUpGV+8mFXnSh25QMKOTQpQk7p+zPqgAFRRCujHIN2xQ==}
|
||||
@@ -470,23 +482,23 @@ packages:
|
||||
'@deepseek-ai/cordis': ^4.0.2
|
||||
'@deepseek-ai/dsh-agent': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-agent-presets': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-attachment': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-attachment': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-invariants': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-jobs': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-llm': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-sandbox': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-sandbox-policy': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-persistence': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection-cache': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-query': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-tools': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-typert-protocol': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-user-approval': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-util-time': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-user-approval': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-util-time': ^0.1.2-alpha.3
|
||||
peerDependenciesMeta:
|
||||
'@deepseek-ai/dsh-agent-presets':
|
||||
optional: true
|
||||
@@ -513,7 +525,7 @@ packages:
|
||||
'@deepseek-ai/cordis': ^4.0.2
|
||||
'@deepseek-ai/dsh-invariants': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-llm': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': ^0.1.2-alpha.3
|
||||
|
||||
'@deepseek-ai/dsh-timeout@0.1.2-alpha.3':
|
||||
resolution: {integrity: sha512-BWCusO6Q3GPl5NsUJVNggKF4lOyij5IG5dSgAVdoDhB25b7TAnNHEzUvGt4qxBbQE2xGmeAj+WA0QG1E2X/NuQ==}
|
||||
@@ -526,13 +538,13 @@ packages:
|
||||
peerDependencies:
|
||||
'@deepseek-ai/cordis': ^4.0.2
|
||||
'@deepseek-ai/dsh-agent': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-code-runtime': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-code-runtime': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-invariants': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-llm': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-user-approval': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-user-approval': ^0.1.2-alpha.3
|
||||
|
||||
'@deepseek-ai/dsh-typert-protocol@0.1.2-alpha.3':
|
||||
resolution: {integrity: sha512-yE3qjCbbOD0y4c0rv7hYq2sV/kLsoJ/m8+a6d8uNlEwV+W74HtpuWS8VjfWqRJZCcDRpv7yvu+/6Arw0vYl0Xg==}
|
||||
@@ -548,9 +560,9 @@ packages:
|
||||
'@deepseek-ai/dsh-brand': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-invariants': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-llm': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session': ^0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': ^0.1.2-alpha.3
|
||||
|
||||
'@deepseek-ai/dsh-util-crypto@0.1.2-alpha.3':
|
||||
resolution: {integrity: sha512-bjHvzi4C4Xm04NNbYQChWBcPG7IJeujKxyKQYwY+muw+BC3EVVWw3JMovrjYdHzmu0/ePS0z0rAho73Etl4BVg==}
|
||||
|
||||
+7
-15
@@ -9,21 +9,13 @@ allowBuilds:
|
||||
protobufjs: true
|
||||
|
||||
# The @deepseek-ai/* packages declare their dsh-* siblings as peerDependencies
|
||||
# (the DSH host bundle provides them all at mount time), but this repo installs
|
||||
# only a subset as direct devDependencies, so the remaining transitive peers
|
||||
# resolve to stale copies under pnpm — e.g. dsh-attachment 0.1.1-rc.1, which
|
||||
# predates the `admitPromptContent` export that dsh-subagent's artifacts
|
||||
# import. Pin those to the alpha line the upstream monorepo tests against.
|
||||
# This is a standing shim, not an upstream bug workaround: extend the list
|
||||
# (audit with `pnpm peers check`) whenever the DSH baseline is bumped.
|
||||
overrides:
|
||||
'@deepseek-ai/dsh-attachment': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-code-runtime': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-scope': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-session-projection': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-system-prompt': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-user-approval': 0.1.2-alpha.3
|
||||
'@deepseek-ai/dsh-util-time': 0.1.2-alpha.3
|
||||
# (the DSH host bundle provides them all at mount time). This repo installs
|
||||
# every peer the dev tree needs as a direct devDependency pinned to the
|
||||
# baseline (see package.json), so pnpm resolves them instead of floating to
|
||||
# stale copies — e.g. dsh-attachment 0.1.1-rc.1 predates the
|
||||
# `admitPromptContent` export that dsh-subagent's artifacts import. When
|
||||
# bumping the DSH baseline, audit with `pnpm peers check` and hoist any
|
||||
# newly-unmet transitive peers into devDependencies too.
|
||||
|
||||
minimumReleaseAgeExclude:
|
||||
- '@deepseek-ai/*'
|
||||
|
||||
Reference in New Issue
Block a user