--- author: peanu created_at: 2026-06-27 purpose: 将 backend-single 目录重命名为 server 的设计方案 --- # 设计:backend-single 重命名为 server ## 背景 项目中的后端服务目录当前名为 `backend-single`,该名称是早期"单体服务"阶段的遗留命名。随着项目演进,这个名称已不再准确反映实际情况,且在日常开发中较长不便。将其重命名为更简洁的 `server` 可提升可读性和一致性。 ## 决策 - **目录重命名**:`backend-single/` → `server/`,使用 `git mv` 保留 Git 历史 - **Maven artifactId**:`backend-single` → `server`,JAR 文件随之变为 `server-1.0.0.jar` - **历史文档**:`docs/superpowers/` 下的历史设计和计划文档也全部更新,保持一致性 ## 变更范围 ### 第一层:目录和构建 | 操作 | 目标 | |------|------| | `git mv backend-single server` | 目录重命名 | | `server/pom.xml` artifactId | `backend-single` → `server` | | `server/pom.xml` name | `backend-single` → `server` | | `server/deploy.py` JAR_NAME | `backend-single-1.0.0.jar` → `server-1.0.0.jar` | | `server/deploy.sh` JAR_NAME | 同上 | ### 第二层:部署脚本 | 文件 | 变更内容 | |------|---------| | 根目录 `deploy.py` | 3 处 `backend-single` → `server`(注释、路径拼接、cwd) | | 根目录 `deploy.sh` | 4 处 `backend-single` → `server`(注释、存在性检查、cd) | | `.gitignore` | `backend-single/backend.err` → `server/backend.err` | ### 第三层:项目文档 | 文件 | 说明 | |------|------| | `CLAUDE.md` | 项目结构树(1 处)+ 后端命令段落(3 处) | | `AGENTS.md` | 同 CLAUDE.md 的结构和命令段落 | | `README.md` | 项目结构树(1 处) | | `server/部署说明.md` | 自引用路径 | | `快速部署参考.md` | 4 处部署路径引用 | | `一键部署说明.md` | 5 处部署路径引用 | ### 第四层:前端和其他代码 | 文件 | 说明 | |------|------| | `web/src/types/auth.ts` | 第 5 行注释引用 | | `web-admin/AI_CONFIG_TEST_SAVE_FEATURE.md` | 4 处后端文件路径引用 | ### 第五层:历史文档批量替换 约 20 个 `docs/superpowers/specs/` 和 `docs/superpowers/plans/` 下的 `.md` 文件,将其中所有 `backend-single` 替换为 `server`。 ## 不在范围内 - **Java 包名**:`com.emotion` 保持不变,不在本次重命名范围内 - **数据库名/表名**:不涉及数据库变更 - **`dev-services.py`**:该脚本自动发现 Spring Boot 服务,不直接引用 `backend-single` 字符串,无需修改 - **`deploy-server.sh`**:已存在的文件,不包含 `backend-single` 引用 ## 验证标准 1. `mvn clean install -DskipTests` 在 `server/` 目录下编译成功 2. `server/deploy.py backend` 能正确找到 JAR 并部署 3. 根目录 `deploy.py` 能正确调用 `server/deploy.py` 4. 项目中不再有任何 `backend-single` 字符串残留(grep 验证) 5. Git 历史完整保留(`git log --follow server/pom.xml` 能看到旧历史)