@hpyperry/dsh-ref-lib 0.8.0 → 0.10.0

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 (54) hide show
  1. package/README.md +4 -3
  2. package/lib/client/RefLibCommandCard.d.ts +29 -0
  3. package/lib/client/RefLibCommandCard.d.ts.map +1 -0
  4. package/lib/client/RefLibCommandCard.js +48 -0
  5. package/lib/client/RefLibCommandCard.js.map +1 -0
  6. package/lib/client/RefLibDock.d.ts.map +1 -1
  7. package/lib/client/RefLibDock.js +97 -15
  8. package/lib/client/RefLibDock.js.map +1 -1
  9. package/lib/client/RefLibPanel.d.ts.map +1 -1
  10. package/lib/client/RefLibPanel.js +7 -2
  11. package/lib/client/RefLibPanel.js.map +1 -1
  12. package/lib/client/index.d.ts.map +1 -1
  13. package/lib/client/index.js +8 -0
  14. package/lib/client/index.js.map +1 -1
  15. package/lib/client/locales.d.ts +16 -0
  16. package/lib/client/locales.d.ts.map +1 -1
  17. package/lib/client/locales.js +20 -0
  18. package/lib/client/locales.js.map +1 -1
  19. package/lib/client/refresh-guard.d.ts +31 -0
  20. package/lib/client/refresh-guard.d.ts.map +1 -0
  21. package/lib/client/refresh-guard.js +38 -0
  22. package/lib/client/refresh-guard.js.map +1 -0
  23. package/lib/client/refresh-triggers.d.ts +49 -0
  24. package/lib/client/refresh-triggers.d.ts.map +1 -0
  25. package/lib/client/refresh-triggers.js +53 -0
  26. package/lib/client/refresh-triggers.js.map +1 -0
  27. package/lib/client/styles.d.ts.map +1 -1
  28. package/lib/client/styles.js +111 -0
  29. package/lib/client/styles.js.map +1 -1
  30. package/lib/client.js +927 -582
  31. package/lib/client.js.map +1 -1
  32. package/lib/logic.d.ts +16 -1
  33. package/lib/logic.d.ts.map +1 -1
  34. package/lib/logic.js +19 -0
  35. package/lib/logic.js.map +1 -1
  36. package/lib/render.d.ts +6 -4
  37. package/lib/render.d.ts.map +1 -1
  38. package/lib/render.js +14 -7
  39. package/lib/render.js.map +1 -1
  40. package/lib/routes.d.ts +4 -0
  41. package/lib/routes.d.ts.map +1 -1
  42. package/lib/routes.js +9 -1
  43. package/lib/routes.js.map +1 -1
  44. package/lib/service.d.ts +61 -3
  45. package/lib/service.d.ts.map +1 -1
  46. package/lib/service.js +148 -14
  47. package/lib/service.js.map +1 -1
  48. package/lib/spec.d.ts +9 -0
  49. package/lib/spec.d.ts.map +1 -1
  50. package/lib/validate.d.ts +1 -1
  51. package/lib/validate.d.ts.map +1 -1
  52. package/lib/validate.js +11 -3
  53. package/lib/validate.js.map +1 -1
  54. package/package.json +15 -15
package/README.md CHANGED
@@ -13,10 +13,11 @@
13
13
  | 🎨 | **可视化面板** | 基名 + 完整路径列表、用途说明、悬停高亮、危险色移除、独立的空/加载/错误态 |
14
14
  | 📂 | **三种添加方式** | 应用内目录浏览器 / 系统原生选择器(按宿主能力自动适配)/ 手动输入路径(`~` 与相对路径),可附**用途说明**(自动提取 README 标题兜底) |
15
15
  | 🧠 | **上下文注入** | 仅向配置了参考库的会话注入定稿英文规则:库清单(含用途 routing metadata)+ **强制查证流程**(先查参考库,未覆盖才外部)+ 权威性/冲突处理 + 只读约束;空列表零 token |
16
- | 🔒 | **per-session 隔离** | 每个会话独立维护,会话间互不可见;sidecar JSON 持久化,重启/恢复后仍在 |
16
+ | 🔒 | **per-session 隔离** | 每个会话独立维护,会话间互不可见;**分支会话(fork)自动继承父列表**(fork 时刻快照、条目 id 独立);sidecar JSON 持久化,重启/恢复后仍在 |
17
+ | 📡 | **失效检测** | 每次读取实时探测库目录可用性(删除 / 被替换为文件即标记),失效库自动跳过注入并红色提示(面板状态行 + dock 失效角标 + `/ref-lib list` 标记);UI 同步**交互驱动**(命令完成 / 发消息 / 面板操作即时刷新,零后台请求) |
17
18
  | ⚡ | **静默数据通道** | client 读写走插件自注册的 `/api/ref-lib/*` HTTP 路由——不渲染命令卡片、不执行命令、不产生用户消息 |
18
19
  | 🌐 | **双语界面** | zh/en 全量本地化,随界面语言实时切换 |
19
- | ⌨️ | **命令入口** | `/ref-lib add <path> [--note <用途>] \| list \| remove <id>`,与 UI 数据一致 |
20
+ | ⌨️ | **命令入口** | `/ref-lib add <path> [--note <用途>] \| list \| remove <id>`,与 UI 数据一致;结果走专属卡片(全展开完整文本 + 一键复制,规避官方卡片的截断显示) |
20
21
  | 🛡️ | **安全** | loopback 护栏 + 路径消毒 + 只读保证分层(沙箱强制 / 上下文软约束) |
21
22
 
22
23
  ## 📦 安装
@@ -51,7 +52,7 @@ dsh --profile web
51
52
  | 用途说明(note) | 添加时可选填写;未填写时自动提取目录 README 首个 H1 标题兜底(无 README 则为空)。note 作为 routing metadata 注入,帮助 agent 判断库的相关性 |
52
53
  | 目录选择后端 | 启动时自动探测:应用内目录浏览器(browse)或系统原生对话框(native);可在 profile 的 `cordis.patch.yml` 切换 `directory-picker` 行为 |
53
54
  | 上下文注入 | 仅向有参考库的会话注入(`systemPrompt.context`,空列表零 token;注入文本为定稿英文模板) |
54
- | 子会话 | 无自身配置时继承父会话的参考库列表 |
55
+ | 子会话 | 分支会话(fork)创建时**复制继承**父会话的参考库列表(fork 时刻快照、条目 id 独立);legacy 子会话(升级前创建)首次读取时同语义物化 |
55
56
 
56
57
  ## 🛡️ 安全
57
58
 
@@ -0,0 +1,29 @@
1
+ /**
2
+ * `/ref-lib` 命令结果专属卡片(conversation.chat.commandview,key='ref-lib')。
3
+ *
4
+ * 背景(历史 bug):官方 `GenericCommandCard` 对命令结果折叠态 `white-space:
5
+ * nowrap` + `text-overflow: ellipsis` 单行截断,展开态 `max-height: 260px` 内滚动
6
+ * ——`/ref-lib list` 等多行长结果会显示不全。本卡片注册在
7
+ * `conversation.chat.commandview`(keyed,按命令名分派)的 `ref-lib` 键上:
8
+ * **默认全展开展示完整结果**(无高度上限)+ 一键复制按钮。只影响 `/ref-lib`,
9
+ * 其他命令仍走官方卡片。
10
+ * @module @hpyperry/dsh-ref-lib/src/client/RefLibCommandCard
11
+ */
12
+ import type { ReactElement } from 'react';
13
+ import type { CommandNode } from '@deepseek-ai/dsh-client-runtime/client';
14
+ import type { PropsLocale, PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots';
15
+ /** 完整 props:commandview 运行时套件 + owner(node)+ 本地化 seat。 */
16
+ export type RefLibCommandCardProps = PropsRuntime<'conversation.chat.commandview'> & {
17
+ /** 折叠的命令生命周期节点(run + 可选 done);outcome 为 null 时仍在执行。 */
18
+ node: CommandNode;
19
+ /** `/compact` 专用(ref-lib 不使用)。 */
20
+ compaction?: unknown;
21
+ } & PropsLocale<'ref-lib'>;
22
+ /**
23
+ * `/ref-lib` 命令结果卡片:完整展示 `outcome.text`(pre-wrap、无高度截断)+
24
+ * 复制按钮。running 态显示执行中;error 态红色。
25
+ * @param props - node(owner)与本地化 seat。
26
+ * @returns 卡片元素。
27
+ */
28
+ export declare function RefLibCommandCard(props: RefLibCommandCardProps): ReactElement;
29
+ //# sourceMappingURL=RefLibCommandCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefLibCommandCard.d.ts","sourceRoot":"","sources":["../../src/client/RefLibCommandCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AASjF,0DAA0D;AAC1D,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC,+BAA+B,CAAC,GAAG;IACnF,uDAAuD;IACvD,IAAI,EAAE,WAAW,CAAA;IACjB,kCAAkC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;AAI1B;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CAiD7E"}
@@ -0,0 +1,48 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * `/ref-lib` 命令结果专属卡片(conversation.chat.commandview,key='ref-lib')。
4
+ *
5
+ * 背景(历史 bug):官方 `GenericCommandCard` 对命令结果折叠态 `white-space:
6
+ * nowrap` + `text-overflow: ellipsis` 单行截断,展开态 `max-height: 260px` 内滚动
7
+ * ——`/ref-lib list` 等多行长结果会显示不全。本卡片注册在
8
+ * `conversation.chat.commandview`(keyed,按命令名分派)的 `ref-lib` 键上:
9
+ * **默认全展开展示完整结果**(无高度上限)+ 一键复制按钮。只影响 `/ref-lib`,
10
+ * 其他命令仍走官方卡片。
11
+ * @module @hpyperry/dsh-ref-lib/src/client/RefLibCommandCard
12
+ */
13
+ import { useState } from 'react';
14
+ import { IconCheckOutline16, IconCopyOutline16, IconLoadingOutline16, IconWarningOutline16, } from '@deepseek-ai/dsh-client-ui-primitives';
15
+ import { ensureRefLibStyles } from "./styles.js";
16
+ ensureRefLibStyles();
17
+ /**
18
+ * `/ref-lib` 命令结果卡片:完整展示 `outcome.text`(pre-wrap、无高度截断)+
19
+ * 复制按钮。running 态显示执行中;error 态红色。
20
+ * @param props - node(owner)与本地化 seat。
21
+ * @returns 卡片元素。
22
+ */
23
+ export function RefLibCommandCard(props) {
24
+ const { node, t } = props;
25
+ const [copied, setCopied] = useState(false);
26
+ const outcome = node.outcome;
27
+ const text = outcome?.text;
28
+ const running = outcome === null;
29
+ const error = outcome?.kind === 'error';
30
+ /** 复制完整结果到剪贴板;成功后短暂显示"已复制"(权限失败静默)。 */
31
+ const copy = async () => {
32
+ if (text === undefined || text === '')
33
+ return;
34
+ try {
35
+ await navigator.clipboard.writeText(text);
36
+ setCopied(true);
37
+ window.setTimeout(() => { setCopied(false); }, 1500);
38
+ }
39
+ catch {
40
+ /* 剪贴板不可用(权限/非安全上下文)时静默 */
41
+ }
42
+ };
43
+ const summary = running
44
+ ? t('command.running')
45
+ : text !== undefined && text !== '' ? text.split('\n')[0] : t('command.done');
46
+ return (_jsxs("div", { className: "reflib-cmd", "data-state": running ? 'running' : error ? 'error' : 'ok', children: [_jsxs("div", { className: "reflib-cmdHead", children: [running && _jsx(IconLoadingOutline16, { size: 14, className: "reflib-spin reflib-cmdHeadIcon" }), !running && error && _jsx(IconWarningOutline16, { size: 14, className: "reflib-cmdHeadIcon" }), _jsx("span", { className: "reflib-cmdName", children: "/ref-lib" }), _jsx("span", { className: "reflib-cmdSummary", "data-error": error || undefined, children: summary }), !running && text !== undefined && text !== '' && (_jsxs("button", { type: "button", className: "reflib-cmdCopy", "aria-label": t('command.copy'), title: t('command.copy'), onClick: () => { void copy(); }, children: [copied ? _jsx(IconCheckOutline16, { size: 14 }) : _jsx(IconCopyOutline16, { size: 14 }), copied ? t('command.copied') : t('command.copy')] }))] }), !running && text !== undefined && text !== '' && (_jsx("pre", { className: "reflib-cmdBody", "data-error": error || undefined, children: text }))] }));
47
+ }
48
+ //# sourceMappingURL=RefLibCommandCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefLibCommandCard.js","sourceRoot":"","sources":["../../src/client/RefLibCommandCard.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RefLibDock.d.ts","sourceRoot":"","sources":["../../src/client/RefLibDock.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAEzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAO7C,yCAAyC;AACzC,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IACtD,wDAAwD;IACxD,GAAG,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzE,8CAA8C;IAC9C,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3D,mDAAmD;IACnD,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E,mCAAmC;IACnC,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAC3C,kDAAkD;IAClD,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAClF;AAED,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,yBAAyB,CAAC,GAAG,kBAAkB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;AAsCnH;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CAwM/D"}
1
+ {"version":3,"file":"RefLibDock.d.ts","sourceRoot":"","sources":["../../src/client/RefLibDock.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAEzF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAS7C,yCAAyC;AACzC,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IACtD,wDAAwD;IACxD,GAAG,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzE,8CAA8C;IAC9C,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3D,mDAAmD;IACnD,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E,mCAAmC;IACnC,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAC3C,kDAAkD;IAClD,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAClF;AAMD,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,yBAAyB,CAAC,GAAG,kBAAkB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAA;AAuCnH;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CAuR/D"}
@@ -19,15 +19,21 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
19
19
  import { useEffect, useRef, useState } from 'react';
20
20
  import { IconFolderOpen16 } from '@deepseek-ai/dsh-client-ui-primitives';
21
21
  import { RefLibApiError } from "./data.js";
22
+ import { RefreshGuard } from "./refresh-guard.js";
23
+ import { deriveRefreshTriggers } from "./refresh-triggers.js";
22
24
  import { RefLibBrowser } from "./RefLibBrowser.js";
23
25
  import { RefLibPanel } from "./RefLibPanel.js";
24
26
  import { ensureRefLibStyles } from "./styles.js";
27
+ /** 挂载预载失败重试:间隔与上限(重启后会话 live 通常 <1s,重试 1–2 次即成功)。 */
28
+ const MOUNT_RETRY_DELAY_MS = 800;
29
+ const MOUNT_RETRY_MAX = 5;
25
30
  /** wire 错误码 → 本地化文案键(未知码回退原始消息)。 */
26
31
  const ERROR_KEYS = {
27
32
  'ref-lib/missing': 'error.missing',
28
33
  'ref-lib/not-directory': 'error.notDirectory',
29
34
  'ref-lib/unsafe': 'error.unsafe',
30
35
  'ref-lib/unknown-id': 'error.unknownId',
36
+ 'ref-lib/unavailable': 'error.unavailable',
31
37
  };
32
38
  /** 把未知错误规整为可展示文案。 */
33
39
  function messageOf(cause) {
@@ -60,7 +66,7 @@ ensureRefLibStyles();
60
66
  * @returns 胶囊入口(+ 打开时的管理面板)。
61
67
  */
62
68
  export function RefLibDock(props) {
63
- const { sessionId, load, add, remove, setNote, pickDirectory, listDirectory, t } = props;
69
+ const { sessionId, session, load, add, remove, setNote, pickDirectory, listDirectory, t } = props;
64
70
  const [open, setOpen] = useState(false);
65
71
  const [libs, setLibs] = useState([]);
66
72
  const [loading, setLoading] = useState(false);
@@ -68,8 +74,9 @@ export function RefLibDock(props) {
68
74
  const [picking, setPicking] = useState(false);
69
75
  const [removingId, setRemovingId] = useState(null);
70
76
  const [error, setError] = useState(null);
71
- // 并发读守卫:仅采纳最新一次 refresh 的结果(挂载预载与开面板刷新可能重叠)。
72
- const seq = useRef(0);
77
+ // 并发读守卫(竞态控制):仅采纳最新一次 refresh 的结果(挂载预载/开面板/轮询/
78
+ // 操作后刷新可能重叠);详见 src/client/refresh-guard.ts 与 tests/refresh-guard.spec.ts。
79
+ const guard = useRef(new RefreshGuard());
73
80
  // 目录选择能力(v6):browse(应用内浏览器,listDirectory)或 native(OS 对话框,
74
81
  // pickDirectory)。探测一次并缓存;host 侧能力在单次 boot 内稳定。
75
82
  const [pickerMode, setPickerMode] = useState(null);
@@ -92,30 +99,71 @@ export function RefLibDock(props) {
92
99
  setPickerMode(mode);
93
100
  return mode;
94
101
  };
95
- const refresh = async () => {
96
- const mine = ++seq.current;
102
+ /**
103
+ * 拉取会话参考库列表并更新 UI。
104
+ * @param silent - 静默模式(轮询用):失败不写入错误槽;成功也**不碰 error/loading**
105
+ * ——错误与加载态只由用户操作/打开面板管理,避免后台轮询吞掉操作错误提示或
106
+ * 提前结束面板加载态(轮询仅更新 libs 数据)。
107
+ */
108
+ const refresh = async (silent = false) => {
109
+ const mine = guard.current.begin();
97
110
  try {
98
111
  const next = await load(sessionId);
99
- if (mine !== seq.current)
112
+ if (!guard.current.isLatest(mine))
100
113
  return;
101
114
  setLibs(next);
102
- setError(null);
115
+ if (!silent)
116
+ setError(null);
103
117
  }
104
118
  catch (cause) {
105
- if (mine !== seq.current)
119
+ if (!guard.current.isLatest(mine))
106
120
  return;
107
- setError(formatError(cause, t));
121
+ if (!silent)
122
+ setError(formatError(cause, t));
108
123
  }
109
124
  finally {
110
- if (mine === seq.current)
125
+ if (guard.current.isLatest(mine) && !silent)
111
126
  setLoading(false);
112
127
  }
113
128
  };
114
- // 挂载预载。依赖 sessionId:若同一 dock 实例跨会话复用(槽位按会话切换),
115
- // 会话切换后徽标/列表随之刷新,避免停留在上一个会话的过期数据(seq 守卫防竞态)。
129
+ // 挂载/会话切换预载(带失败重试):重启 dsh web 后会话可能尚未 live(/list 404),
130
+ // 首次加载失败若直接放弃,胶囊角标/列表会缺失直到用户点开面板——延迟重试直至
131
+ // 会话就绪或达到上限,让"刚启动"的失效角标也能自动出现(seq 守卫防并发竞态)。
116
132
  useEffect(() => {
117
133
  ensureRefLibStyles();
118
- void refresh();
134
+ let stopped = false;
135
+ let retries = 0;
136
+ let timer;
137
+ const attempt = async () => {
138
+ const mine = guard.current.begin();
139
+ try {
140
+ const next = await load(sessionId);
141
+ if (stopped || !guard.current.isLatest(mine))
142
+ return;
143
+ setLibs(next);
144
+ setError(null);
145
+ }
146
+ catch (cause) {
147
+ if (stopped || !guard.current.isLatest(mine))
148
+ return;
149
+ if (retries < MOUNT_RETRY_MAX) {
150
+ retries += 1;
151
+ timer = window.setTimeout(() => { void attempt(); }, MOUNT_RETRY_DELAY_MS);
152
+ return;
153
+ }
154
+ setError(formatError(cause, t));
155
+ }
156
+ finally {
157
+ if (!stopped && guard.current.isLatest(mine))
158
+ setLoading(false);
159
+ }
160
+ };
161
+ void attempt();
162
+ return () => {
163
+ stopped = true;
164
+ if (timer !== undefined)
165
+ window.clearTimeout(timer);
166
+ };
119
167
  }, [sessionId]);
120
168
  useEffect(() => {
121
169
  if (open) {
@@ -123,6 +171,30 @@ export function RefLibDock(props) {
123
171
  void refresh();
124
172
  }
125
173
  }, [open]);
174
+ // 发消息即刷新(交互钩子):dock owner 的 `session` 是**响应式会话快照**
175
+ // (ConversationRoot `useSession(s => s)`,每次会话 store 发布重渲染)——用户
176
+ // 发消息落盘后产生 user 消息节点(`kind: 'user'`),计数 +1 触发静默刷新;
177
+ // 流式 assistant 回复不改变 user 计数,不会每 token 刷新。
178
+ // 信号盲区(rc.7 查证,见 refresh-triggers.ts 与设计文档 §16):steer 打断消息
179
+ // 折叠为 'steering' 节点不触发;忙碌期排队消息的 user 节点在 step 领取时才落盘
180
+ // (刷新延迟);外部文件操作无会话事件(下次 GUI 交互同步)。
181
+ const { userMessageCount, refLibCommandDone } = deriveRefreshTriggers(session.nodes);
182
+ useEffect(() => {
183
+ void refresh(true);
184
+ }, [userMessageCount]);
185
+ // 命令执行即刷新:`/ref-lib` 命令(add/remove/note)执行必然产生 log-only
186
+ // `command/run` → `command/done`,会话快照中的 command 节点从 running
187
+ // (outcome null)变为 settled——settled 计数 +1 触发静默刷新(命令 handler 先
188
+ // 落盘 sidecar 再结算,故刷新读到的必是新数据)。与其他插件命令隔离:命令名是
189
+ // typed name(无别名、重名注册 fail loud),`name === 'ref-lib'` 过滤精确。
190
+ // 盲区:command/run 落在窗口外(压缩/截断)时 name 为 null,本次完成不刷新。
191
+ useEffect(() => {
192
+ void refresh(true);
193
+ }, [refLibCommandDone]);
194
+ // 后台轮询已移除(2026-08-22 用户决策):UI 同步改为**交互驱动**——/ref-lib
195
+ // 命令完成、发消息、面板操作均即时刷新;外部文件操作(删/恢复目录)在下次
196
+ // GUI 交互时同步。注入侧不受影响:每次模型请求的注入回调仍实时探测
197
+ // (node half list()),与 UI 刷新完全解耦。详见设计文档 §14。
126
198
  const handleRemove = async (id) => {
127
199
  setRemovingId(id);
128
200
  setBusy(true);
@@ -215,9 +287,19 @@ export function RefLibDock(props) {
215
287
  pendingPick.current = null;
216
288
  resolve?.(null);
217
289
  };
218
- return (_jsxs(_Fragment, { children: [_jsx("div", { className: "reflib-dock", children: _jsxs("button", { type: "button", className: "reflib-chip", "data-active": open || undefined, "aria-haspopup": "dialog", "aria-expanded": open, "aria-label": libs.length > 0 ? t('dock.count.aria', { count: String(libs.length) }) : t('dock.aria'), title: t('dock.aria'), onClick: () => {
290
+ /**
291
+ * 胶囊计数(v9):徽标显示**可用**数量(失效不计入),红色角标显示失效数量
292
+ * (总数 − 可用数),仅存在失效条目时显示。注意:UI 数据只在打开面板/操作后
293
+ * 刷新,外部变更(如删除目录)不会自动反向同步到界面(与命令修改后不刷新同属
294
+ * 待解决的 UI 数据同步问题,见设计文档"遗留备注")。
295
+ */
296
+ const availableCount = libs.filter((entry) => entry.status === 'available').length;
297
+ const unavailableCount = libs.length - availableCount;
298
+ return (_jsxs(_Fragment, { children: [_jsx("div", { className: "reflib-dock", children: _jsxs("button", { type: "button", className: "reflib-chip", "data-active": open || undefined, "aria-haspopup": "dialog", "aria-expanded": open, "aria-label": unavailableCount > 0
299
+ ? t('dock.unavailable', { count: String(unavailableCount) })
300
+ : availableCount > 0 ? t('dock.count.aria', { count: String(availableCount) }) : t('dock.aria'), title: t('dock.aria'), onClick: () => {
219
301
  setOpen((value) => !value);
220
- }, children: [_jsx("span", { className: "reflib-chipIcon", children: _jsx(IconFolderOpen16, { size: 14 }) }), _jsx("span", { className: "reflib-chipLabel", children: t('dock.label') }), libs.length > 0 && _jsx("span", { className: "reflib-chipBadge", children: libs.length })] }) }), _jsx(RefLibPanel, { open: open, onClose: () => {
302
+ }, children: [_jsx("span", { className: "reflib-chipIcon", children: _jsx(IconFolderOpen16, { size: 14 }) }), _jsx("span", { className: "reflib-chipLabel", children: t('dock.label') }), availableCount > 0 && _jsx("span", { className: "reflib-chipBadge", children: availableCount }), unavailableCount > 0 && (_jsx("span", { className: "reflib-chipWarn", title: t('dock.unavailable', { count: String(unavailableCount) }), children: unavailableCount }))] }) }), _jsx(RefLibPanel, { open: open, onClose: () => {
221
303
  setOpen(false);
222
304
  }, libs: libs, loading: loading, busy: busy, picking: picking, removingId: removingId, error: error, t: t, onRemove: (id) => {
223
305
  void handleRemove(id);
@@ -1 +1 @@
1
- {"version":3,"file":"RefLibDock.js","sourceRoot":"","sources":["../../src/client/RefLibDock.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RefLibDock.js","sourceRoot":"","sources":["../../src/client/RefLibDock.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RefLibPanel.d.ts","sourceRoot":"","sources":["../../src/client/RefLibPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAczC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAM7C,mCAAmC;AACnC,MAAM,WAAW,gBAAgB;IAC/B,cAAc;IACd,IAAI,EAAE,OAAO,CAAA;IACb,8BAA8B;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,eAAe;IACf,IAAI,EAAE,SAAS,WAAW,EAAE,CAAA;IAC5B,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,+BAA+B;IAC/B,IAAI,EAAE,OAAO,CAAA;IACb,gCAAgC;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,kCAAkC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa;IACb,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IACzB,0BAA0B;IAC1B,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,4CAA4C;IAC5C,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,oCAAoC;IACpC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACvC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,YAAY,CAoQjE"}
1
+ {"version":3,"file":"RefLibPanel.d.ts","sourceRoot":"","sources":["../../src/client/RefLibPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAczC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAM7C,mCAAmC;AACnC,MAAM,WAAW,gBAAgB;IAC/B,cAAc;IACd,IAAI,EAAE,OAAO,CAAA;IACb,8BAA8B;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,eAAe;IACf,IAAI,EAAE,SAAS,WAAW,EAAE,CAAA;IAC5B,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,+BAA+B;IAC/B,IAAI,EAAE,OAAO,CAAA;IACb,gCAAgC;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,kCAAkC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa;IACb,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IACzB,0BAA0B;IAC1B,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,4CAA4C;IAC5C,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,oCAAoC;IACpC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACvC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,YAAY,CAmRjE"}
@@ -74,11 +74,16 @@ export function RefLibPanel(props) {
74
74
  const name = libBasename(entry.path);
75
75
  const removing = removingId === entry.id;
76
76
  const detailOpen = detailId === entry.id;
77
- return (_jsxs("div", { className: "reflib-listItem", "data-removing": removing || undefined, children: [_jsxs("div", { className: "reflib-row", children: [_jsx(IconFolderOpen16, { size: 16, className: "reflib-rowIcon" }), _jsxs("div", { className: "reflib-rowBody", children: [_jsx("span", { className: "reflib-rowName", title: entry.path, children: name }), _jsx("span", { className: "reflib-rowPath", title: entry.path, children: entry.path }), entry.note !== undefined && entry.note !== '' && (_jsx("span", { className: "reflib-rowNote", title: entry.note, children: entry.note.replace(/\s+/g, ' ') }))] }), _jsx(Tooltip, { label: t('detail.open'), side: "top", delayMs: 400, children: _jsx("button", { type: "button", className: "reflib-rowAction", "aria-label": t('detail.open.aria', { name }), "aria-expanded": detailOpen || undefined, disabled: busy || removingId !== null, onClick: () => {
77
+ const unavailable = entry.status !== undefined && entry.status !== 'available';
78
+ return (_jsxs("div", { className: "reflib-listItem", "data-removing": removing || undefined, "data-status": unavailable ? entry.status : undefined, children: [_jsxs("div", { className: "reflib-row", children: [unavailable
79
+ ? _jsx(IconWarningOutline16, { size: 16, className: "reflib-rowIcon reflib-rowIconWarn" })
80
+ : _jsx(IconFolderOpen16, { size: 16, className: "reflib-rowIcon" }), _jsxs("div", { className: "reflib-rowBody", children: [_jsx("span", { className: "reflib-rowName", title: entry.path, children: name }), _jsx("span", { className: "reflib-rowPath", title: entry.path, children: entry.path }), unavailable && (_jsx("span", { className: "reflib-rowStatus", role: "status", children: t(entry.status === 'missing' ? 'status.missing' : 'status.notDirectory') })), entry.note !== undefined && entry.note !== '' && (_jsx("span", { className: "reflib-rowNote", title: entry.note, children: entry.note.replace(/\s+/g, ' ') }))] }), _jsx(Tooltip, { label: t('detail.open'), side: "top", delayMs: 400, children: _jsx("button", { type: "button", className: "reflib-rowAction", "aria-label": t('detail.open.aria', { name }), "aria-expanded": detailOpen || undefined,
81
+ // 失效条目只允许移除:详情/用途编辑禁用(node 端 note 接口同样拒绝)。
82
+ disabled: busy || removingId !== null || unavailable, onClick: () => {
78
83
  toggleDetail(entry);
79
84
  }, children: _jsx(IconEllipsisOutline16, { size: 14 }) }) }), _jsx(Tooltip, { label: t('list.remove'), side: "top", delayMs: 400, children: _jsx("button", { type: "button", className: "reflib-rowRemove", "aria-label": t('list.remove.aria', { name }), disabled: busy || removingId !== null, onClick: () => {
80
85
  onRemove(entry.id);
81
- }, children: removing ? (_jsx(IconLoadingOutline16, { size: 14, className: "reflib-spin" })) : (_jsx(IconTrashOutline16, { size: 14 })) }) })] }), detailOpen && (_jsxs("div", { className: "reflib-detail", children: [_jsxs("div", { className: "reflib-detailMeta", children: [_jsx("span", { className: "reflib-detailKey", children: "ID" }), _jsx("span", { className: "reflib-detailValue", children: entry.id })] }), _jsxs("div", { className: "reflib-detailMeta", children: [_jsx("span", { className: "reflib-detailKey", children: t('detail.path') }), _jsx("span", { className: "reflib-detailValue", title: entry.path, children: entry.path })] }), _jsx("span", { className: "reflib-detailKey", children: t('add.note.label') }), _jsxs("div", { className: "reflib-noteWrap", children: [_jsx("textarea", { className: "reflib-noteTextarea", value: editNote, placeholder: t('add.note.placeholder'), "aria-label": t('add.note.label'), disabled: busy, rows: 3, maxLength: NOTE_MAX_LENGTH, onChange: (event) => {
86
+ }, children: removing ? (_jsx(IconLoadingOutline16, { size: 14, className: "reflib-spin" })) : (_jsx(IconTrashOutline16, { size: 14 })) }) })] }), detailOpen && !unavailable && (_jsxs("div", { className: "reflib-detail", children: [_jsxs("div", { className: "reflib-detailMeta", children: [_jsx("span", { className: "reflib-detailKey", children: "ID" }), _jsx("span", { className: "reflib-detailValue", children: entry.id })] }), _jsxs("div", { className: "reflib-detailMeta", children: [_jsx("span", { className: "reflib-detailKey", children: t('detail.path') }), _jsx("span", { className: "reflib-detailValue", title: entry.path, children: entry.path })] }), _jsx("span", { className: "reflib-detailKey", children: t('add.note.label') }), _jsxs("div", { className: "reflib-noteWrap", children: [_jsx("textarea", { className: "reflib-noteTextarea", value: editNote, placeholder: t('add.note.placeholder'), "aria-label": t('add.note.label'), disabled: busy, rows: 3, maxLength: NOTE_MAX_LENGTH, onChange: (event) => {
82
87
  setEditNote(event.currentTarget.value);
83
88
  } }), _jsxs("span", { className: "reflib-noteCount", children: [editNote.length, "/", NOTE_MAX_LENGTH] })] }), _jsxs("div", { className: "reflib-detailActions", children: [_jsx(Button, { variant: "ghost", size: "sm", disabled: busy, onClick: () => {
84
89
  setDetailId(null);
@@ -1 +1 @@
1
- {"version":3,"file":"RefLibPanel.js","sourceRoot":"","sources":["../../src/client/RefLibPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RefLibPanel.js","sourceRoot":"","sources":["../../src/client/RefLibPanel.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,wCAAwC,CAAA;AAStF,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAErD,iCAAiC;AACjC,eAAO,MAAM,MAAM,UAAoC,CAAA;AAKvD,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAU,kBAAkB;QAC1B,uBAAuB;QACvB,SAAS,EAAE,SAAS,CAAA;KACrB;CACF;AAgCD;;;GAGG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAoC9C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,wCAAwC,CAAA;AAUtF,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAErD,iCAAiC;AACjC,eAAO,MAAM,MAAM,UAAoC,CAAA;AAKvD,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAU,kBAAkB;QAC1B,uBAAuB;QACvB,SAAS,EAAE,SAAS,CAAA;KACrB;CACF;AAgCD;;;GAGG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAiD9C"}
@@ -15,6 +15,7 @@
15
15
  * @module @hpyperry/dsh-ref-lib/src/client
16
16
  */
17
17
  import { parseApiErrorPayload, parseLibsPayload, RefLibApiError } from "./data.js";
18
+ import { RefLibCommandCard } from "./RefLibCommandCard.js";
18
19
  import { RefLibDock } from "./RefLibDock.js";
19
20
  import { zh, en } from "./locales.js";
20
21
  /** 所需服务(cordis fiber inject)。 */
@@ -79,5 +80,12 @@ export function apply(ctx) {
79
80
  locale: NS,
80
81
  inject: injected,
81
82
  }, RefLibDock));
83
+ // /ref-lib 命令结果专属卡片:官方 GenericCommandCard 长结果显示不全(折叠单行
84
+ // ellipsis / 展开 260px 内滚动),本卡片默认全展开完整结果 + 复制按钮。
85
+ ctx.slots.inject('conversation.chat.commandview', () => ctx.slots.register({
86
+ name: 'conversation.chat.commandview',
87
+ key: 'ref-lib',
88
+ locale: NS,
89
+ }, RefLibCommandCard));
82
90
  }
83
91
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,9 @@ export declare const zh: {
12
12
  'dock.label': string;
13
13
  'dock.aria': string;
14
14
  'dock.count.aria': string;
15
+ 'dock.unavailable': string;
16
+ 'status.missing': string;
17
+ 'status.notDirectory': string;
15
18
  'panel.title': string;
16
19
  'panel.close': string;
17
20
  'panel.description': string;
@@ -46,6 +49,11 @@ export declare const zh: {
46
49
  'error.notDirectory': string;
47
50
  'error.unsafe': string;
48
51
  'error.unknownId': string;
52
+ 'error.unavailable': string;
53
+ 'command.running': string;
54
+ 'command.done': string;
55
+ 'command.copy': string;
56
+ 'command.copied': string;
49
57
  };
50
58
  /** ref-lib 命名空间的键集。 */
51
59
  export type RefLibKey = keyof typeof zh;
@@ -54,6 +62,9 @@ export declare const en: {
54
62
  'dock.label': string;
55
63
  'dock.aria': string;
56
64
  'dock.count.aria': string;
65
+ 'dock.unavailable': string;
66
+ 'status.missing': string;
67
+ 'status.notDirectory': string;
57
68
  'panel.title': string;
58
69
  'panel.close': string;
59
70
  'panel.description': string;
@@ -88,5 +99,10 @@ export declare const en: {
88
99
  'error.notDirectory': string;
89
100
  'error.unsafe': string;
90
101
  'error.unknownId': string;
102
+ 'error.unavailable': string;
103
+ 'command.running': string;
104
+ 'command.done': string;
105
+ 'command.copy': string;
106
+ 'command.copied': string;
91
107
  };
92
108
  //# sourceMappingURL=locales.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../src/client/locales.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sBAAsB;AACtB,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CmB,CAAA;AAElC,uBAAuB;AACvB,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,EAAE,CAAA;AAEvC,+BAA+B;AAC/B,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCsB,CAAA"}
1
+ {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../src/client/locales.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sBAAsB;AACtB,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDmB,CAAA;AAElC,uBAAuB;AACvB,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,EAAE,CAAA;AAEvC,+BAA+B;AAC/B,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDsB,CAAA"}
@@ -13,6 +13,10 @@ export const zh = {
13
13
  'dock.label': '参考库',
14
14
  'dock.aria': '管理只读参考库',
15
15
  'dock.count.aria': '参考库,共 {count} 个',
16
+ 'dock.unavailable': '参考库,{count} 个失效',
17
+ // ── 条目可用性(失效检测,v9)──
18
+ 'status.missing': '目录已删除或不可访问',
19
+ 'status.notDirectory': '路径不再是目录',
16
20
  // ── 管理面板 ──
17
21
  'panel.title': '参考库',
18
22
  'panel.close': '关闭',
@@ -52,12 +56,22 @@ export const zh = {
52
56
  'error.notDirectory': '不是目录:{path}',
53
57
  'error.unsafe': '路径包含控制字符,已拒绝:{path}',
54
58
  'error.unknownId': '未找到参考库条目:{id}',
59
+ 'error.unavailable': '参考库目录不可用(仅允许移除)',
60
+ // ── /ref-lib 命令结果卡片(conversation.chat.commandview)──
61
+ 'command.running': '执行中…',
62
+ 'command.done': '完成',
63
+ 'command.copy': '复制',
64
+ 'command.copied': '已复制',
55
65
  };
56
66
  /** 英文词典,与 zh 键集逐键对齐(编译期校验)。 */
57
67
  export const en = {
58
68
  'dock.label': 'Reference Library',
59
69
  'dock.aria': 'Manage read-only reference libraries',
60
70
  'dock.count.aria': 'Reference library, {count} total',
71
+ 'dock.unavailable': 'Reference library, {count} unavailable',
72
+ // ── Entry availability (stale detection, v9) ──
73
+ 'status.missing': 'Directory deleted or unavailable',
74
+ 'status.notDirectory': 'Path is no longer a directory',
61
75
  'panel.title': 'Reference Library',
62
76
  'panel.close': 'Close',
63
77
  'panel.description': '{count} read-only reference libraries: the agent may read them for reference, but must not modify any files',
@@ -94,5 +108,11 @@ export const en = {
94
108
  'error.notDirectory': 'Not a directory: {path}',
95
109
  'error.unsafe': 'Path contains control characters and was rejected: {path}',
96
110
  'error.unknownId': 'Reference library entry not found: {id}',
111
+ 'error.unavailable': 'Reference library directory unavailable (remove only)',
112
+ // ── /ref-lib command result card (conversation.chat.commandview) ──
113
+ 'command.running': 'Running…',
114
+ 'command.done': 'Done',
115
+ 'command.copy': 'Copy',
116
+ 'command.copied': 'Copied',
97
117
  };
98
118
  //# sourceMappingURL=locales.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"locales.js","sourceRoot":"","sources":["../../src/client/locales.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sBAAsB;AACtB,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,0CAA0C;IAC1C,YAAY,EAAE,KAAK;IACnB,WAAW,EAAE,SAAS;IACtB,iBAAiB,EAAE,iBAAiB;IACpC,aAAa;IACb,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,IAAI;IACnB,mBAAmB,EAAE,wCAAwC;IAC7D,aAAa,EAAE,IAAI;IACnB,kBAAkB,EAAE,cAAc;IAClC,YAAY,EAAE,QAAQ;IACtB,iBAAiB,EAAE,uBAAuB;IAC1C,cAAc,EAAE,OAAO;IACvB,aAAa;IACb,aAAa,EAAE,MAAM;IACrB,kBAAkB,EAAE,eAAe;IACnC,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,aAAa,EAAE,IAAI;IACnB,aAAa;IACb,WAAW,EAAE,OAAO;IACpB,iBAAiB,EAAE,kBAAkB;IACrC,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;IAClB,gBAAgB,EAAE,MAAM;IACxB,sBAAsB,EAAE,yBAAyB;IACjD,UAAU,EAAE,8BAA8B;IAC1C,2BAA2B;IAC3B,eAAe,EAAE,MAAM;IACvB,cAAc,EAAE,KAAK;IACrB,cAAc,EAAE,OAAO;IACvB,mBAAmB,EAAE,YAAY;IACjC,oBAAoB,EAAE,aAAa;IACnC,kBAAkB,EAAE,MAAM;IAC1B,yBAAyB,EAAE,aAAa;IACxC,eAAe,EAAE,WAAW;IAC5B,iBAAiB,EAAE,MAAM;IACzB,gBAAgB,EAAE,IAAI;IACtB,+BAA+B;IAC/B,eAAe,EAAE,cAAc;IAC/B,oBAAoB,EAAE,aAAa;IACnC,cAAc,EAAE,qBAAqB;IACrC,iBAAiB,EAAE,eAAe;CACF,CAAA;AAKlC,+BAA+B;AAC/B,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,YAAY,EAAE,mBAAmB;IACjC,WAAW,EAAE,sCAAsC;IACnD,iBAAiB,EAAE,kCAAkC;IACrD,aAAa,EAAE,mBAAmB;IAClC,aAAa,EAAE,OAAO;IACtB,mBAAmB,EACjB,6GAA6G;IAC/G,aAAa,EAAE,QAAQ;IACvB,kBAAkB,EAAE,iCAAiC;IACrD,YAAY,EAAE,4BAA4B;IAC1C,iBAAiB,EAAE,6DAA6D;IAChF,cAAc,EAAE,UAAU;IAC1B,sBAAsB;IACtB,aAAa,EAAE,cAAc;IAC7B,kBAAkB,EAAE,wBAAwB;IAC5C,aAAa,EAAE,MAAM;IACrB,eAAe,EAAE,QAAQ;IACzB,aAAa,EAAE,MAAM;IACrB,WAAW,EAAE,yBAAyB;IACtC,iBAAiB,EAAE,wCAAwC;IAC3D,YAAY,EAAE,KAAK;IACnB,YAAY,EAAE,QAAQ;IACtB,gBAAgB,EAAE,aAAa;IAC/B,sBAAsB,EAAE,yDAAyD;IACjF,UAAU,EAAE,4FAA4F;IACxG,kDAAkD;IAClD,eAAe,EAAE,kBAAkB;IACnC,cAAc,EAAE,MAAM;IACtB,cAAc,EAAE,oBAAoB;IACpC,mBAAmB,EAAE,kDAAkD;IACvE,oBAAoB,EAAE,oBAAoB;IAC1C,kBAAkB,EAAE,WAAW;IAC/B,yBAAyB,EAAE,uCAAuC;IAClE,eAAe,EAAE,wBAAwB;IACzC,iBAAiB,EAAE,UAAU;IAC7B,gBAAgB,EAAE,QAAQ;IAC1B,eAAe,EAAE,kCAAkC;IACnD,oBAAoB,EAAE,yBAAyB;IAC/C,cAAc,EAAE,2DAA2D;IAC3E,iBAAiB,EAAE,yCAAyC;CACzB,CAAA"}
1
+ {"version":3,"file":"locales.js","sourceRoot":"","sources":["../../src/client/locales.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * 并发读守卫(竞态控制核心):只接受"最后发起"的请求结果。
3
+ *
4
+ * RefLibDock 有多个并发"拉取列表"来源——挂载预载、打开面板、30s 轮询、操作后的
5
+ * 刷新——网络返回顺序不保证,旧快照可能覆盖新快照。守卫用递增编号标记每次发起:
6
+ * 返回时只有仍持有**最新编号**的请求结果才被应用,其余一律丢弃。
7
+ *
8
+ * 为什么"最后发起"就代表最新:`list` 返回的是请求发起时刻的服务端快照,发起越晚
9
+ * 快照越新,所以只信最后发起者 ≈ 只信最新快照。操作后的刷新总是最后发起(操作
10
+ * 完成后才发起),天然胜出;响应乱序时旧号被丢弃,最终一致。
11
+ *
12
+ * 纯 TS、零依赖、零 DOM——node 环境可直接单元测试(tests/refresh-guard.spec.ts)。
13
+ * @module @hpyperry/dsh-ref-lib/src/client/refresh-guard
14
+ */
15
+ export declare class RefreshGuard {
16
+ private seq;
17
+ /** 发起一次请求,返回本次请求的编号。 */
18
+ begin(): number;
19
+ /**
20
+ * 该编号是否仍是最新发起者。
21
+ * @param mine - 发起时 {@link begin} 返回的编号。
22
+ * @returns true 表示应应用该请求的结果;false 表示期间又有新请求发起,结果已过期。
23
+ */
24
+ isLatest(mine: number): boolean;
25
+ /**
26
+ * 作废所有 in-flight 请求的结果(会话切换 / 组件卸载时调用):seq 递增后,
27
+ * 任何旧编号的 {@link isLatest} 都返回 false。
28
+ */
29
+ invalidate(): void;
30
+ }
31
+ //# sourceMappingURL=refresh-guard.d.ts.map