v0.0.12
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.3、typescript-eslint 8.39 → 8.62.1,以及@stylistic/eslint-plugin、prettier、actions/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。