@idoall/dsh-session-colors 0.1.3 → 0.1.4

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 CHANGED
@@ -8,6 +8,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ ## [0.1.4] - 2026-09-23
12
+
13
+ Verified against DeepSeek Harness `0.1.7-rc.1` (the latest release candidate) as
14
+ well as `0.1.7-alpha.2`. No code change: `0.1.3` already absorbed the `0.1.7`
15
+ changes, and this release confirms the same code on the RC and records it.
16
+
17
+ ### Added
18
+
19
+ - `dsh.compatibility.dshReleases` now records `0.1.7-rc.1` alongside
20
+ `0.1.7-alpha.2`; both READMEs state both versions.
21
+ - The design record documents the new `0.1.7-rc.1` behaviour that makes the peer
22
+ range load-bearing: boot evaluates `@deepseek-ai/dsh*` peers and **disables** a
23
+ plugin row whose range the running version does not satisfy.
24
+
25
+ ### Notes
26
+
27
+ - The peer and `dsh.engines.dsh` ranges stay `>=0.1.7-alpha.2 <0.2.0`. Under
28
+ node-semver's prerelease rule that range already admits `0.1.7-rc.1` (a
29
+ comparator names the same `major.minor.patch`), so it was deliberately **not**
30
+ widened for the RC — widening would admit versions nobody tested.
31
+ - `0.1.4` supports DSH `0.1.7-rc.1` and `0.1.7-alpha.2`. Installations on an
32
+ older DSH, including `0.1.6-alpha.2`, should stay on plugin `0.1.2`.
33
+
11
34
  ## [0.1.3] - 2026-09-23
12
35
 
13
36
  Verified against DeepSeek Harness `0.1.7-alpha.2`. The first fix below is what
package/README.md CHANGED
@@ -23,6 +23,8 @@
23
23
  <a href="#development">Development</a>
24
24
  </p>
25
25
 
26
+ > **✅ Supports DSH `0.1.7-rc.1` — the latest `0.1.7` release candidate.** Verified on the running release candidate as well as on `0.1.7-alpha.2`; see [Compatibility](#compatibility).
27
+
26
28
  > DSH Session Colors is a DeepSeek Harness community plugin. It does not modify
27
29
  > DSH core and does not rewrite any Session or Workspace data: a mark is only
28
30
  > "Session id → one colour".
@@ -69,7 +71,8 @@ Requirements:
69
71
 
70
72
  - DeepSeek Harness with a Web profile
71
73
  - Node.js 20 or newer
72
- - **Verified DSH version: `0.1.7-alpha.2`** (see [Compatibility](#compatibility))
74
+ - **Verified DSH version: `0.1.7-rc.1`** (the latest release candidate) and
75
+ `0.1.7-alpha.2` — plugin `0.1.4` (see [Compatibility](#compatibility))
73
76
 
74
77
  ```sh
75
78
  dsh plugin --profile <profile> add @idoall/dsh-session-colors@latest
@@ -117,20 +120,25 @@ stored as HSVA, so alpha round-trips exactly.
117
120
 
118
121
  ## Compatibility
119
122
 
120
- Current release: plugin **`0.1.3`**, verified against DeepSeek Harness
123
+ Current release: plugin **`0.1.4`** is verified against DeepSeek Harness
124
+ **`0.1.7-rc.1`** — the latest `0.1.7` release candidate — and against
121
125
  **`0.1.7-alpha.2`**.
122
126
 
123
- **`0.1.3` supports DSH `0.1.7-alpha.2` only.** On an older DSH — including
124
- `0.1.6-alpha.2` — keep plugin **`0.1.2`**: `0.1.3` declares its Host requirement
125
- as `>=0.1.7-alpha.2 <0.2.0` and is not verified below it.
126
-
127
127
  | Plugin version | Verified DeepSeek Harness | npm status | What it is |
128
128
  | --- | --- | --- | --- |
129
- | **`0.1.3`** | `0.1.7-alpha.2` | `latest` | Adapts to DSH 0.1.7: the Session id now comes from the row's own `data-row-key` (fiber fallback kept), and chips follow the Web-Animations row gliding `0.1.7` introduced. The Host dependency is declared the way `0.1.7` resolves a linked plugin, and the peer range admits the release. |
129
+ | **`0.1.4`** | **`0.1.7-rc.1`** (latest RC), `0.1.7-alpha.2` | `latest` | Confirms the `0.1.7` adaptation runs unchanged on the release candidate and declares it. No code change over `0.1.3`; upgrading needs no migration. |
130
+ | `0.1.3` | `0.1.7-alpha.2` | published | Adapts to DSH 0.1.7: the Session id comes from the row's own `data-row-key` (fiber fallback kept), chips follow the Web-Animations row gliding `0.1.7` introduced, and the Host dependency is declared the way `0.1.7` resolves a linked plugin. |
130
131
  | `0.1.2` | `0.1.6-alpha.2` | published | Fixes chips staying at their old coordinates for ~20s when a workspace is collapsed or expanded: a second `MutationObserver.observe()` on the same target had silently replaced the `childList` watch. |
131
132
  | `0.1.1` | `0.1.6-alpha.2` | published | Documentation only: the packaged README no longer says "not published", and the market screenshots are declared. |
132
133
  | `0.1.0` | `0.1.6-alpha.2` | published | First release: Session colour marks, Host-side storage, visible inside a phone's sidebar drawer |
133
134
 
135
+ **`0.1.4` supports DSH `0.1.7-rc.1`, the latest release candidate.** The `0.1.7`
136
+ line changed the sidebar row markup and the linked-plugin dependency resolution,
137
+ and **`0.1.3` already absorbed both** — `0.1.4` confirms the same code runs
138
+ unchanged on the RC and records it. **Upgrading from `0.1.3` needs no migration.**
139
+ On an older DSH — including `0.1.6-alpha.2` — keep plugin **`0.1.2`**. Newer DSH
140
+ releases are not auto-declared compatible.
141
+
134
142
  - **Verified DeepSeek Harness** is the exact DSH version this plugin was actually
135
143
  run against. That list has one home — `dsh.compatibility.dshReleases` in
136
144
  [`package.json`](package.json) — and a test keeps both READMEs' compatibility
@@ -139,10 +147,18 @@ as `>=0.1.7-alpha.2 <0.2.0` and is not verified below it.
139
147
  - `peerDependencies` declares `>=0.1.7-alpha.2 <0.2.0` for `dsh-client-ui-layout`
140
148
  and `dsh-client-ui-conversation`, and `dsh.engines.dsh` declares the same range
141
149
  as the Host requirement: that is the range allowed to **load**, which is not the
142
- same as verified. The lower bound names the alpha on purpose — under
143
- node-semver's default prerelease rule a range like `>=0.1.6-0 <0.2.0` does
144
- **not** admit `0.1.7-alpha.2`, so pnpm reports the peer as unmet even though the
145
- plugin runs.
150
+ same as verified. The range admits **both** `0.1.7-alpha.2` and `0.1.7-rc.1`
151
+ (a prerelease is admitted when some comparator names the same
152
+ `major.minor.patch`), so it was deliberately **not** widened for the RC — doing
153
+ so would admit versions nobody tested. The lower bound names the alpha on
154
+ purpose: a range like `>=0.1.6-0 <0.2.0` admits neither.
155
+ - DSH 0.1.7-rc.1 evaluates those peers at boot and **disables** a plugin row whose
156
+ range is not satisfied, so a correct range is now load-bearing rather than
157
+ cosmetic.
158
+ - `@deepseek-ai/schemastery` is a **peer**, not a plain dependency: DSH 0.1.7
159
+ resolves only a linked plugin's peer dependencies from the running
160
+ installation, so a `link:` install of this directory would otherwise fail to
161
+ import the Host half.
146
162
  - `@deepseek-ai/schemastery` is a **peer**, not a plain dependency: DSH 0.1.7
147
163
  resolves only a linked plugin's peer dependencies from the running
148
164
  installation, so a `link:` install of this directory would otherwise fail to
package/README.zh.md CHANGED
@@ -23,6 +23,8 @@
23
23
  <a href="#开发">开发</a>
24
24
  </p>
25
25
 
26
+ > **✅ 已支持 DSH `0.1.7-rc.1` —— 最新的 `0.1.7` 候选版本(RC)。** 已在运行中的 RC 实例上实测通过,同时也兼容 `0.1.7-alpha.2`;详见[兼容性](#兼容性)。
27
+
26
28
  > DSH Session Colors 是 DeepSeek Harness 社区插件。它不修改 DSH 核心,也不改写任何会话或工作区数据:一个标记只是"会话 ID → 一个颜色"。
27
29
 
28
30
  工作分散在多个工作区里,而工作区列表就是一堵长得差不多的标题墙。任务跑完之后,刚才那条会话就很难再找回来——状态点已经回到空闲,标题也只是二十个里的一个。**自己选的颜色,是让一行变得好认的最省事办法。**
@@ -51,7 +53,7 @@
51
53
 
52
54
  - 带 Web profile 的 DeepSeek Harness
53
55
  - Node.js 20 或更新版本
54
- - **已验证的 DSH 版本:`0.1.7-alpha.2`**(见[兼容性](#兼容性))
56
+ - **已验证的 DSH 版本:`0.1.7-rc.1`**(最新候选版)与 `0.1.7-alpha.2`——插件 `0.1.4`(见[兼容性](#兼容性))
55
57
 
56
58
  ```sh
57
59
  dsh plugin --profile <profile> add @idoall/dsh-session-colors@latest
@@ -90,19 +92,21 @@ dsh plugin --profile <profile> add link:/path/to/dsh-session-colors
90
92
 
91
93
  ## 兼容性
92
94
 
93
- 当前版本:插件 **`0.1.3`** 已针对 DeepSeek Harness **`0.1.7-alpha.2`** 验证。
94
-
95
- **`0.1.3` 只支持 DSH `0.1.7-alpha.2`。** 更旧的 DSH(包括 `0.1.6-alpha.2`)请继续用插件 **`0.1.2`**:`0.1.3` 声明的宿主要求是 `>=0.1.7-alpha.2 <0.2.0`,低于它的版本未经本轮验证。
95
+ 当前版本:插件 **`0.1.4`** 已针对 DeepSeek Harness **`0.1.7-rc.1`**(最新的 `0.1.7` 候选版本)与 **`0.1.7-alpha.2`** 验证。
96
96
 
97
97
  | 插件版本 | 已验证的 DeepSeek Harness | npm 发布状态 | 该版本是什么 |
98
98
  | --- | --- | --- | --- |
99
- | **`0.1.3`** | `0.1.7-alpha.2` | `latest` | 适配 DSH 0.1.7:会话 id 改从行自身的 `data-row-key` 读取(保留 fiber 回退),色块跟随 0.1.7 引入的 Web Animations 行滑动;宿主依赖按 0.1.7 对 link 插件的解析方式声明,peer 范围也真正覆盖该版本。 |
99
+ | **`0.1.4`** | **`0.1.7-rc.1`**(最新 RC)、`0.1.7-alpha.2` | `latest` | 确认 `0.1.7` 适配在候选版本上原样可用并加以声明。代码与 `0.1.3` 相同,升级无需迁移。 |
100
+ | `0.1.3` | `0.1.7-alpha.2` | 已发布 | 适配 DSH 0.1.7:会话 id 改从行自身的 `data-row-key` 读取(保留 fiber 回退),色块跟随 0.1.7 引入的 Web Animations 行滑动;宿主依赖按 0.1.7 对 link 插件的解析方式声明。 |
100
101
  | `0.1.2` | `0.1.6-alpha.2` | 已发布 | 修掉折叠/展开工作区后色块停在旧位置约 20 秒:同一个 target 上第二次 `MutationObserver.observe()` 把 `childList` 监听顶掉了。 |
101
102
  | `0.1.1` | `0.1.6-alpha.2` | 已发布 | 仅文档:打包进 npm 的 README 不再写"尚未发布",并声明了市场截图。 |
102
103
  | `0.1.0` | `0.1.6-alpha.2` | 已发布 | 首个版本:会话颜色标记、宿主侧存储、手机抽屉内可见 |
103
104
 
105
+ **`0.1.4` 支持 DSH `0.1.7-rc.1`,即最新的候选版本(RC)。** `0.1.7` 线改了侧栏行的 DOM 与 link 插件的依赖解析方式,而**`0.1.3` 已经把这两处吸收完毕**——`0.1.4` 确认同一份代码在 RC 上原样可用,并把 RC 记入声明。**从 `0.1.3` 升级无需任何迁移。** 仍在更旧的 DSH(含 `0.1.6-alpha.2`)上时,请继续用插件 **`0.1.2`**。更高的 DSH 版本不会被自动宣称为兼容。
106
+
104
107
  - **已验证的 DeepSeek Harness** 是这个插件**实际跑过**的确切 DSH 版本。这份清单只有一个存放处——[`package.json`](package.json) 的 `dsh.compatibility.dshReleases`——并且有测试保证两个 README 的兼容性段落与它逐字一致、且落在 `peerDependencies` 声明的范围内。未列出的 DSH 版本**不会被宣称为兼容**。
105
- - `peerDependencies` 声明的范围是 `>=0.1.7-alpha.2 <0.2.0`(`dsh-client-ui-layout` 与 `dsh-client-ui-conversation`),`dsh.engines.dsh` 把同一范围声明为宿主要求:这是**允许加载**的范围,不等于已验证。下界特意写成 alpha 版本——按 node-semver 的默认预发布规则,`>=0.1.6-0 <0.2.0` 这样的范围**并不包含** `0.1.7-alpha.2`,pnpm 会把 peer 报成 unmet,即使插件实际跑得起来。
108
+ - `peerDependencies` 声明的范围是 `>=0.1.7-alpha.2 <0.2.0`(`dsh-client-ui-layout` 与 `dsh-client-ui-conversation`),`dsh.engines.dsh` 把同一范围声明为宿主要求:这是**允许加载**的范围,不等于已验证。该范围**同时接纳** `0.1.7-alpha.2` 与 `0.1.7-rc.1`(只要范围里有比较符写了同一个 `major.minor.patch`,该版本的预发布就会被接纳),所以**刻意不为 RC 放宽**——放宽只会顺带接纳没人测过的版本。下界特意写成这个 alpha:`>=0.1.6-0 <0.2.0` 这样的范围两者都不接纳。
109
+ - DSH 0.1.7-rc.1 会在启动时校验这些 peer,范围不满足就**直接禁用该插件行**,所以范围写对已经不只是"声明问题"。
106
110
  - `@deepseek-ai/schemastery` 声明为 **peer**,不是普通依赖:DSH 0.1.7 只把 link 插件的 **peer** 依赖解析到运行实例,所以用 `link:` 装入本目录时,普通依赖会让宿主半边 import 失败。
107
111
  - DSH 升级快于插件时,插件本身不会因此报错:色块依赖 DSH 的行 DOM(见[限制](#限制)),所以 DSH 大改行结构时最坏的结果是**色块不再显示**,不会挡住点击。
108
112
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idoall/dsh-session-colors",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "type": "module",
5
5
  "description": "DSH web plugin: give any Session a colour mark, shown as a chip in the sidebar and picked from the conversation header. Marks are stored on the Host, so a colour chosen on one device is visible on every other one — including over LAN and tunnels.",
6
6
  "main": "./src/index.js",
@@ -25,6 +25,7 @@
25
25
  },
26
26
  "compatibility": {
27
27
  "dshReleases": {
28
+ "0.1.7-rc.1": "compatible",
28
29
  "0.1.7-alpha.2": "compatible"
29
30
  }
30
31
  },