Skip to content

feat(M2): Commit 提交窗口 + CommitPipeline + AI 接缝 - #4

Merged
ThreeFish-AI merged 4 commits into
feature/1.x.xfrom
ThreeFish-AI/m2-commit-window
Jun 27, 2026
Merged

feat(M2): Commit 提交窗口 + CommitPipeline + AI 接缝#4
ThreeFish-AI merged 4 commits into
feature/1.x.xfrom
ThreeFish-AI/m2-commit-window

Conversation

@ThreeFish-AI

Copy link
Copy Markdown
Owner

背景

落地 M2 里程碑:让「勾选文件 → 填 message → Commit / Commit and Push」闭环可用。基于 工程方案(路径 B:消费 vscode.git API + 自绘 Commit Webview)。

交付内容

  • Commit 提交窗口adapter/webview/commit-webview.ts,WebviewView 自绘 IDEA 风格):活动 changelist 文件勾选 + 多行 Commit Message 编辑器 + Amend / Signed-off-by / 跳过 Git hooks 选项 + Commit / Commit and Push 按钮 + CC 实时校验指示器 + 最近消息复用。
  • CommitServiceadapter/commit/commit-service.ts):编排提交流水线(对齐 IDEA checkin)—— 校验信息 → 解析选中文件 → repo.add绝对路径,循证 api1.tsUri.file() 要求)→ CommitPipeline 责任链 → repo.commit → 可选 repo.push;最近消息 workspaceState 持久化。
  • Conventional Commits 校验engine/commit/conventional-linter(纯函数,ok/warning/error)+ webview 实时指示 + 内置 ConventionalCommitCheck(Checkin hook,pipeline 内阻断)。
  • CommitPipeline 责任链对齐 IDEA CheckinHandlerConventionalCommitCheck(EARLY)+ IPreCommitInspector(Null)。
  • AI 接缝 5 接口 + Null 实现注入 CommitService(ILlmProvider/ICommitMessageProvider/IPreCommitInspector/IChangelistGrouper/IConflictResolver)—— 真实接入点,M5 替换为真实 provider。
  • 协议shared/protocol.ts 扩展 CommitViewState / Host↔Webview 消息(文件勾选、提交请求、CC 校验、提交结果)。

验收(本地全绿)

结果
check-types / lint / package ✅(dist 23.84 KB)
test:unit(Vitest) 32/32(新增 CC linter 9 项)
test:integration(test-electron) 2/2:命令注册 + 真实 git 提交闭环(fixture 仓库 add+commit,git log 校验,工作区清洁)
vsce package hyper-git-0.3.0.vsix(16.35 KB)

说明

  • Author 覆盖暂未实现:vscode.git 稳定 API 的 commit() 不支持 --author(已记方案待核实项),M2 暂不含。
  • 集成测试 run-integration.js 现创建临时 git fixture 并以其为工作区启动 VS Code。

🤖 Generated with Claude Code

🤖 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>
🤖 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>
@ThreeFish-AI
ThreeFish-AI merged commit 7e2c552 into feature/1.x.x Jun 27, 2026
4 checks passed
@ThreeFish-AI
ThreeFish-AI deleted the ThreeFish-AI/m2-commit-window branch June 27, 2026 14:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant