github ccch1mneyyy/dsh-TUI v0.9.0
v0.9.0 — 鼠标全面适配 · 时间线导航 · fullscreen 默认 · 长会话性能

2 hours ago

🖱️ 鼠标交互全面适配

  • 统一 pointer 事件模型:PointerEvent 基类、ClickEvent 修饰键、hover
    事件参数与派发错误隔离;滚轮坐标保留与位置路由、水平滚轮、X10 兜底
  • 20+ 面板/菜单全部可点:审批/问卷/计划评审/插件对话框、命令与文件
    补全菜单(含滚轮选择)、历史搜索行、会话浏览器行、RewindPicker、
    设置屏(字段/组行点击 + hover 焦点 + 滚轮)、轨迹场景(行点击/页签/
    排序/搜索/滚轮/WaveBand 点击跳转)、SubagentDetail、goal/todo 面板
  • 输入框点击定位光标:视觉行列精确映射回文本偏移
  • 浮层打开时滚轮不再穿透滚动背后转录;转录按用户反馈回归纯阅读区

🧭 时间线导航(Grok 式)

  • 轮次 rail 覆盖全部轮次(含折叠轮):折叠窗口只露最近几轮时历史
    仍全景可达,点击刻度先揭示对应轮再滚动到位
  • 一键回到底部:未钉底时 pill 常驻可点,Enter/End 远距一步到位
    (不闪空白,死锁一并修复);新消息 pill 计数
  • scrollGutter 三态设置:timeline / scrollbar / hidden
  • 置顶 prompt 头跟随视口——翻到哪轮钉哪轮

🖥️ fullscreen 出厂默认

  • 全屏模式成为出厂默认(0.8.8 前为 inline);/settings 全屏开关随时
    切回,fullscreen: false 可持久化退回 inline 主屏
  • 全屏退出/resume 竞态根治(bootedFullscreen 捕获、自愈提速到首个交互)、
    alt-screen 偶发失效自愈

⚡ 长会话性能(perf-real-open 基准驱动)

  • 热路径分配归零化:visibleRows 管线按 rows 身份/长度/流位指纹缓存,
    3200 行会话每 16ms tick 省 ~200KB GC churn
  • wrapText 与 markdown token 全局 LRU:跨挂载复用测量结果
  • 主屏打开分帧补画:先挂尾部窗口再补历史,渲染折叠窗口 300→120 行
  • Presenter 排空节拍 + pty 背压门:滚动帧字节 -30%
  • 子代理渲染优化:settled 卡片动画时钟退出(空闲帧 8/s→0)、流投影
    16ms 帧对齐批处理(200 chunk 同步投影 200→0 次)、签名按 kind 拆分
  • 长会话恢复跳过开场动画直达内容;落点锚定最新消息末行(可见且可达)
  • 修复:上滚阅读 + 流式并发时不可见流式行的逐 chunk 重挂载

🎨 渲染与 UI 修复

  • 渲染审计 P0/P1:错位/重复行/Unicode caret/陈旧行高
  • sticky 视角 resize 塌缩帧不再整屏空白(#421
  • 空文本 assistant 行不再渲染孤立圆点(#383,含缓存流位指纹融合)
  • 底栏:短会话 ID 开关、goal chip 从不显示的根因修复
  • 补全菜单卡片化 + 斜杠命令全面二级补全;Chat 弹出面板状态机 reducer 化
  • hover 高亮滞留根因修复(背景移除后子节点 blit 复活旧背景)

🏗️ 工程与 CI

  • CI 重构:四个并行测试组 + ci-gate 单 required check + 编译收敛到
    build job 单次(7 次 → 1 次)+ 已知时序 flake 隔离到 non-blocking
    观察组;Windows/macOS 平台冒烟(观察档)
  • 新增回归:verify-scrollbar-gutter / verify-back-to-bottom /
    verify-timeline-rail / repro-resume-position / verify-pointer-events 等
  • trace-scene 探针 4s 轮询窗口 flake 根治(#477

Full Changelog: v0.8.8...v0.9.0

Don't miss a new dsh-TUI release

NewReleases is sending notifications on new releases.