Skip to content

v0.0.12

Choose a tag to compare

@github-actions github-actions released this 04 Jul 15:06
237e057

Hyper Git - Agentic Git v0.0.12 — 提交详情光标跟随悬浮卡 · Tooltip 交互修复 · 布局优化 · 依赖升级基线

v0.0.11 基础上的一次交互打磨与工程基线巩固版本。将 Graph 提交详情悬浮卡重做为随光标浮现、逐项对齐 VS Code 官方 Source Control GRAPH 的形态;配套修复 CI / 提交两类悬浮 Tooltip 的定位、互斥、键盘触发与引用胶囊截断等一系列交互回归;优化侧边栏视图默认布局;并合入 TypeScript 6 / vitest 4 / vite 8 等依赖升级基线。

本版无破坏性变更:视图 viewType、消息协议、webview.setState 形状与全部配置项均保持不变,旧状态无需迁移。


✨ 亮点速览

  • 提交详情:光标跟随悬浮卡:鼠标悬停 Graph 提交行,提交详情以跟随光标的悬浮卡浮现,采用 VS Code editorHoverWidget 语义配色、与 CI 状态浮层同款视觉语言,内容逐项对齐官方 Source Control GRAPH。
  • Tooltip 交互一致性修复:浮层定位更贴近光标、CI 与提交两类浮层互斥不互相遮挡、引用胶囊完整不截断、键盘(i 键)触发路径恢复。
  • 侧边栏视图默认布局优化:次要视图默认折叠、各视图设初始高度权重,缓解视图挤占空间的体感。
  • 依赖升级基线:TypeScript 6.0.3、vitest 4、vite 8、typescript-eslint 8.62.1 等升级到位,锁文件重生,为后续演进夯实工具链地基。

🧩 完整能力

Graph 提交详情:光标跟随悬浮卡,逐项对齐官方

面向用户的提交详情由「独立面板」路线回归为随光标浮现的悬浮卡——此前曾尝试将提交详情迁移至右侧编辑器区 WebviewPanel,实测交互割裂(需切 tab、丢失上下文),最终撤回该方案、改回轻量的光标跟随浮层,并在此形态上逐项对齐 VS Code 官方 Source Control GRAPH:

  • 视觉语言统一:悬浮卡(#commit-tip)采用 editorHoverWidget 系列语义令牌(背景 / 前景 / 边框),与 CI 状态浮层同款圆角、阴影与字号,深浅主题自适应。
  • 内容逐项对齐官方:变更文件 diffstat(增删行)、作者与提交者邮箱、作者 / 提交时间(绝对 + 相对并列)、所在 branches / tags / remotes 引用胶囊、以及(与作者不同时的)Committer 行。
  • 单一事实源:新增 engine 纯函数 format-time(绝对 + 相对时间格式化)作为时间呈现的唯一实现,避免 host / webview 双份漂移;配套扩展 commit-files 的 diffstat 解析与 protocol 的提交详情载荷字段。

侧边栏视图默认布局优化

  • 次要视图默认折叠:Stash / Shelf 两个次要视图默认折叠(仅占标题栏、点击即展开),Worktrees 保持默认展开、仅收窄初始高度。
  • 初始高度权重:为各视图设置 initialSize(Commit / Graph 较高、Branches 居中、次要视图紧凑),缓解视图相互挤占空间的体感。
  • 已知边界:VS Code 侧边栏视图存在约 142px 硬性最小展开高度(核心硬编码,官方特性请求 microsoft/vscode#123715 已 not planned),无法经扩展解除;上述默认仅对新安装或执行「View: Reset View Locations」后的布局生效。详见 issue #12

🐛 改进与修复

  • 浮层定位更贴近光标:CI 与提交详情两类 Tooltip 与光标的间距由 14 收窄至 8,并对纵向翻转做视口钳制,避免浮层超出可视区或与光标脱节。(#77)
  • 两类浮层互斥 + 引用胶囊不截断:CI 状态浮层与提交悬浮卡不再同时显现互相遮挡;提交悬浮卡内的 branches / tags / remotes 引用胶囊改为完整显示、不再被省略号截断。(#76)
  • 键盘触发路径恢复positionTip 改为 rect / cursor 双模式定位——鼠标悬停走光标锚定、键盘(i 键)触发走行 rect 锚定,修复 CI 状态 Tooltip 键盘触发丢失。(#74)
  • 修复重做过程中的回归:恢复提交悬浮卡一度丢失的 branches / tags / remotes 胶囊与 Committer 行。(#74)

规模实证:6 视图 / 97 命令 / 6 配置项 / 349 单元测试(34 文件全绿)+ 集成测试,CI 三平台(Ubuntu / macOS / Windows)矩阵校验。


⚙️ 升级与兼容

  • 无破坏性变更:本版聚焦交互打磨与工程基线,未改动 viewType、消息协议、setState 形状或配置项(hyperGit.log.* / hyperGit.commit.*),旧状态无需迁移。
  • 未新增配置项:现有配置一律沿用。
  • 依赖升级基线(面向贡献者):TypeScript 5.9 → 6.0.3(并迁移 tsconfig 模块解析策略)、vitest 2 → 4.1.9、新增显式 vite ^8.1.3typescript-eslint 8.39 → 8.62.1,以及 @stylistic/eslint-pluginprettieractions/checkout 等升级;锁文件已重生。不影响扩展运行时行为与安装要求。

📦 安装

  • VS Code Marketplace:搜索 Hyper Git - Agentic Git 直接安装。
  • 手动:从 Releases 下载 hyper-git-agentic-git-0.0.12.vsix → 命令面板 Extensions: Install from VSIX(Cursor / Windsurf / VSCodium 等用户可经此方式安装)。

系统要求:VS Code ≥ 1.85.0,且启用内置 Git 扩展(vscode.git,默认随附)。仅支持本地 git 仓库,不支持虚拟 / Web 工作区。


💬 反馈

欢迎在 GitHub Issues 反馈问题与建议。完整工程视角变更记录见 CHANGELOG

许可证:MIT