dsh-ws-recency 0.7.2 → 0.7.3

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.
Files changed (3) hide show
  1. package/README.md +3 -3
  2. package/client.js +9 -9
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -32,8 +32,8 @@ DSH 已经把**组内**会话按 `updatedAt` 倒序排好了(排序方式 =
32
32
 
33
33
  - 标记存在 Client store 的 `followUps`(随 `dsh.ws-recency.prefs.v1` 持久化),重启后还在;
34
34
  - 琥珀圆点渲染在宿主自己的 `sidebar.session.row.leading` 槽里,**不往行里塞子元素**——塞进去会让后面的行整体下移一格;点圆点即取消标记;
35
- - 标记后该会话**又有新活动**(`updatedAt` 前进)→ 自动视为已跟进,标记消失;
36
- - 不受 20 秒、不受打开时长影响——你标记就一直是琥珀,直到你取消或它又有新活动。
35
+ - **标记只有你手动取消才会消失**:运行中/完成未读期间它只是被更强的状态盖住显示,跑完、读完(没有新未读)之后琥珀自己回来;
36
+ - 不受打开时长、会话是否继续对话影响——继续对话恰恰常常是还欠一次跟进的原因。
37
37
 
38
38
  ## 设置
39
39
 
@@ -69,7 +69,7 @@ dsh plugin --profile <profile> add github:chyxhtc/dsh-ws-recency
69
69
  或固定版本的预构建包:
70
70
 
71
71
  ```powershell
72
- dsh plugin --profile <profile> add https://github.com/chyxhtc/dsh-ws-recency/releases/download/v0.7.2/dsh-ws-recency-0.7.2.tgz
72
+ dsh plugin --profile <profile> add https://github.com/chyxhtc/dsh-ws-recency/releases/download/v0.7.3/dsh-ws-recency-0.7.3.tgz
73
73
  ```
74
74
 
75
75
  装完把 `dsh-ws-recency` 加进 `~/.hypers-work/profiles/<profile>/package.json` 的 `dsh.profile.bundles`,重启应用。
package/client.js CHANGED
@@ -513,8 +513,8 @@
513
513
  /**
514
514
  * Color the rows: running (blue), finished-unopened (green), and the manual
515
515
  * "needs follow-up" flag (amber). The flag is the user's own judgement - it
516
- * is never inferred, and it is dropped automatically once the session has
517
- * produced newer activity than the moment it was flagged.
516
+ * is never inferred, and only an explicit clear removes it. Running and
517
+ * unread outrank it on screen; once they pass, amber comes back.
518
518
  */
519
519
  function decorateRows(entries, sessions, statuses, settings) {
520
520
  var flags = settings.followUps;
@@ -529,13 +529,13 @@
529
529
  var status = statusOf(statuses, id);
530
530
  var running = status !== null ? status.running === true : session.running === true;
531
531
  var unread = status !== null ? status.completionUnread === true : session.completed === true;
532
- var flaggedAt = flags[id];
533
- if (typeof flaggedAt === "number" && typeof session.updatedAt === "number" && session.updatedAt > flaggedAt) {
534
- /* The session moved on after the mark: the follow-up happened. */
535
- if (data.actions !== null && typeof data.actions.clearFollowUp === "function") data.actions.clearFollowUp(id);
536
- flaggedAt = undefined;
537
- }
538
- states[id] = running ? "running" : unread ? "unread" : flaggedAt !== undefined ? "followup" : null;
532
+ /* The mark is the user's own judgement and survives everything except
533
+ an explicit clear: running / unread only outrank it on screen, and
534
+ once those pass it comes back. It is never dropped just because the
535
+ conversation moved on - continuing a conversation is often the very
536
+ reason a follow-up is still owed. */
537
+ var flagged = flags[id] !== undefined;
538
+ states[id] = running ? "running" : unread ? "unread" : flagged ? "followup" : null;
539
539
  }
540
540
 
541
541
  for (var i = 0; i < entries.length; i += 1) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-ws-recency",
3
- "version": "0.7.2",
3
+ "version": "0.7.3",
4
4
  "description": "Sidebar session management for DeepSeek Harness: workspace groups sorted by latest activity, stale history folded, manual follow-up marks.",
5
5
  "license": "MIT",
6
6
  "author": "chyxhtc",