10 KiB
backend-single 重命名为 server 实施计划
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: 将 backend-single 目录重命名为 server,同步更新 Maven artifactId、部署脚本、配置文件、项目文档和历史文档中的所有引用。
Architecture: 分 10 个任务按依赖顺序执行。先移动目录(Task 1),再更新构建配置(Task 2-3),然后更新根级脚本(Task 4-5),接着更新文档(Task 6-8),最后批量替换历史文档(Task 9)并全面验证(Task 10)。
Tech Stack: Git, Maven, Python (deploy scripts), Bash, sed (batch replace)
Task 1: 目录重命名
Files:
-
Move:
backend-single/→server/ -
Step 1: 使用 git mv 重命名目录
cd /g/IdeaProjects/emotion-museun
git mv backend-single server
Expected: 目录从 backend-single/ 重命名为 server/,Git 历史完整保留。
- Step 2: 确认目录已移动
ls -d server/
ls server/pom.xml
Expected: 两个命令都成功,无报错。
- Step 3: 提交目录移动
git commit -m "refactor: 重命名 backend-single 目录为 server"
Task 2: 更新 Maven pom.xml
Files:
-
Modify:
server/pom.xml:8,12 -
Step 1: 修改 artifactId 和 name
在 server/pom.xml 中,将第 8 行和第 12 行的 backend-single 替换为 server:
<!-- 第 8 行 -->
<artifactId>server</artifactId>
<!-- 第 12 行 -->
<name>server</name>
- Step 2: 验证 pom.xml 修改
grep -n "backend-single" server/pom.xml
Expected: 无任何输出(无残留引用)。
- Step 3: 提交 pom.xml 修改
git add server/pom.xml
git commit -m "refactor: 更新 Maven artifactId 为 server"
Task 3: 更新后端部署脚本 JAR 名称
Files:
-
Modify:
server/deploy.py:22 -
Modify:
server/deploy.sh:10 -
Step 1: 修改 server/deploy.py 中的 JAR_NAME
将 server/deploy.py 第 22 行:
JAR_NAME = "backend-single-1.0.0.jar"
改为:
JAR_NAME = "server-1.0.0.jar"
- Step 2: 修改 server/deploy.sh 中的 JAR_NAME
将 server/deploy.sh 第 10 行:
JAR_NAME="backend-single-1.0.0.jar"
改为:
JAR_NAME="server-1.0.0.jar"
- Step 3: 验证后端部署脚本无残留
grep -n "backend-single" server/deploy.py server/deploy.sh
Expected: 无任何输出。
- Step 4: 提交后端部署脚本修改
git add server/deploy.py server/deploy.sh
git commit -m "refactor: 更新后端部署脚本 JAR 名称为 server-1.0.0.jar"
Task 4: 更新根目录部署脚本
Files:
-
Modify:
deploy.py:398,405,413 -
Modify:
deploy.sh:77,81,82,86 -
Step 1: 修改根目录 deploy.py
将 deploy.py 中 3 处 backend-single 替换为 server:
第 398 行注释:
# 后端 - 调用 server/deploy.sh remote
第 405 行路径拼接:
deploy_script = PROJECT_DIR / "server" / "deploy.py"
第 413 行 cwd:
cwd=str(PROJECT_DIR / "server"),
- Step 2: 修改根目录 deploy.sh
将 deploy.sh 中 4 处 backend-single 替换为 server:
第 77 行注释:
# 后端 - 调用 server/deploy.sh
第 81 行存在性检查:
if [ ! -f "server/deploy.sh" ]; then
第 82 行错误信息:
log_error "后端部署脚本不存在: server/deploy.sh"
第 86 行 cd 命令:
cd server
- Step 3: 验证根部署脚本无残留
grep -n "backend-single" deploy.py deploy.sh
Expected: 无任何输出。
- Step 4: 提交根部署脚本修改
git add deploy.py deploy.sh
git commit -m "refactor: 更新根部署脚本中的后端目录引用为 server"
Task 5: 更新 .gitignore
Files:
-
Modify:
.gitignore:386 -
Step 1: 修改 .gitignore
将 .gitignore 第 386 行:
backend-single/backend.err
改为:
server/backend.err
- Step 2: 验证并提交
grep -n "backend-single" .gitignore
git add .gitignore
git commit -m "refactor: 更新 .gitignore 中的后端日志路径"
Expected: grep 无输出,提交成功。
Task 6: 更新核心项目文档
Files:
-
Modify:
CLAUDE.md(4 处) -
Modify:
AGENTS.md(4 处) -
Modify:
README.md(1 处) -
Step 1: 修改 CLAUDE.md
将 CLAUDE.md 中所有 backend-single 替换为 server:
第 23 行项目结构树:
├── server/ # Spring Boot 单体后端服务
第 37 行标题:
### 后端 (server)
第 41 行命令:
cd server
第 50 行 JAR 名称:
java -jar target/server-1.0.0.jar
- Step 2: 修改 AGENTS.md
将 AGENTS.md 中所有 backend-single 替换为 server(与 CLAUDE.md 相同的 4 处位置和内容)。
- Step 3: 修改 README.md
将 README.md 第 73 行:
├── backend-single/ # SpringBoot单体后端服务
改为:
├── server/ # SpringBoot单体后端服务
- Step 4: 验证并提交
grep -n "backend-single" CLAUDE.md AGENTS.md README.md
git add CLAUDE.md AGENTS.md README.md
git commit -m "docs: 更新核心文档中的后端目录引用为 server"
Expected: grep 无输出,提交成功。
Task 7: 更新部署相关文档
Files:
-
Modify:
server/部署说明.md(1 处) -
Modify:
快速部署参考.md(4 处) -
Modify:
一键部署说明.md(5 处) -
Step 1: 修改 server/部署说明.md
将 server/部署说明.md 第 14 行:
# 在 backend-single 目录下执行
改为:
# 在 server 目录下执行
- Step 2: 修改 快速部署参考.md
将 快速部署参考.md 中所有 backend-single 替换为 server(4 处:第 71、83、134、136 行)。
- Step 3: 修改 一键部署说明.md
将 一键部署说明.md 中所有 backend-single 替换为 server(5 处:第 78、152、156、301、304 行)。注意第 156 行 backend-single-1.0.0.jar 变为 server-1.0.0.jar。
- Step 4: 验证并提交
grep -n "backend-single" "server/部署说明.md" "快速部署参考.md" "一键部署说明.md"
git add "server/部署说明.md" "快速部署参考.md" "一键部署说明.md"
git commit -m "docs: 更新部署文档中的后端目录引用为 server"
Expected: grep 无输出,提交成功。
Task 8: 更新前端代码和其他文档
Files:
-
Modify:
web/src/types/auth.ts:5 -
Modify:
web-admin/AI_CONFIG_TEST_SAVE_FEATURE.md:284-287 -
Step 1: 修改 web/src/types/auth.ts 注释
将第 5 行:
// 登录请求(对齐 backend-single:手机号 + 短信验证码)
改为:
// 登录请求(对齐 server:手机号 + 短信验证码)
- Step 2: 修改 web-admin/AI_CONFIG_TEST_SAVE_FEATURE.md
将文件中 4 处 backend-single/src/main/java/ 替换为 server/src/main/java/(第 284-287 行)。
- Step 3: 验证并提交
grep -rn "backend-single" web/ web-admin/
git add "web/src/types/auth.ts" "web-admin/AI_CONFIG_TEST_SAVE_FEATURE.md"
git commit -m "docs: 更新前端代码和文档中的后端目录引用为 server"
Expected: grep 无输出(在这两个目录中),提交成功。
Task 9: 批量替换历史文档
Files:
-
Modify:
docs/superpowers/下约 37 个.md文件(排除本次新建的设计文档) -
Step 1: 使用 sed 批量替换
在 Windows Git Bash 中执行:
cd /g/IdeaProjects/emotion-museun
find docs/superpowers -name "*.md" \
! -name "2026-06-27-backend-single-rename-to-server-design.md" \
-exec sed -i 's/backend-single/server/g' {} +
说明:
-
sed -i原地替换 -
! -name排除本次设计文档自身(避免修改自己的文件名引用) -
s/backend-single/server/g全局替换 -
Step 2: 验证 docs/superpowers/ 中无残留
grep -rn "backend-single" docs/superpowers/ \
--include="*.md" \
! --include="2026-06-27-backend-single-rename-to-server-design.md"
Expected: 无任何输出。
- Step 3: 提交历史文档更新
git add docs/superpowers/
git commit -m "docs: 批量更新历史文档中的 backend-single 引用为 server"
Task 10: 全面验证
Files: 无新增修改
- Step 1: 全项目 grep 验证无残留
grep -rn "backend-single" --include="*.md" --include="*.py" --include="*.sh" \
--include="*.xml" --include="*.ts" --include="*.java" --include="*.yml" \
--include="*.yaml" --include="*.json" --include="*.properties" .
Expected: 无任何输出。如果有残留,逐一修复。
注意:以下文件中出现 backend-single 是允许的(不需要修改):
-
docs/superpowers/specs/2026-06-27-backend-single-rename-to-server-design.md(本次设计文档自身) -
docs/superpowers/plans/2026-06-27-backend-single-rename-to-server.md(本次计划文档自身) -
Step 2: Maven 编译验证
cd /g/IdeaProjects/emotion-museun/server
mvn clean install -DskipTests
Expected: BUILD SUCCESS,生成 target/server-1.0.0.jar。
- Step 3: 验证 JAR 文件名称
ls -lh server/target/server-1.0.0.jar
Expected: 文件存在,名称正确。
- Step 4: 验证 Git 历史保留
git log --follow --oneline server/pom.xml | head -5
Expected: 能看到旧的重命名之前的提交历史。
- Step 5: 验证 .gitignore 生效
git status
Expected: 工作区干净(无意外未跟踪文件)。
- Step 6: 最终提交(如有修复)
如果 Step 1 中发现了残留并修复了,执行:
git add -A
git commit -m "fix: 修复遗漏的 backend-single 引用"