Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,12 @@

## [Unreleased]

## [0.0.14] - 2026-07-06 — 修复 GRAPH 视图提交记录时间倒序

修复 GRAPH 视图「All」范围下提交记录未按时间倒序排列的问题——取数参数由 `--topo-order` 改为 `--author-date-order`,令跨分支提交按作者日期正确交错、消除「日期回跳」。纯取数排序修复,不改数据协议、布局算法与任何视图交互。完整用户视角叙述见 [Release Note v0.0.14](./docs/releases/v0.0.14.md)。

### Fixed
- **GRAPH 视图提交记录日期回跳**:取数参数 `--topo-order` → `--author-date-order`。`--topo-order` 会把不同分支的提交「成块」输出,导致从较旧提交分叉但日期较新的旁支提交被整块挤到列表末尾,出现「前几行日期递减、中途回跳到最新日期」的反直觉乱序;`--author-date-order` 同样保证 lane 算法依赖的「子在父之上」不变量,且按作者日期倒序跨支正确交错,并与视图日期列(`row.authorDate`)对齐详见 [issue #14](./docs/.agents/issue.md)。
- **GRAPH 视图提交记录日期回跳**:取数参数 `--topo-order` → `--author-date-order`。`--topo-order` 会把不同分支的提交「成块」输出,导致从较旧提交分叉但日期较新的旁支提交被整块挤到列表末尾,出现「前几行日期递减、中途回跳到最新日期」的反直觉乱序;`--author-date-order` 同样保证 lane 算法依赖的「子在父之上」不变量(`graph-layout` 仅依赖该拓扑约束、不依赖 topo-order 的「分支成块」特性),且按作者日期倒序跨支正确交错,并与视图日期列(`row.authorDate`)对齐(单一事实源)。同步更新 8 处 `topo-order` 注释澄清不变量真实要求、`log-query.test.ts` 断言与「不含 `--topo-order`」回归护栏。详见 [issue #14](./docs/.agents/issue.md)。(#82)

## [0.0.13] - 2026-07-05 — 视图容器由活动栏迁移至底部面板(Terminal 之后)

Expand Down
2 changes: 1 addition & 1 deletion docs/.agents/knowledge-map.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
- [工程实施方案](../docs/architecture/engineering-plan.md) — 路径 B 架构 + M0-M5 里程碑(**开发蓝图**)。
- [Git 功能矩阵](../docs/requirements/idea-feature-matrix.md) — 56 功能点 / 8 组(**验收基线**,参考 IDEA 等成熟实现)。
- [调研报告](../docs/research/README.md) — SCM 集成 / 工程蓝图 / 发布 CI / AI 接缝四路循证报告。
- [发布说明](../releases/README.md) — 各正式版 Release Notes(GitHub Release 正文单一事实源;最新 [v0.0.13](../releases/v0.0.13.md))。
- [发布说明](../releases/README.md) — 各正式版 Release Notes(GitHub Release 正文单一事实源;最新 [v0.0.14](../releases/v0.0.14.md))。

## 架构分层(src/)
> 依赖方向单向:`UI → Adapter → Engine`;`Agent` 以接口注入 `Engine`/`CommitPipeline`,不反向依赖 UI。
Expand Down
2 changes: 1 addition & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
- [Log 视图 CI 状态](./features/log-ci-status.md) — 按提交显示 GitHub CI 最终状态(绿勾/红叉 + 悬停 Tooltip 明细):认证、限流、懒加载、边界与配置。

## 发布说明
- [Release Notes 目录](./releases/README.md) — 各正式版发布说明(GitHub Release 正文单一事实源);最新:[v0.0.13 视图容器由活动栏迁移至底部 Panel(Terminal 之后)](./releases/v0.0.13.md)。
- [Release Notes 目录](./releases/README.md) — 各正式版发布说明(GitHub Release 正文单一事实源);最新:[v0.0.14 修复 GRAPH 视图提交记录时间倒序](./releases/v0.0.14.md)。

## 调研报告(循证依据)
- [02 · VS Code SCM API 与 vscode.git 集成路径](./research/02-vscode-scm-integration.md) — 路径 B 决策依据、SCM 稳定/proposed API 边界、changelist 模型映射。
Expand Down
1 change: 1 addition & 0 deletions docs/releases/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

| 版本 | 说明 | 日期 |
|---|---|---|
| [v0.0.14](./v0.0.14.md) | 修复 GRAPH 视图提交记录时间倒序(`--topo-order` → `--author-date-order`) | 2026-07-06 |
| [v0.0.13](./v0.0.13.md) | 视图容器由活动栏迁移至底部 Panel(Terminal 之后) | 2026-07-05 |
| [v0.0.12](./v0.0.12.md) | 提交详情光标跟随悬浮卡 · Tooltip 交互修复 · 侧边栏布局优化 · 依赖升级基线(TS6 / vitest4 / vite8) | 2026-07-04 |
| [v0.0.11](./v0.0.11.md) | 首个正式版(承载 0.0.10 内容)· Graph 视图对齐官方 · 发布渠道收敛 Marketplace | 2026-07-04 |
Expand Down
53 changes: 53 additions & 0 deletions docs/releases/v0.0.14.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Hyper Git - Agentic Git v0.0.14 — 修复 GRAPH 视图提交记录时间倒序

> 修复 **GRAPH 视图**「All」范围下提交记录**未按时间倒序**排列的问题:此前列表前段日期正常递减,中段却会「回跳」到最新日期——较新的旁支提交被错误地挤到列表底部。本版令提交严格按**作者日期倒序**呈现,跨分支提交正确交错。

> 本版为纯取数排序修复,未改动任何 `viewType`、消息协议、`webview.setState` 形状、布局算法与配置项,旧状态无需迁移。

---

## ✨ 亮点速览

- **提交记录严格时间倒序**:GRAPH 视图取数参数由 `--topo-order` 改为 `--author-date-order`,从较旧提交分叉、但日期较新的旁支提交不再被「成块」挤到列表末尾,日期列自上而下单调递减、不再回跳。
- **泳道不受影响**:DAG 彩色泳道(lane)布局所依赖的「子提交在父提交之上」拓扑不变量在新排序下依然严格成立,连线与分叉渲染保持正确,无断裂、无变形。
- **零协议/交互回归**:仅一行取数参数变更,数据协议、布局算法、引用胶囊、悬浮卡、范围切换(All / Current / Checkpoints)、增量加载与过滤(author / grep / path)全部沿用。

---

## 🧩 问题与修复

### 现象

在「All」范围下,提交记录本应严格按时间倒序(最新在顶部)。实际却出现:列表前段(如 `2026-07-05` → `2026-05-25`)日期正常递减,但中段之后日期**回跳**回最新的 `2026-07-05`——一批远端旁支提交(如安全修复、依赖升级等分支)被整块排到了列表底部,与「按时间浏览历史」的直觉严重不符。

### 根因

GRAPH 视图的提交顺序此前完全由 `git log` 的 `--topo-order`(拓扑序)参数决定,管道各层均无二次排序。`--topo-order` 在保证「子在父之上」的同时,会额外把**不同分支的历史「成块」输出**——一条分支的提交整块列完,再切到下一条。当仓库存在从较旧提交分叉、但提交日期较新的旁支时,这些提交便被整块下放到列表末尾,形成「日期回跳」。这是 `--topo-order` 的设计特性,并非按日期排序。

### 修复

改用 `--author-date-order`:它同样保证 DAG 泳道算法依赖的「子在父之上」拓扑不变量,但在此约束下**按作者日期倒序**排列提交,使跨分支提交正确交错。之所以选「作者日期」而非「提交者日期」,是为了与 GRAPH 视图**日期列实际显示的时间**保持一致——排序键与显示键对齐,避免出现「列内日期看似仍乱序」的二次困惑。

---

## ⚙️ 升级与兼容

- **无破坏性变更**:仅 GRAPH 视图 `git log` 取数排序参数变更,未改动 `viewType`、消息协议、`setState` 形状或配置项,从 v0.0.13 升级无需任何迁移。
- **即时生效**:升级后打开 GRAPH 视图即为新排序,无需重置布局或清理状态。

---

## 📦 安装

- **VS Code Marketplace**:搜索 `Hyper Git - Agentic Git` 直接安装或更新。
- **手动**:从 [Releases](https://github.com/ThreeFish-AI/hyper-git/releases/tag/v0.0.14) 下载 `hyper-git-agentic-git-0.0.14.vsix` → 命令面板 `Extensions: Install from VSIX`(Cursor / Windsurf / VSCodium 等用户可经此方式安装)。

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

---

## 💬 反馈

欢迎在 [GitHub Issues](https://github.com/ThreeFish-AI/hyper-git/issues) 反馈问题与建议。完整工程视角变更记录见 [CHANGELOG](../../CHANGELOG.md);本次修复的表因、根因与防范沉淀见 [issue #14](../.agents/issue.md)。

许可证:[MIT](https://github.com/ThreeFish-AI/hyper-git/blob/master/LICENSE)。
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"theme": "dark"
},
"description": "Hyper Git brings IntelliJ IDEA's powerful Git & Commit modules to VS Code, enhanced with AI-powered autonomous agents for intelligent repository management. Experience Git in a higher dimension.",
"version": "0.0.13",
"version": "0.0.14",
"publisher": "ThreeFish-AI",
"license": "MIT",
"preview": true,
Expand Down