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
17 changes: 17 additions & 0 deletions .agents/issue.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,20 @@
- **处理方式**:删除 package.json 的 `pnpm` 字段;在 `pnpm-workspace.yaml` 写入 `allowBuilds: { esbuild: true, '@vscode/vsce-sign': true, keytar: true }` 后重新 `pnpm install`,三个 postinstall 正常执行。
- **后续防范**:pnpm 项目一律在 `pnpm-workspace.yaml` 管理构建脚本审批;新增含原生二进制的依赖时,需在此文件追加放行;CI 首次 `pnpm install` 后确认无 `ERR_PNPM_IGNORED_BUILDS`。
- **同类问题影响**:所有 pnpm 11 工程;凡依赖 esbuild / keytar / @vscode/vsce-sign / prebuild-install 类原生模块的扩展。

## #3 pnpm 11.9 要求 Node ≥ 22.13(CI 用 Node 20 崩溃)

- **表因**:CI `Lint & Build` job 10s 内失败,日志 `Error [ERR_UNKNOWN_BUILTIN_MODULE]: No such built-in module: node:sqlite`,并告警 `This version of pnpm requires at least Node.js v22.13`。本地不暴露(本地用 Node 24)。
- **根因**:pnpm 11.9 内部使用 Node 22.13+ 才有的 `node:sqlite` 内置模块;CI 工作流配置 `node-version: 20`,pnpm 启动即崩。
- **处理方式**:CI 所有 job 的 `setup-node` 由 `node-version: 20` 升至 `node-version: 22`。
- **后续防范**:pnpm ≥ 11 工程的 Node 基线须 ≥ 22.13;`engines.node`/CI/本地三者对齐(建议 22 LTS 或 24);升级 pnpm 前查其 Node 版本要求(https://r.pnpm.io/comp)。
- **同类问题影响**:所有 pnpm 11+ 的 CI/本地环境;node:sqlite 依赖的其他工具链。

## #4 CI 集成测试 job 缺失扩展构建步骤

- **表因**:CI `Test` job 集成测试报 `Activating extension 'threefish-ai.hyper-git' failed: Cannot find module '.../dist/extension.js'`;本地却通过。
- **根因**:`test` job 仅跑 `test:unit` + `test:integration`,未执行 `node esbuild.js` 构建 `dist/extension.js`;test-electron 启动真实 VS Code 加载扩展(`main: ./dist/extension.js`)时找不到入口。本地因先前 `pnpm run package` 残留 dist/ 而误判通过。
- **处理方式**:`test` job 在 `pnpm install` 后、测试前增加 `node esbuild.js`(或 `pnpm run compile`)构建 dist/。
- **后续防范**:凡含 `@vscode/test-electron` 集成测试的 CI job,必须在测试前显式构建扩展产物;本地验证集成测试后清理 dist/ 以暴露该依赖;`.gitignore` 排除 dist/ 时注意 CI 需重建。
- **同类问题影响**:所有 VS Code 扩展的 test-electron CI job;本地"能跑"但 CI 失败的构建产物缺失类问题。

6 changes: 6 additions & 0 deletions .agents/knowledge-map.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@
- [引用规范 IEEE](./reference-specifications.md) — 文献引用格式与上标锚定。
- [浏览器验证协议](./browser-validation.md) — OAuth/SSO 红线与 E2E 验证协议。

## 项目文档(docs/)
- [文档中心](../docs/README.md) — 文档与调研资产总索引。
- [工程实施方案](../docs/architecture/engineering-plan.md) — 路径 B 架构 + M0-M5 里程碑(**开发蓝图**)。
- [IDEA 功能复刻矩阵](../docs/requirements/idea-feature-matrix.md) — 56 功能点 / 8 组(**验收基线**)。
- [调研报告](../docs/research/README.md) — SCM 集成 / 工程蓝图 / 发布 CI / AI 接缝四路循证报告。

## 架构分层(src/)
> 依赖方向单向:`UI → Adapter → Engine`;`Agent` 以接口注入 `Engine`/`CommitPipeline`,不反向依赖 UI。

Expand Down
17 changes: 17 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Hyper Git 文档中心

> 项目文档与调研资产索引。所有决策均循证(附 GitHub 源码路径 / 官方文档 URL)。

## 工程方案与需求基线(高频引用)
- [工程实施方案](./architecture/engineering-plan.md) — 全链路调研结论 + 路径 B 架构 + M0-M5 里程碑路线图 + 风险与验证(**开发蓝图**)。
- [IDEA 功能复刻矩阵](./requirements/idea-feature-matrix.md) — 56 个原子功能点 / 8 组 + CheckinHandler 生命周期(**验收基线**)。

## 调研报告(循证依据)
- [02 · VS Code SCM API 与 vscode.git 集成路径](./research/02-vscode-scm-integration.md) — 路径 B 决策依据、SCM 稳定/proposed API 边界、changelist 模型映射。
- [03 · VS Code 扩展工程蓝图](./research/03-extension-blueprint.md) — 技术栈决策、工程骨架、IDEA→VS Code UI 表面映射表。
- [04 · 发布策略 + CI/CD](./research/04-publishing-cicd.md) — 双市场(Marketplace + OpenVSX)、CI 矩阵、版本治理、安全。
- [05 · AI Agent 架构预留](./research/05-ai-agent-seams.md) — AI 接缝(ILlmProvider 等)+ IDEA CheckinHandler 对齐 + 渐进式引入路线。

## 协作与规范
- [AGENTS.md](../AGENTS.md) — 协作协议与工程行为准则。
- [知识索引](../.agents/knowledge-map.md) · [Issue 记录](../.agents/issue.md) · [引用规范 IEEE](../.agents/reference-specifications.md)。
Loading
Loading