feat(Log): Log 视图新增 Checkpointer 选项并默认剔除自动快照提交#38
Merged
ThreeFish-AI merged 2 commits intoJun 30, 2026
Conversation
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
This was referenced Jun 30, 2026
ThreeFish-AI
added a commit
that referenced
this pull request
Jun 30, 2026
* chore(Release): 发布 v0.0.5 首个 MVP 正式版:版本号/发布说明/CHANGELOG/文档引用全链路收敛; - package.json 版本号 0.0.1 → 0.0.5(唯一权威版本源) - Release Note 重命名为 docs/releases/v0.0.5.md 并重写:升级叙事、更新规模口径、补入提交图 CI 状态(#37)与 Checkpointer 过滤(#38)两特性 - CHANGELOG.md 仅保留 v0.0.5 段,含全部特性介绍 - 同步 README/docs/knowledge-map/implementation-status 版本引用,消除 0.0.1 与 0.5.0 残留 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * docs(Branding): 全仓措辞去「复刻 IDEA」产品定位,改为功能化专业描述; - 用户可见/发布文案(package.json、README、CHANGELOG、Release Note v0.0.5、log-ci-status): 「完整复刻 IntelliJ IDEA Git 工具窗口/Commit 窗口」改为「提供统一的 Git 变更管理与提交工作流」; 「IDEA 风格提交图/Commit 窗口」改为「可视化提交图(DAG)/自绘提交面板」 - 内部调研/架构/需求/里程碑文档:产品定位句功能化,机制佐证动词软化为「参考/借鉴 JetBrains」, 完整保留 JetBrains 源码 URL、CheckinHandler/ChangeListManager 等客观技术对照与证据链 - src/ 与 tests/ 代码注释(32 src + 1 test):去「复刻/IDEA 风格/IDEA 等价」定位, 机制佐证软化为参考 JetBrains,仅改注释不动逻辑 - 验证:pnpm run compile GREEN;test:unit 280/280 全绿;全仓无活跃产品定位措辞残留 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * chore(Release): 扩展更名为 Hyper Git - Agentic Git 并发布 v0.0.6 重新上架; 因 VS Code Marketplace 上「Hyper Git」名称被误删不可用,将扩展以新发布名重新上架: - package.json:name hyper-git → hyper-git-agentic-git(extension ID,Marketplace 唯一标识); displayName → Hyper Git - Agentic Git;version 0.0.5 → 0.0.6 - 保留 publisher、viewsContainers id(hyper-git)/title(Hyper Git)、228 处 hyperGit.* 命令与配置 key 不变,不破坏用户既有配置 - Release Note 重命名为 docs/releases/v0.0.6.md 并更新标题/导语/安装段(新 vsix 名 hyper-git-agentic-git-0.0.6.vsix + 新搜索名) - CHANGELOG 仅保留 [0.0.6] 段并注明改名上架;README/docs 版本与安装引用同步 v0.0.6 - 验证:pnpm run compile GREEN;vsce package 产出 hyper-git-agentic-git-0.0.6.vsix;全仓无遗留 0.0.5 引用 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com> * fix(Test): 集成测试 extension ID 改为从 package.json 动态推导,修复改名后冒烟测试失败; 扩展更名为 hyper-git-agentic-git 后,tests/suite/extension.test.js 中硬编码的旧 ID `threefish-ai.hyper-git` 导致 getExtension 返回 undefined,三平台集成测试断言「扩展未找到」 失败,进而 Package/GitHub Release/Publish 全部 skipped、v0.0.6 未发布。 改为从 package.json 的 publisher + name 动态拼接 EXT_ID(单一事实源), 未来任何改名都不再需要同步改测试。本地集成测试验证 3 passing(exit 0)。 🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist) Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
背景
Hyper Git 的 Log 视图在 Conductor 等 AI Agent 编排环境中使用时,
All视图混入大量由 Agent 自动创建的「状态快照提交」——它们统一以checkpoint:前缀开头(LangGraph Checkpointer 语义),已知模式:checkpoint:session-<uuid>-turn-<uuid>-start/-endcheckpoint:conductor-archive-<uuid>checkpoint:conductor-getdiff这些自动提交密度极高(每个 turn 2 条),淹没真实的人类提交历史,严重影响阅读。
变更内容
在 Log 视图工具栏
All/Current之后新增第三个互斥选项「Checkpointer」,重组三类视图语义:--all--all即
keepCheckpoint = (scope === 'checkpointer')。实现要点
log-filter.ts新增CHECKPOINT_SUBJECT_RE = /^checkpoint:/i与isCheckpointSubject()谓词,LogClientFilter增keepCheckpoint维度,applyClientFilters链首追加剔除;log-query.ts的LogScope扩展为'all' \| 'current' \| 'checkpointer',checkpointer与all共享--all。protocol.ts零改动(export type { LogScope }re-export 自动传导三态,单一事实源设计红利)。log-webview.ts增第三个按钮 + active 切换 +fetchPage注入keepCheckpoint+normalizeScope白名单兜底 + 抽setScope闭包统一三按钮。--invert-grep全局反转会破坏用户既有--grep过滤的致命缺陷;DAG 布局对「被隐藏祖先」已有 dangling 边处理,剔除 checkpoint 后天然安全,无需改 graph-layout。验证
pnpm run check-types(tsc --noEmit无报错)pnpm run lintpnpm run test:unit:227/227 全绿(log-filter20 例含新增 checkpoint 识别与keepCheckpoint维度用例;log-query8 例含checkpointer范围断言)pnpm run compile(esbuild 打包成功,dist/extension.js生成)All/Current视图不含checkpoint:提交、Checkpointer视图含全部、DAG 泳道渲染与增量加载正常。改动文件
src/engine/log/log-filter.tssrc/engine/log/log-query.tssrc/adapter/webview/log-webview.tstests/unit/log-filter.test.tstests/unit/log-query.test.ts