Files
happy-life-star/docs/superpowers/specs/2026-05-23-brand-rename-design.md
T
peanut 9838e7626b feat: 分析模块、接口管理及其他功能优化
- 后端: WebMvcConfig/拦截器/AnalyticsService/Mapper/测试优化,新增 Knife4jConfig、AnalyticsDictionary、数据库迁移脚本
- 前端: 分析仪表盘 UI 优化、接口管理列表及详情测试面板
- 小程序: analytics 服务优化、request 增强
- 文档: 分析模块中文标签设计文档、品牌重命名设计文档
- 部署: conf 配置优化、deploy.py 脚本更新

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 23:52:39 +08:00

6.9 KiB
Raw Blame History

author, created_at, purpose
author created_at purpose
Peanut 2026-05-23 全项目品牌重命名方案,从"情绪博物馆"到"开心星球"

情绪博物馆 → 开心星球 品牌重命名方案

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: 将项目中所有"情绪博物馆"相关文案(中文/英文/标识符)替换为"开心星球"对应名称,分层递进执行,保障数据安全和服务可用性。

Architecture: 分 4 步递进执行:文档层 → 用户可见层 → 配置层 → 底层标识。每步独立可验证,出问题可回退。

Tech Stack: grep/sed 批量替换、mysqldump 数据库迁移、git 版本控制、Spring Boot 配置切换


命名映射表

旧标识 新标识 使用场景
情绪博物馆 开心星球 中文文案(页面标题、提示语、文档)
Emotion Museum Happy Planet 英文标题
emotion-museum happy-planet kebab-case(路径、文件名、service 名、jar 名)
EmotionMuseum HappyPlanet PascalCase(类名前缀)
emotion_museum happy_planet snake_case(数据库名、SQL
com.emotion com.happyplanet Java 包名
emotion-museum.conf happy-planet.conf nginx 配置名
emotion happyplanet 包名前缀

保持不变的项

  • URL 路径(如 /emotion-museum-admin/)— 保持兼容
  • 目录名(web/web-admin/backend-single/)— 避免构建断裂
  • 数据库表名前缀(如 emotion_record → 保持)— 避免 Entity/Table 映射断裂

第 1 步:文档层(无风险)

影响范围:纯文档文件,不改任何代码或配置

文件列表(约 20 个):

  • CLAUDE.md
  • README.md
  • docs/superpowers/ 下所有 .md
  • 各模块下的 部署说明.md技术方案.md后端代码规范.md
  • backend-single/部署说明.mdbackend-single/后端项目结构.md

操作:批量 sed 替换中文 情绪博物馆开心星球,英文 Emotion MuseumHappy Planetemotion-museumhappy-planet

验证grep 确认无残留

第 2 步:用户可见层(低风险)

影响范围:用户实际看到的页面文案和提示信息

文件列表

  • web/src/ 下 Vue 组件中的中文标题
  • web-admin/src/ 下 Vue 组件中的中文标题(登录页、布局、各页面)
  • mini-program/src/ 下页面标题和提示文案
  • .env.development.env.production 中的 VITE_APP_TITLE
  • package.json 中的 name/description
  • 部署脚本中的部署完成提示

操作

  1. web/src/web-admin/src/ 中替换 情绪博物馆开心星球
  2. mini-program/src/ 中替换
  3. .env 文件中 VITE_APP_TITLE 改为 开心星球管理后台 / 开心星球

验证:启动前端开发服务器,浏览器验证各页面标题和文案

第 3 步:配置层(中等风险,需验证)

影响范围:配置文件、部署脚本、nginx、systemd service

3.1 应用配置

  • backend-single/src/main/resources/application.ymlspring.application.name
  • backend-single/src/main/resources/application-*.yml — 同上
  • 日志路径、应用描述等配置中的 emotion-museum

3.2 部署脚本

  • deploy.shdeploy.py
  • backend-single/deploy.pybackend-single/deploy.sh
  • web/deploy.shweb/deploy.py
  • web-admin/deploy.shweb-admin/deploy.py
  • 各脚本中的路径引用、日志路径、提示文案

3.3 nginx 配置

  • conf/emotion-museum.conf → 重命名为 happy-planet.conf
  • 内部路径 /emotion-museum-admin/ 保持不变(URL 兼容)
  • emotion-museum 路径引用在注释中的改为 happy-planet
  • jar 文件名、日志路径引用中的 emotion-museum

3.4 systemd Service

  • backend-single/asr-service/emotion-museum-asr.servicehappy-planet-asr.service
  • backend-single/tts-service/emotion-museum-tts.servicehappy-planet-tts.service
  • 内部路径和描述中的 emotion-museum

3.5 工具脚本

  • tools/service_manager.py
  • manage.py
  • manage.conf.yaml

数据库迁移

操作

  1. mysqldump -h ... -u ... -p emotion_museum > emotion_museum_backup.sql
  2. 创建新库:CREATE DATABASE happy_planet DEFAULT CHARACTER SET utf8mb4
  3. sed -i 's/emotion_museum/happy_planet/g' emotion_museum_backup.sql
  4. mysql -h ... -u ... -p happy_planet < emotion_museum_backup.sql
  5. 更新 application-prod.yml 中的 spring.datasource.urlhappy_planet
  6. 重启后端服务,验证功能
  7. 保留旧库 emotion_museum 备份,确认无误后删除

回退方案:改回 application-prod.yml 中的数据库名即可恢复

第 4 步:底层标识(高风险,最后执行)

4.1 Java 包名重命名

操作

  1. 移动目录:backend-single/src/main/java/com/emotion/backend-single/src/main/java/com/happyplanet/
  2. 更新 pom.xml 中的包名引用
  3. 用 sed 批量替换所有 .java 文件中 package com.emotionpackage com.happyplanet
  4. 用 sed 批量替换所有 .java 文件中 import com.emotionimport com.happyplanet
  5. 编译验证:mvn clean install -DskipTests
  6. 处理编译错误(可能有遗漏的引用)

测试目录

  • backend-single/src/test/java/com/emotion/ 同样需要迁移
  • .java 文件中的 packageimport 语句

4.2 SQL 文件

操作

  • sql/emotion_museum_init.sqlhappy_planet_init.sql
  • sql/emotion_museum_ddl.sqlhappy_planet_ddl.sql
  • sql/emotion_museum.sqlhappy_planet.sql
  • 文件内部 CREATE DATABASE emotion_museumhappy_planet
  • USE emotion_museumUSE happy_planet

4.3 其他底层引用

  • backend-single/create_api_tables.sql 中的数据库名
  • .gitignore 中的路径引用(如有)

验证

  1. mvn clean install -DskipTests 编译通过
  2. 启动后端服务,健康检查通过
  3. 前端页面可正常访问,API 调用正常

执行顺序与依赖

步骤 1 (文档) → 步骤 2 (用户可见) → 步骤 3 (配置) → 步骤 4 (底层标识)
                                          ↓
                                    数据库迁移 (3.6)
                                    验证通过后再继续 4

回退策略

  • 每个步骤完成后立即 git commit
  • 数据库迁移保留旧库
  • URL 路径全部不变,避免 404
  • 如有编译错误,git revert 最近 commit

风险点与应对

风险 应对
Java 包名迁移遗漏引用 分步编译,逐层修复
数据库迁移数据丢失 迁移前完整备份
nginx 配置断裂 保留旧配置备份,先 cp 再改
部署脚本路径断裂 先本地 grep 验证,再上传
Java 编译内存不足 临时增加 -Xmx2048m