Repository navigation
Releases
Releases · ayuanxx-max/dsh-session-fork-tree
v0.9.26 · 「收起」固定在会话最底部
中文
- 新增
pinFooters():识别「收起/展开/显示更多/显示更少」控件,钉到其含会话祖先的末尾(order: 999999,容器必要时转为 flex column)。 - 「收起」不再被会话标题压住或夹在会话之间,永远位于该组会话最下方。
- 归档 OpenSpec 变更
2026-11-03-pin-collapse-footer,规格新增对应需求。
English
- Adds
pinFooters(): collapse/expand controls are pinned to the end of their session-bearing ancestor (order: 999999). - The control can no longer be overlapped by session rows.
- OpenSpec change archived; spec updated.
v0.9.24 · 横线固定 10px(规格化)
中文
- 「╰」横线长度改为固定 10px,所有层级一致(含第 1 层);标题由同一段代码左移
shift,实测与横线末端相差 2px。 - 缩进 16px/层、封顶 5 层;新增缩进修正回环,抵消新版 DSH 的内边距。
- 引入 OpenSpec 规格与闸门:
openspec validate --all --strict+ 遥测断言(横线 10px、标题紧贴、父子顺序)。
English
- The rail is a fixed 10px at every depth; the title shift comes from the same code path (measured gap 2px).
- 16px indent per level (max 5) with a correction pass for the new DSH padding.
- Adds an OpenSpec spec and a gate combining
openspec validate --all --strictwith telemetry assertions.
v0.9.14 · 修复 DSH 升级后的父子乱序
中文
- 新版 DSH 把会话列表从 flex 改为 block 布局,
order失效,导致子行跑到父行上面。 - 现在运行期自适应:flex 容器直接设
order;block 容器一次性转为 flex column,非会话子节点钉回原槽位,再按树序分配order。 - 全程不移动 React 节点,不依赖 DSH 的 DOM 结构细节,后续版本升级同样适用。
English
- Newer DSH renders the session list as a block container where
orderis ignored; children were landing above their parent. - The client now adapts at runtime: flex containers get
orderdirectly, block containers are converted to a flex column once, non-session children are pinned to their slots, and rows receive the tree order. - No React nodes are moved, so the fix is independent of DSH's internal DOM shape.
v0.9.8 · 标记与标题间距 7px
中文
- 标记按钮与标题最后一个字之间再右移 2px(间距 5px → 7px)。
- 垂直居中沿用测量校正。
English
- The marker sits 2px further right (gap 5px → 7px); vertical centring unchanged.
v0.9.6 · 垂直居中与性能优化
中文
- +/− 按测量校正垂直居中,不再贴文字底部。
- 移除全局 body MutationObserver(聊天流式输出每帧都触发全量重排)与 20s 全表轮询。
- 改为侧栏范围内懒安装观察者;页面隐藏时暂停轮询;隐藏行跳过几何测量;可见性属性不再重复写。
English
- Marker is vertically centred by measurement.
- Removes the document-wide observer and periodic full sweeps; scoped, lazy observer; polling pauses when hidden.
v0.9.5 · 修复平铺展开与循环刷新
中文
- 删除按标题推导父子关系的兜底(它把树倒置,导致点击后全部平铺展开)。
- 重排前先比较顺序,一致就跳过,消除轮询导致的循环刷新。
- 每行只保留一个标记按钮,改为标题后的行内按钮。
English
- Removes the name-derived fallback that inverted the tree.
- Skips redundant reordering, stopping the refresh loop.
- One marker per row, inline after the title.
v0.9.4 · 标记紧跟标题最后一个字
中文
- 去掉行右端的按钮:每行只保留一个,旧版本残留的 .ft-toggle 会被清理。
- 按钮插入标题最深层文本元素内,紧跟最后一个字;会话行与标题行垂直居中。
English
- One marker per row, leftovers removed; it rides the last title character and rows are vertically centred.
v0.9.3 · 恢复 0.9.1 按钮行为
中文
- 恢复 0.9.1 的 + 按钮行为(标题后内联,展开显示绿框 -)。
- 不追加“标题截断时固定按钮”的额外规则。
English
- Restores the 0.9.1 toggle behaviour.
- No extra truncation rule is added.
v0.9.2 · 回退 0.9.1 按钮规则
中文
- 撤销 0.9.1 的按钮改动(内联到标题后),行为恢复为 0.9.0。
English
- Reverts the 0.9.1 toggle change; behaviour is back to 0.9.0.
v0.9.1 · + 内联到标题后,展开显示绿框 −
中文
-
- 改为标题文本后的行内按钮(不再绝对定位到行右端),不会被归档/置顶等悬停按钮遮挡。
- 展开态显示带绿色边框的 −。
English
- The + is an inline button right after the title text, so hover actions cannot cover it.
- The open state renders a green-framed -.