@omdp/dsh-archived-sessions 0.3.6 → 0.3.7
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/README.md +34 -13
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# @omdp/dsh-archived-sessions
|
|
2
2
|
|
|
3
|
-
> Archived-sessions manager for the DeepSeek Harness web UI — fork of [`@muwinds/dsh-archived-sessions`](https://github.com/MuWinds/dsh-archived-sessions) (0.2.0), adapted for DSH **0.1.5-rc.1** through **0.1.7-rc.
|
|
3
|
+
> Archived-sessions manager for the DeepSeek Harness web UI — fork of [`@muwinds/dsh-archived-sessions`](https://github.com/MuWinds/dsh-archived-sessions) (0.2.0), adapted for DSH **0.1.5-rc.1** through **0.1.7-rc.2**.
|
|
4
4
|
|
|
5
|
-
DSH 归档会话管理:在 设置 → 归档会话管理 中查看、释放、删除已归档会话(支持按树删除子会话、清理孤儿会话)。自 0.3.4 起与 DSH 0.1.6 内置的「已归档会话」设置页共存、互不冲突。0.3.6 起 `ctx.shell` 双时代自适应(`run()` / `execute()`),**0.1.5-rc.1 → 0.1.7-rc.
|
|
5
|
+
DSH 归档会话管理:在 设置 → 归档会话管理 中查看、释放、删除已归档会话(支持按树删除子会话、清理孤儿会话)。自 0.3.4 起与 DSH 0.1.6 内置的「已归档会话」设置页共存、互不冲突。0.3.6 起 `ctx.shell` 双时代自适应(`run()` / `execute()`),**0.1.5-rc.1 → 0.1.7-rc.2 全区间删除可用**(0.3.7 追加 rc.2 声明)。
|
|
6
6
|
|
|
7
7
|
[English](#english) · [中文](#中文)
|
|
8
8
|
|
|
@@ -48,8 +48,8 @@ pnpm add @omdp/dsh-archived-sessions -w
|
|
|
48
48
|
|
|
49
49
|
### 要求 / Requirements
|
|
50
50
|
|
|
51
|
-
- DeepSeek Harness **0.1.5-rc.1**、**0.1.5-rc.2**、**0.1.6-alpha.1**、**0.1.7-rc.1**(实测版本;**0.3.6
|
|
52
|
-
- `@deepseek-ai/dsh` `0.1.7-rc.1`(peer,逐版本枚举,0.3.6
|
|
51
|
+
- DeepSeek Harness **0.1.5-rc.1**、**0.1.5-rc.2**、**0.1.6-alpha.1**、**0.1.7-rc.1**、**0.1.7-rc.2**(实测版本;**0.3.6 起全兼容**,0.3.7 追加 rc.2 声明,0.3.5 与 0.1.5/0.1.6 系列**静默不兼容**——见变更记录)
|
|
52
|
+
- `@deepseek-ai/dsh` `0.1.7-rc.1 || 0.1.7-rc.2`(peer,逐版本枚举,0.3.6 起新增、0.3.7 追加 rc.2;语义见下方「兼容性门禁」)
|
|
53
53
|
- `@deepseek-ai/cordis` `4.0.1` / `4.0.2` / `4.0.4`(peer,逐版本枚举)
|
|
54
54
|
- `@deepseek-ai/dsh-session-persistence-jsonl`(可选,随 DSH 自带;缺失时回退到内置路径编码)
|
|
55
55
|
|
|
@@ -73,13 +73,18 @@ pnpm add @omdp/dsh-archived-sessions -w
|
|
|
73
73
|
|
|
74
74
|
### 兼容性门禁(0.3.6 起声明)
|
|
75
75
|
|
|
76
|
-
0.3.6 起在 `peerDependencies` 显式声明 `"@deepseek-ai/dsh": "0.1.7-rc.1"
|
|
76
|
+
0.3.6 起在 `peerDependencies` 显式声明 `"@deepseek-ai/dsh": "0.1.7-rc.1 || 0.1.7-rc.2"`(0.3.7 追加 rc.2)。
|
|
77
|
+
该声明由 DSH 自己的
|
|
77
78
|
**`evaluatePluginCompatibility()`**(`dsh-app-boot` 的公开导出)在安装与每次启动时校验:命中未实测
|
|
78
79
|
的新版本时会**整包优雅跳过**(stderr 打 `skipping profile bundle`,DSH 照常启动),命中实测版本
|
|
79
|
-
|
|
80
|
+
则正常加载。声明从 `0.1.7-rc.1` 起是因为**这个门禁本身是 0.1.7 才引入的**(逐版解包核对
|
|
80
81
|
`dsh-app-boot`:`0.1.5-rc.2`/`0.1.5-rc.3`/`0.1.6-alpha.1`/`0.1.6-alpha.2`/`0.1.7-alpha.1`/`0.1.7-alpha.2`
|
|
81
|
-
里 `evaluatePluginCompatibility` 出现 0
|
|
82
|
+
里 `evaluatePluginCompatibility` 出现 0 次)——旧运行时读到这条 peer
|
|
82
83
|
只是不认识的声明,**不影响加载**,所以老用户不会因为这条声明而失去插件。
|
|
84
|
+
0.3.7 追加 `0.1.7-rc.2` 的依据:rc.1→rc.2 tarball 逐文件 diff 显示 `dsh-shell`(本插件删除功能的
|
|
85
|
+
唯一 shell 依赖面)的 `lib/` **逐字节零变化**;再用 rc.2 的门禁跑新声明 → 放行;并在 scratch
|
|
86
|
+
profile(`dsh@0.1.7-rc.2` + 插件 0.3.6 + 精确版本豁免)上**真机实测完整删除链路**:
|
|
87
|
+
`POST /dsh-archived/delete` → `{"ok":true}` + 磁盘目录消失 + 归档集合清空。
|
|
83
88
|
|
|
84
89
|
### API
|
|
85
90
|
|
|
@@ -94,6 +99,13 @@ pnpm add @omdp/dsh-archived-sessions -w
|
|
|
94
99
|
|
|
95
100
|
### 变更记录
|
|
96
101
|
|
|
102
|
+
- **0.3.7**(2026-09-25):**追加 DSH `0.1.7-rc.2` 支持**(peer 枚举 `0.1.7-rc.1 || 0.1.7-rc.2`,代码零改动)。
|
|
103
|
+
背景:DSH 桌面版 0.1.7-rc.2 上线后,门禁把只声明 `0.1.7-rc.1` 的 0.3.6 拦下(插件列表「异常」)。
|
|
104
|
+
核查:`dsh-shell` 的 `lib/` 在 rc.1→rc.2 **逐字节零变化**(本插件唯一 shell 依赖面);rc.2 门禁执行
|
|
105
|
+
新声明 → 放行;scratch profile(`dsh@0.1.7-rc.2` + 0.3.6 + 豁免)**真机删除实测通过**——
|
|
106
|
+
`POST /dsh-archived/delete {"sessionId":"session-f71d25a2-…"}` → `{"ok":true,"deleted":true}` +
|
|
107
|
+
磁盘目录消失 + `archivedSessionIds` 清空 + `list` 回 `{items:[]}`(测试会话已从备份还原)。
|
|
108
|
+
|
|
97
109
|
- **0.3.6**(2026-09-24):**`ctx.shell` 双时代自适应 + 声明 DSH 版本支持**。
|
|
98
110
|
1. **修复 0.3.5 对 rc.x 的静默回归**:0.3.5 改用 `execute()` 修好了 0.1.7,但 `run()` 在
|
|
99
111
|
0.1.5/0.1.6 上才是唯一存在的方法,于是 0.3.5 在那些版本上**每次删除都抛**
|
|
@@ -162,8 +174,8 @@ pnpm add @omdp/dsh-archived-sessions -w
|
|
|
162
174
|
|
|
163
175
|
### Requirements
|
|
164
176
|
|
|
165
|
-
- DeepSeek Harness **0.1.5-rc.1**, **0.1.5-rc.2**, **0.1.6-alpha.1**, **0.1.7-rc.1** (tested; **0.3.6+ works on all
|
|
166
|
-
- `@deepseek-ai/dsh` `0.1.7-rc.1` (peer, enumerated per version, new in 0.3.6)
|
|
177
|
+
- DeepSeek Harness **0.1.5-rc.1**, **0.1.5-rc.2**, **0.1.6-alpha.1**, **0.1.7-rc.1**, **0.1.7-rc.2** (tested; **0.3.6+ works on all of them** — 0.3.7 adds the rc.2 declaration, 0.3.5 is *silently broken* on the 0.1.5/0.1.6 line, see changelog)
|
|
178
|
+
- `@deepseek-ai/dsh` `0.1.7-rc.1 || 0.1.7-rc.2` (peer, enumerated per version, new in 0.3.6, rc.2 added in 0.3.7)
|
|
167
179
|
- `@deepseek-ai/cordis` `4.0.1` / `4.0.2` / `4.0.4` (peer, enumerated per version)
|
|
168
180
|
- `@deepseek-ai/dsh-session-persistence-jsonl` (optional, ships with DSH; falls back to the built-in path encoding when absent)
|
|
169
181
|
|
|
@@ -189,15 +201,22 @@ it as the red "删除失败" banner) — both were bets on a single era.
|
|
|
189
201
|
|
|
190
202
|
### Compatibility gate (declared since 0.3.6)
|
|
191
203
|
|
|
192
|
-
Since 0.3.6 the plugin declares `"@deepseek-ai/dsh": "0.1.7-rc.1"` in `peerDependencies
|
|
204
|
+
Since 0.3.6 the plugin declares `"@deepseek-ai/dsh": "0.1.7-rc.1 || 0.1.7-rc.2"` in `peerDependencies`
|
|
205
|
+
(rc.2 added in 0.3.7). DSH's own
|
|
193
206
|
**`evaluatePluginCompatibility()`** (a public export of `dsh-app-boot`) checks it at install time and on
|
|
194
207
|
every boot: on an untested newer runtime the **whole bundle is gracefully skipped** (stderr prints
|
|
195
208
|
`skipping profile bundle`; DSH still boots), and on the tested runtime it loads normally. The declaration
|
|
196
|
-
|
|
209
|
+
starts at `0.1.7-rc.1` because **the gate itself only exists from 0.1.7** (verified per version by
|
|
197
210
|
unpacking `dsh-app-boot` tarballs: `evaluatePluginCompatibility` appears 0 times in
|
|
198
|
-
`0.1.5-rc.2`/`0.1.5-rc.3`/`0.1.6-alpha.1`/`0.1.6-alpha.2`/`0.1.7-alpha.1`/`0.1.7-alpha.2
|
|
199
|
-
|
|
211
|
+
`0.1.5-rc.2`/`0.1.5-rc.3`/`0.1.6-alpha.1`/`0.1.6-alpha.2`/`0.1.7-alpha.1`/`0.1.7-alpha.2`) — older
|
|
212
|
+
runtimes simply see an unrecognized peer declaration, so **existing users on older
|
|
200
213
|
DSH versions do not lose the plugin** because of it.
|
|
214
|
+
The `0.1.7-rc.2` addition (0.3.7) is based on: a file-by-file tarball diff showing `dsh-shell`'s `lib/`
|
|
215
|
+
(**this plugin's only shell surface**) is **byte-identical** rc.1 → rc.2; running the rc.2 gate against the
|
|
216
|
+
new declaration → pass; and a **live end-to-end delete test** on a scratch profile
|
|
217
|
+
(`dsh@0.1.7-rc.2` + 0.3.6 + exact-version exemption): `POST /dsh-archived/delete
|
|
218
|
+
{"sessionId":"session-f71d25a2-…"}` → `{"ok":true,"deleted":true}` + directory gone from disk +
|
|
219
|
+
archive set emptied + `list` returning `{items:[]}` (the test session was restored from backup).
|
|
201
220
|
|
|
202
221
|
### API
|
|
203
222
|
|
|
@@ -212,6 +231,8 @@ DSH versions do not lose the plugin** because of it.
|
|
|
212
231
|
|
|
213
232
|
### Changelog
|
|
214
233
|
|
|
234
|
+
- **0.3.7** (2026-09-25): **adds DSH `0.1.7-rc.2` support** (peer enumeration `0.1.7-rc.1 || 0.1.7-rc.2`, zero code changes). Background: the DSH **desktop** app ships runtime `0.1.7-rc.2`, so the gate skipped 0.3.6's exact-`rc.1` declaration (plugin list badge 异常). Verification: `dsh-shell`'s `lib/` is **byte-identical** rc.1 → rc.2 (this plugin's only shell surface); the rc.2 gate passes the new declaration; and a live delete test on a scratch profile (`dsh@0.1.7-rc.2` + 0.3.6 + exemption) succeeded end-to-end — `POST /dsh-archived/delete {"sessionId":"session-f71d25a2-…"}` → `{"ok":true,"deleted":true}` + directory gone + archive set emptied + `list` → `{items:[]}` (test session restored from backup).
|
|
235
|
+
|
|
215
236
|
- **0.3.6** (2026-09-24): **dual-era `ctx.shell` adaptation + declared DSH version support**.
|
|
216
237
|
1. **Fixes a silent rc.x regression from 0.3.5**: 0.3.5 switched to `execute()` and thereby fixed 0.1.7, but `run()` is the only method that exists on 0.1.5/0.1.6, so on those versions 0.3.5 threw `shell executor unavailable; cannot delete from disk` on **every** delete (0.3.4's use of `run()` was conversely fine on rc.x and dead on 0.1.7). 0.3.6 probes at runtime: prefer `execute()` (0.1.7+, awaiting `execution.result()`), else fall back to `run()` (≤0.1.6), and only error when neither exists ⇒ **deletes work across 0.1.5-rc.1 → 0.1.7-rc.1**. Basis: unpacked `@deepseek-ai/dsh-shell` `lib/types/index.d.ts` per version (see "Dual-era `ctx.shell` adaptation" above).
|
|
217
238
|
2. Added the `@deepseek-ai/dsh` peer declaration `0.1.7-rc.1` (enumerated per version; see "Compatibility gate" above).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omdp/dsh-archived-sessions",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.7",
|
|
4
4
|
"description": "Archived-sessions manager for the DeepSeek Harness web UI: list / unarchive / delete / detail from Settings. · DSH 归档会话管理:设置页查看、释放、删除已归档会话(含按树删除子会话与孤儿清理)。",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -44,6 +44,6 @@
|
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
46
|
"@deepseek-ai/cordis": "4.0.1 || 4.0.2 || 4.0.4",
|
|
47
|
-
"@deepseek-ai/dsh": "0.1.7-rc.1"
|
|
47
|
+
"@deepseek-ai/dsh": "0.1.7-rc.1 || 0.1.7-rc.2"
|
|
48
48
|
}
|
|
49
49
|
}
|