dsh-archived-chats 1.6.1 → 1.6.2
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/CHANGELOG.md +16 -0
- package/README.md +9 -7
- package/README.zh-CN.md +10 -8
- package/lib/persistence-compat.js +16 -2
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,22 @@
|
|
|
4
4
|
|
|
5
5
|
Entries describe behavior at each release, not necessarily current behavior. Consult the READMEs and user guides for current usage.
|
|
6
6
|
|
|
7
|
+
## 1.6.2 — 2026-11-05
|
|
8
|
+
|
|
9
|
+
### 中文
|
|
10
|
+
|
|
11
|
+
- 兼容 DSH `0.2.2-rc.1`:在 DSH 引擎声明和可选 Session peer 范围中明确加入该候选版本。
|
|
12
|
+
- 适配新版 Persistence 快照位置:旧后端继续使用 `locate()`,当前后端缺少该扩展时改从 `stat()` 快照读取后端文件位置。
|
|
13
|
+
- 原生集成夹具增加官方 `0.2.2-rc.1` Session、Persistence、Projection 和存储依赖;在 Ubuntu、macOS、Windows 上执行完整的八项 Host 集成测试。
|
|
14
|
+
- 更新 Projection 测试以等待异步注册句柄。
|
|
15
|
+
|
|
16
|
+
### English
|
|
17
|
+
|
|
18
|
+
- Support DSH `0.2.2-rc.1` explicitly in the DSH engine declaration and optional Session peer range.
|
|
19
|
+
- Adapt to snapshot-backed Persistence locations: retain legacy `locate()` support and fall back to the current backend location exposed by `stat()`.
|
|
20
|
+
- Add official `0.2.2-rc.1` Session, Persistence, Projection and storage packages to the native integration fixture; run all eight Host integration cases on Ubuntu, macOS and Windows.
|
|
21
|
+
- Await asynchronous Projection registration in the native test harness.
|
|
22
|
+
|
|
7
23
|
## 1.6.1 — 2026-11-02
|
|
8
24
|
|
|
9
25
|
### 中文
|
package/README.md
CHANGED
|
@@ -14,17 +14,17 @@
|
|
|
14
14
|
<p>
|
|
15
15
|
<a href="https://www.npmjs.com/package/dsh-archived-chats"><img alt="npm version" src="https://img.shields.io/npm/v/dsh-archived-chats?style=flat-square"></a>
|
|
16
16
|
<a href="https://www.npmjs.com/package/dsh-archived-chats"><img alt="npm total downloads" src="https://img.shields.io/npm/dt/dsh-archived-chats?style=flat-square&label=total%20downloads"></a>
|
|
17
|
-
<a href="https://github.com/
|
|
18
|
-
<a href="https://github.com/
|
|
17
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/actions/workflows/ci.yml"><img alt="CI" src="https://img.shields.io/github/actions/workflow/status/Ultroncn/dsh-archived-chats/ci.yml?branch=main&style=flat-square&label=CI"></a>
|
|
18
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/actions/workflows/ci.yml"><img alt="Node.js 18 and 24" src="https://img.shields.io/badge/Node.js-18%20%7C%2024-339933?style=flat-square&logo=nodedotjs&logoColor=white"></a>
|
|
19
19
|
</p>
|
|
20
20
|
<p>
|
|
21
|
-
<a href="https://github.com/
|
|
21
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/blob/main/LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/License-MIT-2ea44f?style=flat-square"></a>
|
|
22
22
|
<a href="https://awesome-dsh-plugin.com/p/Ultronen/dsh-archived-chats/"><img alt="Awesome DSH Plugin" src="https://awesome-dsh-plugin.com/badge.svg"></a>
|
|
23
|
-
<a href="https://github.com/
|
|
23
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/stargazers"><img alt="GitHub stars" src="https://img.shields.io/github/stars/Ultroncn/dsh-archived-chats?style=flat-square"></a>
|
|
24
24
|
</p>
|
|
25
25
|
|
|
26
26
|
<p>English · <a href="README.zh-CN.md">简体中文</a></p>
|
|
27
|
-
<p><a href="https://awesome-dsh-plugin.com/p/Ultronen/dsh-archived-chats/">Plugin market</a> · <a href="https://www.npmjs.com/package/dsh-archived-chats">npm</a> · <a href="https://github.com/
|
|
27
|
+
<p><a href="https://awesome-dsh-plugin.com/p/Ultronen/dsh-archived-chats/">Plugin market</a> · <a href="https://www.npmjs.com/package/dsh-archived-chats">npm</a> · <a href="https://github.com/Ultroncn/dsh-archived-chats/releases">Releases</a> · <a href="https://github.com/Ultroncn/dsh-archived-chats/discussions">Discussions</a> · <a href="https://github.com/Ultroncn/dsh-archived-chats/security/advisories/new">Private security report</a></p>
|
|
28
28
|
|
|
29
29
|
</div>
|
|
30
30
|
|
|
@@ -103,7 +103,7 @@ Installing an older release can restore its earlier cleanup rules. Before downgr
|
|
|
103
103
|
|
|
104
104
|
## Compatibility
|
|
105
105
|
|
|
106
|
-
The declared range is DSH `>=0.1.0-rc.7`; features still depend on Host capabilities. Native tests
|
|
106
|
+
The declared range is DSH `>=0.1.0-rc.7 || 0.2.2-rc.1`; features still depend on Host capabilities. Native integration tests cover official `0.1.7-rc.2`, `0.2.1-rc.2`, `0.2.1-rc.5` and `0.2.2-rc.1` backends; CI runs the Host matrix on macOS, Windows and Linux.
|
|
107
107
|
|
|
108
108
|
Archive, unarchive and inventory use official capabilities. Permanent deletion coordinates Host session lifecycle and storage locations rather than calling one unified public deletion API. ZIP import and legacy snapshot recovery also have different writer requirements. See [compatibility and limits](docs/USER_GUIDE.md#compatibility-and-limits).
|
|
109
109
|
|
|
@@ -129,7 +129,7 @@ These 1.6.0 screenshots use synthetic example chats. The legacy Recycle Bin appe
|
|
|
129
129
|
|
|
130
130
|
[User guide](docs/USER_GUIDE.md) · [Architecture](docs/ARCHITECTURE.en.md) · [Changelog](CHANGELOG.md) · [Support](SUPPORT.md) · [Contributing](CONTRIBUTING.md)
|
|
131
131
|
|
|
132
|
-
Use [Discussions](https://github.com/
|
|
132
|
+
Use [Discussions](https://github.com/Ultroncn/dsh-archived-chats/discussions) for questions and suggestions. Bug reports should include plugin and DSH versions, minimal reproduction steps and redacted errors. Report security issues [privately](SECURITY.md). If this helped you find past work, consider [giving the project a Star](https://github.com/Ultroncn/dsh-archived-chats).
|
|
133
133
|
|
|
134
134
|
## Development and validation
|
|
135
135
|
|
|
@@ -141,6 +141,8 @@ npm ci --prefix test/fixtures/native-host-0.2.1 --ignore-scripts --include=optio
|
|
|
141
141
|
node scripts/run-native-integration.mjs --fixture-root test/fixtures/native-host-0.2.1
|
|
142
142
|
npm ci --prefix test/fixtures/native-host-0.2.1-rc.5 --ignore-scripts --include=optional
|
|
143
143
|
node scripts/run-native-integration.mjs --fixture-root test/fixtures/native-host-0.2.1-rc.5
|
|
144
|
+
npm install --prefix test/fixtures/native-host-0.2.2-rc.1 --ignore-scripts --include=optional --package-lock=true
|
|
145
|
+
node scripts/run-native-integration.mjs --fixture-root test/fixtures/native-host-0.2.2-rc.1
|
|
144
146
|
npm pack --dry-run --json
|
|
145
147
|
```
|
|
146
148
|
|
package/README.zh-CN.md
CHANGED
|
@@ -12,17 +12,17 @@
|
|
|
12
12
|
<p>
|
|
13
13
|
<a href="https://www.npmjs.com/package/dsh-archived-chats"><img alt="npm version" src="https://img.shields.io/npm/v/dsh-archived-chats?style=flat-square"></a>
|
|
14
14
|
<a href="https://www.npmjs.com/package/dsh-archived-chats"><img alt="npm 累计下载量" src="https://img.shields.io/npm/dt/dsh-archived-chats?style=flat-square&label=total%20downloads"></a>
|
|
15
|
-
<a href="https://github.com/
|
|
16
|
-
<a href="https://github.com/
|
|
15
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/actions/workflows/ci.yml"><img alt="CI" src="https://img.shields.io/github/actions/workflow/status/Ultronen/dsh-archived-chats/ci.yml?branch=main&style=flat-square&label=CI"></a>
|
|
16
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/actions/workflows/ci.yml"><img alt="Node.js 18 and 24" src="https://img.shields.io/badge/Node.js-18%20%7C%2024-339933?style=flat-square&logo=nodedotjs&logoColor=white"></a>
|
|
17
17
|
</p>
|
|
18
18
|
<p>
|
|
19
|
-
<a href="https://github.com/
|
|
19
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/blob/main/LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/License-MIT-2ea44f?style=flat-square"></a>
|
|
20
20
|
<a href="https://awesome-dsh-plugin.com/p/Ultronen/dsh-archived-chats/"><img alt="Awesome DSH Plugin" src="https://awesome-dsh-plugin.com/badge.svg"></a>
|
|
21
|
-
<a href="https://github.com/
|
|
21
|
+
<a href="https://github.com/Ultroncn/dsh-archived-chats/stargazers"><img alt="GitHub stars" src="https://img.shields.io/github/stars/Ultronen/dsh-archived-chats?style=flat-square"></a>
|
|
22
22
|
</p>
|
|
23
23
|
|
|
24
24
|
<p><a href="README.md">English</a> · 简体中文</p>
|
|
25
|
-
<p><a href="https://awesome-dsh-plugin.com/p/Ultronen/dsh-archived-chats/">插件市场</a> · <a href="https://www.npmjs.com/package/dsh-archived-chats">npm</a> · <a href="https://github.com/
|
|
25
|
+
<p><a href="https://awesome-dsh-plugin.com/p/Ultronen/dsh-archived-chats/">插件市场</a> · <a href="https://www.npmjs.com/package/dsh-archived-chats">npm</a> · <a href="https://github.com/Ultroncn/dsh-archived-chats/releases">版本发布</a> · <a href="https://github.com/Ultroncn/dsh-archived-chats/discussions">问题交流</a> · <a href="https://github.com/Ultroncn/dsh-archived-chats/security/advisories/new">私密报告漏洞</a></p>
|
|
26
26
|
|
|
27
27
|
</div>
|
|
28
28
|
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
- **整理会话:** 管理已归档和未归档聊天,支持工作区分组、未分组、批量操作及标签备注。
|
|
33
33
|
- **保存备份:** 导出 JSON + Markdown ZIP,导入前预览并跳过已有会话,避免覆盖。
|
|
34
34
|
|
|
35
|
-
> 本文对应 1.6.
|
|
35
|
+
> 本文对应 1.6.2。此版本停止新增回收和自动清理,旧数据的处理方式见[从旧版升级](#从旧版升级)。
|
|
36
36
|
|
|
37
37
|
## 安装与打开
|
|
38
38
|
|
|
@@ -101,7 +101,7 @@ dsh plugin --profile web update dsh-archived-chats
|
|
|
101
101
|
|
|
102
102
|
## 兼容性
|
|
103
103
|
|
|
104
|
-
声明范围为 DSH `>=0.1.0-rc.7`,具体能力仍取决于 Host
|
|
104
|
+
声明范围为 DSH `>=0.1.0-rc.7 || 0.2.2-rc.1`,具体能力仍取决于 Host。原生集成测试覆盖官方 `0.1.7-rc.2`、`0.2.1-rc.2`、`0.2.1-rc.5` 与 `0.2.2-rc.1` 后端;CI 在 macOS、Windows 和 Linux 上运行 Host 测试矩阵。
|
|
105
105
|
|
|
106
106
|
归档、取消归档、列表读取以官方能力为基础。永久删除由插件协调会话生命周期和存储位置完成,并非调用一个官方统一删除接口;ZIP 导入和旧快照恢复的写入能力要求也不同。详见[兼容性与限制](docs/USER_GUIDE.zh-CN.md#兼容性与限制)。
|
|
107
107
|
|
|
@@ -127,7 +127,7 @@ dsh plugin --profile web update dsh-archived-chats
|
|
|
127
127
|
|
|
128
128
|
[用户指南](docs/USER_GUIDE.zh-CN.md) · [架构说明](docs/ARCHITECTURE.md) · [更新日志](CHANGELOG.md) · [支持](SUPPORT.md) · [贡献指南](CONTRIBUTING.md)
|
|
129
129
|
|
|
130
|
-
使用问题和建议欢迎前往 [Discussions](https://github.com/
|
|
130
|
+
使用问题和建议欢迎前往 [Discussions](https://github.com/Ultroncn/dsh-archived-chats/discussions);缺陷请附插件与 DSH 版本、最小复现步骤和脱敏错误。安全问题请[私密报告](SECURITY.md)。若帮助你找回了旧方案,欢迎[给项目一个 Star](https://github.com/Ultroncn/dsh-archived-chats)。
|
|
131
131
|
|
|
132
132
|
## 开发与验证
|
|
133
133
|
|
|
@@ -139,6 +139,8 @@ npm ci --prefix test/fixtures/native-host-0.2.1 --ignore-scripts --include=optio
|
|
|
139
139
|
node scripts/run-native-integration.mjs --fixture-root test/fixtures/native-host-0.2.1
|
|
140
140
|
npm ci --prefix test/fixtures/native-host-0.2.1-rc.5 --ignore-scripts --include=optional
|
|
141
141
|
node scripts/run-native-integration.mjs --fixture-root test/fixtures/native-host-0.2.1-rc.5
|
|
142
|
+
npm install --prefix test/fixtures/native-host-0.2.2-rc.1 --ignore-scripts --include=optional --package-lock=true
|
|
143
|
+
node scripts/run-native-integration.mjs --fixture-root test/fixtures/native-host-0.2.2-rc.1
|
|
142
144
|
npm pack --dry-run --json
|
|
143
145
|
```
|
|
144
146
|
|
|
@@ -111,10 +111,24 @@ export function resolvePersistenceCompat(raw) {
|
|
|
111
111
|
return raw.create.call(raw, header, options);
|
|
112
112
|
},
|
|
113
113
|
} : {}),
|
|
114
|
-
...(typeof raw.locate === 'function' ? {
|
|
114
|
+
...((typeof raw.locate === 'function' || typeof raw.stat === 'function') ? {
|
|
115
115
|
async locate(header) {
|
|
116
116
|
validatedHeader(header);
|
|
117
|
-
|
|
117
|
+
// Older backends exposed a locate extension. Current DSH exposes the
|
|
118
|
+
// backend-owned artifact location on stat/list snapshots instead.
|
|
119
|
+
const snapshot = typeof raw.locate === 'function'
|
|
120
|
+
? undefined
|
|
121
|
+
: await raw.stat.call(raw, header.id);
|
|
122
|
+
if (snapshot === undefined && typeof raw.locate !== 'function') return undefined;
|
|
123
|
+
if (snapshot && (!objectLike(snapshot) || !objectLike(snapshot.header)
|
|
124
|
+
|| snapshot.header.id !== header.id)) {
|
|
125
|
+
throw Object.assign(new Error('session-scoped log snapshot is invalid'), {
|
|
126
|
+
code: 'session-location-unavailable',
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
const location = typeof raw.locate === 'function'
|
|
130
|
+
? await raw.locate.call(raw, header)
|
|
131
|
+
: snapshot?.location;
|
|
118
132
|
if (location === undefined) return undefined;
|
|
119
133
|
if (!objectLike(location)
|
|
120
134
|
|| typeof location.kind !== 'string' || location.kind === ''
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-archived-chats",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.2",
|
|
4
4
|
"description": "查看、搜索和管理会话归档,支持工作区批量归档、标签备注、ZIP 备份和手动残留会话检查。",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ultronen",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
],
|
|
81
81
|
"dsh": {
|
|
82
82
|
"engines": {
|
|
83
|
-
"dsh": ">=0.1.0-rc.7"
|
|
83
|
+
"dsh": ">=0.1.0-rc.7 || 0.2.2-rc.1"
|
|
84
84
|
},
|
|
85
85
|
"bundle": {
|
|
86
86
|
"patch": "./cordis.patch.yml"
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
},
|
|
96
96
|
"peerDependencies": {
|
|
97
97
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
98
|
-
"@deepseek-ai/dsh-session": ">=0.1.0-rc.7 <0.1.1-0 || >=0.1.1-rc.1 <0.1.2-0 || >=0.1.2-alpha.1 <0.2.0-0 || 0.1.5-rc.2 || 0.1.7-rc.2 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.5",
|
|
98
|
+
"@deepseek-ai/dsh-session": ">=0.1.0-rc.7 <0.1.1-0 || >=0.1.1-rc.1 <0.1.2-0 || >=0.1.2-alpha.1 <0.2.0-0 || 0.1.5-rc.2 || 0.1.7-rc.2 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.5 || 0.2.2-rc.1",
|
|
99
99
|
"react": "^18.2.0"
|
|
100
100
|
},
|
|
101
101
|
"peerDependenciesMeta": {
|