dsh-crossterm 0.7.5 → 0.7.6
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 +14 -0
- package/README.md +11 -3
- package/lib/bus.js +1 -1
- package/lib/index.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# dsh-crossterm 变更记录
|
|
2
2
|
|
|
3
|
+
## 0.7.6 — 2026-10-19
|
|
4
|
+
|
|
5
|
+
### 收信尾行不再重复:跨设备邮件只给一条回信提示
|
|
6
|
+
|
|
7
|
+
- 症状(自测发现):0.7.5 的跨设备邮件末尾出现两条回信提示 ——
|
|
8
|
+
`(回信:调用 term_send,参数 to="yoce-c-4fb38e";…)`(`renderMailList()` 给的)
|
|
9
|
+
和 `(这封信由云端中转站投递到本机,收件人:…。)(回复用 term_send。)`(`relayDeliver()` 又补了一条)。
|
|
10
|
+
- 根因:0.7.5 把中转站投递改成走 `renderMailList()` 后,`relayDeliver()` 里 0.7.4 留下的那句手写尾行没删。
|
|
11
|
+
- 改法(`lib/index.js` 的 `relayDeliver()`):删掉那句固定尾行,只保留条件提示(附件没下载下来、信封没写收件人的回落说明)。
|
|
12
|
+
- 文档:`README.md` 3.3 的跨设备例子去掉重复尾行;3.4 由「三条硬规则」改为「四条硬规则」,新增
|
|
13
|
+
「**尾行只给一次**:回信提示和 `经由` 由 `renderMailList()` 统一给,中转站不再另加尾行」。
|
|
14
|
+
- 探针 `probe-mail-label.mjs` 增断言:`lib/index.js` 里不再出现「中转站投递到本机」这句尾行、README 例子不再有重复尾行。
|
|
15
|
+
- 要不要跟着动手:**不用** —— 只删一句重复文案,协议与数据格式没变。
|
|
16
|
+
|
|
3
17
|
## 0.7.5 — 2026-10-19
|
|
4
18
|
|
|
5
19
|
### 邮件来源四档标签:「跨会话 / 跨工作区 / 跨终端 / 跨设备」,标题行改「发件人」
|
package/README.md
CHANGED
|
@@ -28,7 +28,15 @@ A 终端看不到 B 终端里有哪个会话、在干什么,也没法把一条
|
|
|
28
28
|
> `locatePkgJson()` 对子路径行返回 undefined),而插件页顶部标题与这一行共用同一份 `locale/zh.json` 的 meta,
|
|
29
29
|
> 所以它单独做总开关,标题带「(总开关)」;卡片头用 `shortTitle` 显示短名「跨端互通」。
|
|
30
30
|
|
|
31
|
-
**本版更新(0.7.
|
|
31
|
+
**本版更新(0.7.6)**
|
|
32
|
+
|
|
33
|
+
- **跨设备邮件的尾巴不再重复**:0.7.5 里同一封信末尾会出现两条回复提示(一条 `renderMailList()` 给的、
|
|
34
|
+
一条中转站又补的)。现在只留一条,`经由:云端中转站` 照旧在抬头。
|
|
35
|
+
- 条件提示照旧追加在最后(附件没下载下来、信封没写收件人时的回落说明)。
|
|
36
|
+
- 邮件格式契约补第 4 条硬规则:**尾行只给一次**。
|
|
37
|
+
- 要不要跟着动手:**不用** —— 只删一句重复文案,协议与数据格式没变。
|
|
38
|
+
|
|
39
|
+
**上一版(0.7.5)**
|
|
32
40
|
|
|
33
41
|
- **邮件来源分四档**:同终端同工作区 → 「跨会话邮件」;同终端不同工作区 → **「跨工作区邮件」**;
|
|
34
42
|
同一台机器别的 DSH 进程 → 「跨终端邮件」;云端中转站投进来的(别的设备)→ **「跨设备邮件」**。
|
|
@@ -172,15 +180,15 @@ dsh plugin --profile desktop remove dsh-crossterm
|
|
|
172
180
|
主题:旧云端目录已整删(/dsh云盘/crossterm/bus)
|
|
173
181
|
正文:…\mail\….md(用 read 工具打开,1.1 KB)
|
|
174
182
|
|
|
175
|
-
(这封信由云端中转站投递到本机,收件人:验证跨终端插件。)(回复用 term_send。)
|
|
176
183
|
(回信:调用 term_send,参数 to="yoce-c-4fb38e";…)
|
|
177
184
|
```
|
|
178
185
|
|
|
179
|
-
### 3.4
|
|
186
|
+
### 3.4 四条硬规则
|
|
180
187
|
|
|
181
188
|
1. **格式不许各写各的**:本机总线投递、云端中转投递都调 `renderMailList()`;新增字段只加在固定位置,别再另起抬头。
|
|
182
189
|
2. **正文只落盘**:`mail\` 下的 `.md` 是唯一正文载体(`term_inbox` 里显示同一个路径),删文件即删正文。
|
|
183
190
|
3. **收件人为空不丢信**:云端信封没写收件会话时,投给「最近活跃会话」并在正文注明;连会话都没有才留件等下次。
|
|
191
|
+
4. **尾行只给一次**:回信提示和「经由」由 `renderMailList()` 统一给,中转站不再另加尾行(0.7.6 起);条件提示(附件没下下来、回落投递)才追加在最后。
|
|
184
192
|
## 四、九个工具
|
|
185
193
|
|
|
186
194
|
| 工具 | 作用 | 主要参数 |
|
package/lib/bus.js
CHANGED
package/lib/index.js
CHANGED
|
@@ -862,7 +862,7 @@ class CrossTerm {
|
|
|
862
862
|
const extra = []
|
|
863
863
|
if (bad.length) extra.push(`(有 ${bad.length} 个附件没下载下来:${bad.map((f) => (f && f.name) || '未知').join('、')})`)
|
|
864
864
|
if (fallbackNote) extra.push(fallbackNote)
|
|
865
|
-
|
|
865
|
+
// 回复提示与「经由」已由 renderMailList() 统一给出,这里不再重复追加(0.7.6:去掉重复尾行)
|
|
866
866
|
const text = [this.renderMailList([view], landed), '', ...extra].join('\n')
|
|
867
867
|
const delivered = []
|
|
868
868
|
const failed = []
|