@michengai/dsh-archive-manager 1.1.14 → 1.1.17

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
@@ -4,6 +4,58 @@
4
4
 
5
5
  Published release notes are retained below; new versions are added without removing earlier entries.
6
6
 
7
+ ## 1.1.17 - 2026-10-27
8
+
9
+ - Full-row right-click context menu support in sidebar:
10
+ - Supports triggering workspace and session actions menus by right-clicking anywhere on the corresponding row.
11
+ - Tightens button detection to gracefully pass through the system context menu for ungrouped workspace rows and blank unpersisted sessions, preventing accidental clicks on create or favorite buttons.
12
+ - Star favorite icon alignment and zero-jitter optimization:
13
+ - Aligns favorite star icon to standard 16×16px size and overlays host leading slot.
14
+ - Uses absolute positioning over the leading slot to eliminate horizontal title jitter in sidebar rows.
15
+ - Fades out underlying leading status dots only on hover or when favorited.
16
+ - Archive settings page visual unification and compactness:
17
+ - Adopts unified drawer cards for workspace groups, aligning visual style with Skills Manager.
18
+ - Compacts session row height to 40px for increased information density.
19
+ - Reverts checkbox styling to host primitive specification using `accent-color`, seamlessly adapting to dark mode and eliminating solid white block glitches.
20
+ - Modal dialog anti-bleedthrough and accessibility enhancements:
21
+ - Mounts preview and confirmation dialogs to document root via `portalToBody`, resolving container-type clipping and text bleedthrough.
22
+ - Adds localized accessible labels across zh/en/ru for modal close buttons (`common.close`).
23
+ - Settings section ID standardization and coexistence compatibility (#91):
24
+ - Updates settings section ID to `archive-manager` with runtime fail-soft `try/catch` protection, resolving registration collisions with third-party archive plugins.
25
+
26
+ ## 1.1.16 - 2026-10-26
27
+
28
+ - Fix cross-platform path validation for opening folder in system explorer under Linux/POSIX environments, supporting both Windows and POSIX absolute path schemes.
29
+ - Fix sidebar star DOM child index conflict with custom theme skins like orca-link (#90): mount the star at the row end via `row.appendChild` and arrange visual order via CSS Flex `order: -1` and `order: -2` for the leading cell, preserving `:nth-child(2)` title and `:nth-child(3)` timestamp positioning and eliminating title truncation to 44px right-aligned.
30
+ - Add quick actions to workspace "..." menu with concise labels:
31
+ - "Copy folder path" (`复制目录`): Copies the absolute workspace folder path to clipboard.
32
+ - "Open folder" (`打开目录`): Opens the workspace folder directly in the system file explorer (Windows Explorer, macOS Finder).
33
+ - "Archive sessions" (`归档会话`): Batch archives all unarchived conversations in the workspace.
34
+ - Add "Move to workspace" hover submenu to session "..." menu:
35
+ - Expands target workspaces on hover with dynamic viewport overflow prevention and slim scrollbar styling.
36
+ - Implements process-level quiescence, atomic file rewriting, and pre-rewrite workspace static snapshotting to eliminate double-accounting.
37
+ - Immediately warms the projection cache using real events to eliminate temporary "untitled" title flicker after moving.
38
+ - Safely escapes colon and `@` characters for IM channel sessions on Windows NTFS filesystems with guarded rollback.
39
+ - Align and streamline workspace and session menu ordering and labels:
40
+ - Workspace menu: Rename -> Copy folder path -> Open folder -> Archive sessions -> Delete workspace.
41
+ - Session menu: Favorite/Unfavorite -> Pin/Unpin -> Rename -> Fork session -> Archive session -> Copy Session ID -> Move to workspace -> Delete session.
42
+
43
+ ## 1.1.15 - 2026-10-26
44
+
45
+ - Fix sidebar star DOM child index conflict with custom theme skins like orca-link (#90): mount the star at the row end via `row.appendChild` and arrange visual order via CSS Flex `order: -1` and `order: -2` for the leading cell, preserving `:nth-child(2)` title and `:nth-child(3)` timestamp positioning and eliminating title truncation to 44px right-aligned.
46
+ - Add quick actions to workspace "..." menu with concise labels:
47
+ - "Copy folder path" (`复制目录`): Copies the absolute workspace folder path to clipboard.
48
+ - "Open folder" (`打开目录`): Opens the workspace folder directly in the system file explorer (Windows Explorer, macOS Finder).
49
+ - "Archive sessions" (`归档会话`): Batch archives all unarchived conversations in the workspace.
50
+ - Add "Move to workspace" hover submenu to session "..." menu:
51
+ - Expands target workspaces on hover with dynamic viewport overflow prevention and slim scrollbar styling.
52
+ - Implements process-level quiescence, atomic file rewriting, and pre-rewrite workspace static snapshotting to eliminate double-accounting.
53
+ - Immediately warms the projection cache using real events to eliminate temporary "untitled" title flicker after moving.
54
+ - Safely escapes colon and `@` characters for IM channel sessions on Windows NTFS filesystems with guarded rollback.
55
+ - Align and streamline workspace and session menu ordering and labels:
56
+ - Workspace menu: Rename -> Copy folder path -> Open folder -> Archive sessions -> Delete workspace.
57
+ - Session menu: Favorite/Unfavorite -> Pin/Unpin -> Rename -> Fork session -> Archive session -> Copy Session ID -> Move to workspace -> Delete session.
58
+
7
59
  ## 1.1.14 - 2026-10-26
8
60
 
9
61
  - Add a sidebar session star (#89 by @DSLM): a star sits left of each session title in its own container right after the host's leading slot — always visible once favourited, hover-only otherwise — and reads/writes the plugin's existing favourite set; the session "…" menu gains a matching Favourite / Unfavourite row for keyboard use.
@@ -4,6 +4,58 @@
4
4
 
5
5
  以下发布说明会持续保留;新增版本时不再删除较早记录。
6
6
 
7
+ ## 1.1.17 - 2026-10-27
8
+
9
+ - 侧栏行整行右键操作菜单支持:
10
+ - 支持在侧栏工作区行和会话行上直接右键唤起对应操作菜单;
11
+ - 优化按钮匹配过滤,在未分组工作区行与空白未落盘会话行上优雅放行系统原生右键菜单,避免误触新建或星标。
12
+ - 侧栏收藏星标视觉对齐与零抖动优化:
13
+ - 收藏星标与菜单图标标准尺寸对齐为 16×16px 并复用宿主前导插槽;
14
+ - 采用绝对定位精确覆盖前导槽位置,消除侧栏会话标题左右微小抖动;
15
+ - 仅在悬停或已收藏时淡出底层状态点,保护行内布局稳定性。
16
+ - 归档管理设置页视觉一体化与紧凑化:
17
+ - 工作区卡片采用一体化抽屉设计,与技能管理视觉风格保持统一;
18
+ - 会话列表项排版超紧凑化(行高从 48px 收敛至 40px),信息密度显著提升;
19
+ - 复选框严格回归宿主原生原语 Checkbox 规范,使用原生 `accent-color` 完美适配深色模式(深暗底色与品牌蓝选中态),消除自绘样式导致的纯白刺眼方块问题。
20
+ - 模态弹窗防穿透与无障碍体验优化:
21
+ - 预览及确认弹窗统一接入 body 根节点挂载(`portalToBody`),彻底消除被局部容器包含块限制导致的大弹窗偏左错位与文字透视重叠问题;
22
+ - 弹窗右上角 X 关闭按钮补充中、英、俄三语无障碍标签(`common.close`),消除英文硬编码回退。
23
+ - 设置页 ID 规范与第三方插件共存兼容(#91):
24
+ - 设置页 section ID 调整为团队统一规范的 `archive-manager`,消除与第三方同类插件的注册命名冲突并增加运行时 fail-soft 容错保护。
25
+
26
+ ## 1.1.16 - 2026-10-26
27
+
28
+ - 修复资源管理器打开路径校验在 Linux/POSIX 环境下对绝对路径与 Windows 盘符的兼容性问题,确保跨平台全绿通过。
29
+ - 修复侧栏星标破坏子元素索引导致与皮肤插件(orca-link)冲突的严重排版缺陷(#90):将会话行星标改用行尾挂载(`row.appendChild`)并通过 CSS Flex `order: -1` 与前导格 `order: -2` 排版,严格保护宿主 `:nth-child(2)` 标题与 `:nth-child(3)` 时间等原生选择器,彻底根治标题被压成 44px 右对齐的问题。
30
+ - 工作区「…」菜单新增快捷操作与精简文案:
31
+ - 「复制目录」:快速将工作区绝对路径复制到系统剪贴板;
32
+ - 「打开目录」:直接在系统文件资源管理器(Windows Explorer、macOS Finder)中打开当前工作区目录;
33
+ - 「归档会话」:支持一键将当前工作区所有未归档会话安全归档。
34
+ - 会话「…」菜单新增「移动到工作区」二级悬停子菜单:
35
+ - 悬停即时展开目标工作区列表,自带视口动态防溢出与原生细滚动条计算;
36
+ - 采用 NTFS 级进程锁静默停靠(Quiesce)与原子级改写校验,改写前对原工作区执行静态快照以彻底避免双重记账;
37
+ - 迁移后即时读取真实事件流预热投影缓存,彻底消除移动后标题短暂闪现“未命名”的问题;
38
+ - 完善带冒号及 `@` 字符的 IM 会话(微信、钉钉等渠道)在 Windows 文件系统下的转义支持与回滚防护。
39
+ - 规范对齐工作区与会话操作菜单的排序与文案层级:
40
+ - 工作区菜单排序对齐为:重命名 -> 复制目录 -> 打开目录 -> 归档会话 -> 删除工作区;
41
+ - 会话菜单排序对齐为:收藏/取消收藏 -> 置顶/取消置顶 -> 重命名 -> 分叉会话 -> 归档会话 -> 复制 Session ID -> 移动到工作区 -> 删除会话。
42
+
43
+ ## 1.1.15 - 2026-10-26
44
+
45
+ - 修复侧栏星标破坏子元素索引导致与皮肤插件(orca-link)冲突的严重排版缺陷(#90):将会话行星标改用行尾挂载(`row.appendChild`)并通过 CSS Flex `order: -1` 与前导格 `order: -2` 排版,严格保护宿主 `:nth-child(2)` 标题与 `:nth-child(3)` 时间等原生选择器,彻底根治标题被压成 44px 右对齐的问题。
46
+ - 工作区「…」菜单新增快捷操作与精简文案:
47
+ - 「复制目录」:快速将工作区绝对路径复制到系统剪贴板;
48
+ - 「打开目录」:直接在系统文件资源管理器(Windows Explorer、macOS Finder)中打开当前工作区目录;
49
+ - 「归档会话」:支持一键将当前工作区所有未归档会话安全归档。
50
+ - 会话「…」菜单新增「移动到工作区」二级悬停子菜单:
51
+ - 悬停即时展开目标工作区列表,自带视口动态防溢出与原生细滚动条计算;
52
+ - 采用 NTFS 级进程锁静默停靠(Quiesce)与原子级改写校验,改写前对原工作区执行静态快照以彻底避免双重记账;
53
+ - 迁移后即时读取真实事件流预热投影缓存,彻底消除移动后标题短暂闪现“未命名”的问题;
54
+ - 完善带冒号及 `@` 字符的 IM 会话(微信、钉钉等渠道)在 Windows 文件系统下的转义支持与回滚防护。
55
+ - 规范对齐工作区与会话操作菜单的排序与文案层级:
56
+ - 工作区菜单排序对齐为:重命名 -> 复制目录 -> 打开目录 -> 归档会话 -> 删除工作区;
57
+ - 会话菜单排序对齐为:收藏/取消收藏 -> 置顶/取消置顶 -> 重命名 -> 分叉会话 -> 归档会话 -> 复制 Session ID -> 移动到工作区 -> 删除会话。
58
+
7
59
  ## 1.1.14 - 2026-10-26
8
60
 
9
61
  - 新增侧栏会话星标(#89 由 @DSLM 贡献):会话行标题左侧(宿主前导格之后的独立容器)出现收藏星,已收藏常显、未收藏悬停显示,直接读写本插件既有的收藏集合;会话「…」菜单同时新增「收藏 / 取消收藏」,键盘可达。
package/README.md CHANGED
@@ -203,6 +203,10 @@ Archiving puts a conversation away so you can restore it later. **Permanent dele
203
203
 
204
204
  Yes. [Codex UI](https://github.com/MichengAI/dsh-codex-ui) keeps its sidebar appearance and interactions. Archive management remains available in **Settings → Archived sessions**.
205
205
 
206
+ ### Coexisting with other archive plugins
207
+
208
+ This plugin registers its Settings entry under the section ID `archive-manager`. If other session archive plugins (such as `@linxin666/dsh-session-archive`) are installed at the same time, two distinct "Archived sessions" entries will appear in the settings sidebar. Both can be accessed independently as expected.
209
+
206
210
  For other problems, open an [issue](https://github.com/MichengAI/dsh-archive-manager/issues) with your DSH and plugin versions, reproduction steps, and error details.
207
211
 
208
212
  ## Install from source
package/README.ru.md CHANGED
@@ -174,6 +174,10 @@ dsh --profile web --dump-config
174
174
 
175
175
  Да. [Codex UI](https://github.com/MichengAI/dsh-codex-ui) сохраняет свой внешний вид и взаимодействие. Управление архивом остаётся доступным в **Настройки → Архив сессий**.
176
176
 
177
+ ### Сосуществование с другими плагинами архивации
178
+
179
+ Этот плагин регистрирует пункт настроек с идентификатором `archive-manager`. Если одновременно установлены другие плагины управления архивом (например, `@linxin666/dsh-session-archive`), в боковой панели настроек появятся два отдельных пункта «Архив сессий». К каждому из них можно получить независимый доступ в настройках, что является ожидаемым поведением.
180
+
177
181
  При других проблемах откройте [issue](https://github.com/MichengAI/dsh-archive-manager/issues) с версиями DSH и плагина, шагами воспроизведения и деталями ошибки.
178
182
 
179
183
  ## Установка из исходников
package/README.zh-CN.md CHANGED
@@ -207,6 +207,10 @@ dsh --profile web --dump-config
207
207
 
208
208
  可以。保留 [Codex UI](https://github.com/MichengAI/dsh-codex-ui) 的侧栏样式和交互,归档管理仍在「设置 → 归档会话」中。
209
209
 
210
+ ### 与其他归档插件共存说明
211
+
212
+ 本插件设置页入口注册 ID 为 `archive-manager`。若当前环境同时安装了其他归档管理插件(例如 `@linxin666/dsh-session-archive`),设置侧边栏中会出现两个各自独立的「已归档会话」入口,均可在设置中正常访问,这属于正常预期表现。
213
+
210
214
  遇到其他问题,请提交 [Issue](https://github.com/MichengAI/dsh-archive-manager/issues),附上 DSH 与插件版本、复现步骤和错误信息。
211
215
 
212
216
  ## 从源码安装
@@ -0,0 +1,19 @@
1
+ <svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <defs>
3
+ <linearGradient id="dsh_svg_arch_g" x1="6" y1="8" x2="30" y2="28" gradientUnits="userSpaceOnUse">
4
+ <stop stop-color="#10B981"/>
5
+ <stop offset="1" stop-color="#059669"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <!-- Card Extracted from Box -->
9
+ <rect x="11" y="6" width="14" height="10" rx="2" fill="#E6FFFA" stroke="#10B981" stroke-width="1.8"/>
10
+ <line x1="14" y1="10" x2="22" y2="10" stroke="#10B981" stroke-width="1.8" stroke-linecap="round"/>
11
+ <!-- Archive Drawer Body -->
12
+ <rect x="6" y="13" width="24" height="17" rx="3.5" fill="url(#dsh_svg_arch_g)"/>
13
+ <!-- Drawer Face Panel -->
14
+ <rect x="8.5" y="15.5" width="19" height="12" rx="2" fill="#047857" fill-opacity="0.3"/>
15
+ <!-- Drawer Pull Handle -->
16
+ <rect x="14" y="19" width="8" height="3" rx="1.5" fill="#FFFFFF"/>
17
+ <!-- Extraction Arrow -->
18
+ <path d="M18 4L15 7M18 4L21 7" stroke="#10B981" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
19
+ </svg>