@dingpenghui/dsh-obsidian-sync 3.4.7 → 3.4.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/RELEASE_NOTES_v3.4.8.md +75 -0
- package/lib/client.js +6 -6
- package/package.json +7 -3
- package/RELEASE_NOTES_v3.4.7.md +0 -20
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# v3.4.8 — 补上 engines.dsh 兼容声明
|
|
2
|
+
|
|
3
|
+
> `@dingpenghui/dsh-obsidian-sync@3.4.8`
|
|
4
|
+
|
|
5
|
+
本批更新为以下插件加入 `engines.dsh`,并附回归检查脚本:
|
|
6
|
+
|
|
7
|
+
| 包 | 旧版本 | 新版本 | engines.dsh |
|
|
8
|
+
|---|---|---|---|
|
|
9
|
+
| `@dingpenghui/dsh-conversation-language` | 3.2.4 | 3.2.5 | `>=0.2.0-rc.1 <0.3.0-0` |
|
|
10
|
+
| `@dingpenghui/dsh-obsidian-sync` | 3.4.7 | 3.4.8 | `>=0.2.0-rc.1 <0.3.0-0` |
|
|
11
|
+
| `@dingpenghui/dsh-supply-chain-switch` | 1.1.1 | 1.1.2 | `>=0.2.0-rc.1 <0.3.0-0` |
|
|
12
|
+
| `@dingpenghui/agnes` | 1.6.2 | 1.6.3 | `>=0.2.0-rc.2 <0.3.0-0` |
|
|
13
|
+
| `@dingpenghui/agnes-image` | 1.6.1 | 1.6.2 | `>=0.2.0-rc.2 <0.3.0-0` |
|
|
14
|
+
| `@dingpenghui/agnes-video` | 1.6.1 | 1.6.2 | `>=0.2.0-rc.2 <0.3.0-0` |
|
|
15
|
+
| `@dingpenghui/agnes-img2vid` | 1.6.1 | 1.6.2 | `>=0.2.0-rc.2 <0.3.0-0` |
|
|
16
|
+
|
|
17
|
+
**行为不变**:本批只增加元数据声明与检查脚本,不涉及任何运行时代码改动。
|
|
18
|
+
|
|
19
|
+
## 为什么要加
|
|
20
|
+
|
|
21
|
+
DSH 的安装门禁(`@deepseek-ai/dsh-app-boot` 的 `unmetRequirements`)按以下顺序判定插件与运行时的兼容性:
|
|
22
|
+
|
|
23
|
+
1. 清单里有 `engines.dsh` → **只依据它**,`peerDependencies` 全部忽略;
|
|
24
|
+
2. 没有 `engines.dsh` → 退回逐个检查 `@deepseek-ai/dsh` / `@deepseek-ai/dsh-*` 的 peer,
|
|
25
|
+
判定式为 `semver.satisfies(runtime, range, { includePrerelease: true })`。
|
|
26
|
+
|
|
27
|
+
第 2 条分支容易出问题。参考实例:`dsh-web-search-serper` 曾在 peer 里把
|
|
28
|
+
`@deepseek-ai/dsh-web` 钉成精确版本 `0.2.0-rc.2`,而运行时是 `0.2.1-rc.2`——
|
|
29
|
+
在该判定规则下 `0.2.1-rc.2` **不满足** `0.2.0-rc.2`,安装被直接拒绝:
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
Plugin ...@1.1.1 is incompatible with dsh 0.2.1-rc.2:
|
|
33
|
+
requirements {"@deepseek-ai/dsh-web":"0.2.0-rc.2"}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
声明 `engines.dsh` 后,兼容范围由一个显式区间单独表达,不再受 peer 声明的意外改动影响。
|
|
37
|
+
|
|
38
|
+
同时它也提供**未来的保护**:这些插件此前没有任何版本约束,一旦 DSH 升到未验证的
|
|
39
|
+
`0.3.x`,它们会静默通过安装门禁,而不是被明确拦下——问题会推迟到运行时才暴露。
|
|
40
|
+
|
|
41
|
+
## 回归检查
|
|
42
|
+
|
|
43
|
+
每个包新增 `engines-check.mjs`(无外部依赖):
|
|
44
|
+
|
|
45
|
+
- 断言清单声明了 `engines.dsh`;
|
|
46
|
+
- 断言区间排除 `0.3.x`(契约未验证的版本线);
|
|
47
|
+
- 断言放行实测过的运行时 `0.2.0-rc.2` / `0.2.1-rc.2`;
|
|
48
|
+
- 断言拒绝 `0.3.0`。
|
|
49
|
+
|
|
50
|
+
已接入 `test` 与 `prepublishOnly`,因此漏声明不会再被发布出去:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
node engines-check.mjs
|
|
54
|
+
# OK compatibility declaration checks passed (engines.dsh = >=0.2.0-rc.x <0.3.0-0)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 下界取值依据
|
|
58
|
+
|
|
59
|
+
区间下界不是统一套用的,而是取自各包**实际验证过的**运行时:
|
|
60
|
+
|
|
61
|
+
- `conversation-language` / `obsidian-sync` / `supply-chain-switch` 的 DSH peer 声明下界为 `0.2.0-rc.1`,故定为 `>=0.2.0-rc.1`;
|
|
62
|
+
- `agnes` 系列三个组件的 peer 声明为 `^0.2.0-rc.2`,故定为 `>=0.2.0-rc.2`。
|
|
63
|
+
|
|
64
|
+
## 验证
|
|
65
|
+
|
|
66
|
+
针对每个包用 DSH 自身的判定规则(同版本 semver `7.8.5`、`includePrerelease: true`)运行:
|
|
67
|
+
|
|
68
|
+
| 运行时 | 期望 | 结果 |
|
|
69
|
+
|---|---|---|
|
|
70
|
+
| 0.2.0-rc.2 | 放行 | PASS |
|
|
71
|
+
| 0.2.1-rc.2 | 放行 | PASS |
|
|
72
|
+
| 0.3.0 | 拒绝 | PASS |
|
|
73
|
+
|
|
74
|
+
也已在当前 DSH Desktop `0.2.1-rc.2` 上实测:全部插件正常加载、客户端 slot 注册为 active。
|
|
75
|
+
|
package/lib/client.js
CHANGED
|
@@ -128,15 +128,15 @@ window.__ModuleLoader__.load({
|
|
|
128
128
|
document.head.appendChild(tag);
|
|
129
129
|
}
|
|
130
130
|
var PluginDetailPage_module_css_default = {
|
|
131
|
-
"
|
|
131
|
+
"gitHint": "jWPSbW_gitHint",
|
|
132
|
+
"field": "jWPSbW_field",
|
|
132
133
|
"page": "jWPSbW_page",
|
|
134
|
+
"input": "jWPSbW_input",
|
|
133
135
|
"fieldText": "jWPSbW_fieldText",
|
|
134
|
-
"
|
|
135
|
-
"field": "jWPSbW_field",
|
|
136
|
-
"gitHint": "jWPSbW_gitHint",
|
|
137
|
-
"title": "jWPSbW_title",
|
|
136
|
+
"subHint": "jWPSbW_subHint",
|
|
138
137
|
"hint": "jWPSbW_hint",
|
|
139
|
-
"
|
|
138
|
+
"inputSmall": "jWPSbW_inputSmall",
|
|
139
|
+
"title": "jWPSbW_title"
|
|
140
140
|
};
|
|
141
141
|
//#endregion
|
|
142
142
|
//#region src/client/plugin-detail-page.tsx
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dingpenghui/dsh-obsidian-sync",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.8",
|
|
4
4
|
"description": "DSH Obsidian Sync - DSH Cordis plugin: on-demand Obsidian knowledge-base search + DSH session archiving following your vault's existing PARA rules (zero token injection, in-process fs, inverted index, idempotent upsert)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -21,8 +21,11 @@
|
|
|
21
21
|
"src",
|
|
22
22
|
"cordis.patch.yml",
|
|
23
23
|
"README.md",
|
|
24
|
-
"RELEASE_NOTES_v3.4.
|
|
24
|
+
"RELEASE_NOTES_v3.4.8.md"
|
|
25
25
|
],
|
|
26
|
+
"engines": {
|
|
27
|
+
"dsh": ">=0.2.0-rc.1 <0.3.0-0"
|
|
28
|
+
},
|
|
26
29
|
"dsh": {
|
|
27
30
|
"bundle": {
|
|
28
31
|
"patch": "./cordis.patch.yml"
|
|
@@ -44,7 +47,8 @@
|
|
|
44
47
|
"build": "tsdown",
|
|
45
48
|
"dev": "tsdown --watch",
|
|
46
49
|
"typecheck": "tsc -p tsconfig.json",
|
|
47
|
-
"test": "node smoke-test.mjs"
|
|
50
|
+
"test": "node smoke-test.mjs && node engines-check.mjs",
|
|
51
|
+
"prepublishOnly": "node engines-check.mjs"
|
|
48
52
|
},
|
|
49
53
|
"dependencies": {},
|
|
50
54
|
"peerDependencies": {
|
package/RELEASE_NOTES_v3.4.7.md
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# 发布说明 v3.4.7
|
|
2
|
-
|
|
3
|
-
**日期:** 2026-10-03
|
|
4
|
-
|
|
5
|
-
## 修复 / Fixes
|
|
6
|
-
|
|
7
|
-
- **依赖模型重构**:`@deepseek-ai/schemastery` 和 `react` 从运行时 `dependencies` 移到 `peerDependencies`(标 `optional: true`),仅保留已有宿主模块 peer 不变。
|
|
8
|
-
- 根因:本插件是 DSH 宿主扩展,运行时在宿主进程内执行。宿主已经把 `schemastery` 加载进同一进程作为宿主模块。本插件若再以 `dependencies` 携带同版本包,pnpm 会在插件树里**再实例化一份**,与宿主单实例不一致。
|
|
9
|
-
- 影响:插件自身代码行为不变,只改变了"谁提供这些包"——现在统一由 DSH 宿主提供,单实例。
|
|
10
|
-
|
|
11
|
-
## 不变 / Unchanged
|
|
12
|
-
|
|
13
|
-
- `dsh-tools` / `dsh-fs` / `dsh-sandbox` / `dsh-util-values` 等宿主模块 peer 全部保持不变(`>=0.2.0-rc.1`,`optional`)。
|
|
14
|
-
- Obsidian 知识库搜索、会话归档、PARA 规则匹配等核心功能全部不变。
|
|
15
|
-
- `smoke-test` 不变。
|
|
16
|
-
|
|
17
|
-
## 升级指引 / Upgrade
|
|
18
|
-
|
|
19
|
-
- 从 3.4.6 升到 3.4.7 无 breaking change,直接 `pnpm update @dingpenghui/dsh-obsidian-sync` 即可。
|
|
20
|
-
- 插件安装后宿主行为不变,但不再在插件树里携带 `schemastery` 副本。
|