@yolk_vat-y/dsh-project-memory 0.4.1 → 0.4.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 CHANGED
@@ -1,5 +1,30 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.2 (2026-09-04)
4
+
5
+ ### Task Panel 重构:真实 dsh web 契约 + 任务清单双向同步
6
+
7
+ - **Client 落地(修复此前面板无法注册/显示)**
8
+ - 按 dsh web 0.1.2-rc.1 真实 client 插件契约重写(cordis inject + apply,注册进宿主 `shell.overlay` 槽);此前使用的槽位/接口在 rc.1 不存在,现已全部对齐真实注册面
9
+ - 浮动任务面板:卡片可拖拽、展开看步骤/文件(点击复制路径);折叠为可拖拽顶部迷你条;可彻底隐藏(输入 `/task` / `/tasks` 唤起);渲染错误有边界兜底,不再因一次崩溃被宿主整条退休
10
+ - 会话内 `/tasks`、`/task` 命令节点改为专属一行渲染:不再输出长文本+JSON,数据经载荷自动同步进侧边面板
11
+
12
+ - **任务清单双向同步(宿主 ↔ 插件任务)**
13
+ - 反向接管:`select_task` 或 `/task switch` 把任务设为会话绑定时,任务步骤推成宿主 `todo/write`——dsh 渲染的任务清单跟随我们维护的任务;配置 `tasklist.syncHostOnAdopt`(默认开)可关
14
+ - 空 `todo/write` 语义定为「清空」:未绑定会话清空清单不再误建垃圾任务;已绑定则清空该任务 steps(任务保留)
15
+ - 用户编辑走同一镜像:面板改步骤/状态 = 写回绑定任务并推宿主清单,与模型 `todo_write` 共用一套逻辑,无第二套同步
16
+ - `/task` 新增 `switch` / `archive` / `unbind` / `rename` / `todos`(均不经模型,由面板按钮/双击调用);`unbind` 同时清掉输入框上方的宿主任务清单
17
+
18
+ - **面板编辑与风格**
19
+ - 绑定卡片:双击标题/步骤行内编辑(输入框随内容自动增高),点步骤状态图标循环 待办→进行中→已完成;非绑定卡片只读
20
+ - 四档外观风格(点标题左侧文件夹图标切换,本地记忆):原生 / 玻璃拟态 / 粗野主义 / 终端等宽——只改材质、几何、字型与密度,颜色始终取自 dsw 别名令牌,跟随宿主明暗与主题插件
21
+
22
+ - **测试与维护**
23
+ - TaskBridge 测试增至 11 项(新增反向接管、空写语义等);既有 166 项全绿
24
+ - 清理:移除废弃 client 包依赖与死代码,样式收敛到 dsw token
25
+
26
+
27
+
3
28
  ## 0.4.1 (2026-09-03)
4
29
 
5
30
  ### TS 6.x 兼容
@@ -0,0 +1,27 @@
1
+ //#region src/client/client.d.ts
2
+ /**
3
+ * Required primitives that may not exist on older hosts.
4
+ * If missing, we skip registration gracefully.
5
+ */
6
+ declare const REQUIRED_PRIMITIVES: readonly ["Button", "IconChevronDownOutline14", "IconChevronUpOutline14", "IconCloseOutline16", "IconMinimizeOutline14", "IconCheckCircleOutline14", "IconCircleOutline14", "IconPlayCircleOutline14", "IconFolderOutline14", "IconFileOutline14"];
7
+ declare function missingPrimitives(mod: Record<string, unknown>, required?: readonly string[]): string[];
8
+ /**
9
+ * Minimal host context shape we need (structural typing, no internal deps)
10
+ */
11
+ interface TaskPanelHostContext {
12
+ effect(callback: () => unknown, label?: string): void;
13
+ on(event: string, callback: () => void): () => void;
14
+ off(event: string, callback: () => void): void;
15
+ commands: {
16
+ execute(name: string, args: unknown): Promise<unknown>;
17
+ };
18
+ slots: {
19
+ inject(name: string, register: () => unknown): void;
20
+ register(options: Record<string, unknown>, render: () => unknown): unknown;
21
+ };
22
+ }
23
+ declare const name = "dsh-project-memory";
24
+ declare function apply(ctx: TaskPanelHostContext): void;
25
+ //#endregion
26
+ export { REQUIRED_PRIMITIVES, apply, missingPrimitives, name };
27
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","names":[],"sources":["../src/client/client.ts"],"mappings":";;;;;cAea;iBAaG,kBACd,KAAK,yBACL;;;;UAQQ;EACR,OAAO,yBAAyB;EAChC,GAAG,eAAe;EAClB,IAAI,eAAe;EACnB;IACE,QAAQ,cAAc,gBAAgB;;EAExC;IACE,OAAO,cAAc;IACrB,SAAS,SAAS,yBAAyB;;;cAIlC;iBAEG,MAAM,KAAK"}