chore: directory migration - gateway→server, web→client/electron

This commit is contained in:
2026-09-08 19:16:35 +08:00
parent fd9f99a3f9
commit f9d757b5e5
243 changed files with 5095 additions and 228 deletions

18
.gitignore vendored
View File

@ -1,31 +1,31 @@
# ---- 依赖与构建产物 ----
#
# 前端只在**构建期**用到 npm`npm run build` 出的 dist/ 被 cp 进
# gateway/internal/static/static/ 再由 go:embed 编进二进制。
# server/internal/static/static/ 再由 go:embed 编进二进制。
# 部署机上没有 node产物就是「一个二进制 + 一个 .db 文件」。
# 因此这三样都不进版本库:装依赖与构建都能从 package-lock.json 复现。
web/node_modules/
web/dist/
client/electron/node_modules/
client/electron/dist/
plugins/*/node_modules/
# dsh-mail-bridge 是 TypeScript 写的dist/ 是 tsc 的产物。
# 与 web/dist 同一个理由:装依赖与构建都能从 package-lock.json 复现,
# 与 client/electron/dist 同一个理由:装依赖与构建都能从 package-lock.json 复现,
# 产物不进版本库。注意它**必须在装插件前构建**package.json 的
# main 指向 dist/index.jsdeploy/install.sh 负责这一步。
plugins/*/dist/
# go:embed 的输入目录 = web/dist 的副本,同属构建产物。
# go:embed 的输入目录 = client/electron/dist 的副本,同属构建产物。
#
# 但目录本身要留下go:embed 要求它存在才能编译,否则新克隆连
# `go test ./...` 都跑不起来 —— 只改后端的人不该被迫先装 node。
# 因此忽略构建产物,只保留 placeholder.html见该文件内注释
# 之所以不叫 index.html是因为那正是 Vite 产物的名字,会被反复覆盖)。
gateway/internal/static/static/*
!gateway/internal/static/static/placeholder.html
server/internal/static/static/*
!server/internal/static/static/placeholder.html
# Go 构建产物
gateway/agentmail-gateway
gateway/gw
server/agentmail-gateway
server/gw
*.test
# ---- 运行态数据 ----