Overview
dsh-workspace-mover
README / EN
Package documentation
Registry summary
dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.
Read the full README on GitHubLIMITATIONS
Known limitations
- 不支持把会话移入「Ungrouped」桶; - 常驻内存的会话(近期打开过)不能直接删除,请重启 Harness 后再删; - 若第三方插件整页重绘侧边栏,本插件可能暂时无法识别会话行(功能触发不了,**不损坏数据**);批量拖拽时无法确认身份的行会被跳过并明确告知,不会猜一个 id 去移动; - 「扁平列表」视图无工作区标题行,本插件在该视图不激活; - 宿主大版本升级若改变内部结构,相关能力可能降级或需重启后生效;搬家向导在无法安全写入时会在改动任何文件之前中止并提示; - **没有图形化设置页**:官方设置页需要宿主提供 `schemastery`(插件目录下不可解析,静态引入会打断启动)。策略改用环境变量配置,见下表;`mover_doctor` 会报告宿主服务与存储布局的降级情况; - **降级是可观测的**:插件优先使用官方接口(取消归档 `registry.unarchiveSession`、改名 `entity.setTitle`),宿主没有时自动回退到等价实现。回退是静默的(功能不变),所以 `mover.status.capabilities` 会同时给出 `unarchiveApi` / `setTitleApi` 能力位,`degradedFeatures` 里也会列出 `unarchive-official-api` / `set-title-official-api`——真机上一眼能看出走的是哪条路。 - **存储适配器也会明确报告降级**:公开 persistence 句柄可用但没有物理路径时,`storageAdapter` 为 `official-handle`,诊断与预览仍可用,物理移动会明确提示不支持;有物理根目录时标记为 `filesystem-fallback`,并由 `mover_doctor` 解释原因。 ### 🔧 可调策略(环境变量) | 策略 | 默认 | 环境变量 | |------|------|----------| | 每个会话保留的物理快照数 | 20 | `DSH_WORKSPACE_MOVER_BACKUP_KEEP` | | 移动历史保留条数 | 100 | `DSH_WORKSPACE_MOVER_HISTORY_LIMIT` | | 单批移动 / 修复上限 | 50 | `DSH_WORKSPACE_MOVER_BATCH_LIMIT` | | 单个工作区搬家上限 | 200 | `DSH_WORKSPACE_MOVER_REPOINT_LIMIT` | | 救援扫描解析上限 | 400 | `DSH_WORKSPACE_MOVER_SCAN_LIMIT` | | 「清理 N 天前数据」默认天数 | 30 | `DSH_WORKSPACE_MOVER_CLEANUP_DAYS` | 取值非法或越界时回退默认值——配置写错不会让功能失效。
