- 从服务器拉取完整代码 - 按框架规范整理项目结构 - 配置 Drone CI 测试环境部署 - 包含后端(FastAPI)、前端(Vue3)、管理端 技术栈: Vue3 + TypeScript + FastAPI + MySQL
105 lines
4.5 KiB
Markdown
105 lines
4.5 KiB
Markdown
# 子Agent开发完成后的本地集成Todos清单
|
||
|
||
## 使用说明
|
||
|
||
完成子agent后端开发并手动Apply Changes Locally后,将此清单直接粘贴给子agent执行。
|
||
**重点:前端已开发完成,需要验证后端API与前端页面的完整对接。**
|
||
|
||
集成经验(必读):/Users/nongjun/Desktop/Ai公司/本地开发与测试/考培练系统规划/后端开发拆分策略/子agent/00-通用基础/integration_experience.md
|
||
|
||
---
|
||
|
||
## 📋 集成Todos清单
|
||
|
||
### 🔧 配置检查与修复
|
||
|
||
- [ ] 检查并创建.env文件(如不存在则从.env.example复制)
|
||
- [ ] 确认数据库配置:`DATABASE_URL=mysql+aiomysql://root:root@localhost:3306/kaopeilian?charset=utf8mb4`
|
||
- [ ] 安装/更新Python依赖:`pip install -r requirements/dev.txt`
|
||
- [ ] 检查是否有新模型文件在 `app/models/`目录
|
||
|
||
### 🗄️ 数据库迁移(注意:数据库已按设计对齐,无需重复初始化与插入内置测试数据)
|
||
|
||
- [ ] 如有新模型,生成迁移:`alembic revision --autogenerate -m "add new models"`
|
||
- [ ] 查看迁移文件:`ls migrations/versions/`
|
||
- [ ] 应用迁移:`alembic upgrade head`
|
||
- [ ] 校验视图存在:`SELECT * FROM v_user_course_progress LIMIT 1;`
|
||
|
||
> 说明:
|
||
> - 已存在并对齐的基础表(users/teams/user_teams/courses/.../training_*)不应被重复创建或清空。
|
||
> - 如需新增表或字段,请仅通过 Alembic 迁移进行增量更新。
|
||
|
||
### 🚀 服务启动
|
||
|
||
- [ ] 在 `kaopeilian-backend/`目录执行以下命令
|
||
- [ ] 启动MySQL和Redis:`docker-compose -f docker-compose.dev.yml up -d mysql redis`
|
||
- [ ] 验证服务状态:`docker-compose -f docker-compose.dev.yml ps`
|
||
- [ ] 启动后端服务:`uvicorn app.main:app --reload --host 0.0.0.0 --port 8000`
|
||
- [ ] 可选:使用Makefile快捷命令:`make migrate`、`make run`
|
||
|
||
### ✅ 后端API验证
|
||
|
||
- [ ] 健康检查:`curl http://localhost:8000/health`
|
||
- [ ] 访问API文档:`http://localhost:8000/docs`
|
||
- [ ] 测试新开发的API端点(依据OpenAPI文档与 `app/contracts`中的模块契约)
|
||
- [ ] 验证API响应格式:确保返回的JSON结构符合前端预期
|
||
- [ ] 测试认证授权:确认JWT token验证正常工作
|
||
- [ ] 测试错误处理:验证4xx/5xx错误返回格式正确
|
||
|
||
### 🌐 前后端对接验证(重要:前端已开发完成)
|
||
|
||
- [ ] 确认CORS配置:检查 `app/config/settings.py`中的 `CORS_ORIGINS`包含 `http://localhost:3001`
|
||
- [ ] 启动前端服务:`cd ../kaopeilian-frontend && npm run dev`
|
||
- [ ] 访问前端页面:`http://localhost:3001`
|
||
- [ ] 确认前端 `src/api/config.ts`的 `baseURL`为 `http://localhost:8000`
|
||
- [ ] 验证API接口对接:在前端页面测试新开发的后端功能
|
||
- [ ] 检查浏览器网络面板:确认API请求/响应格式正确
|
||
- [ ] 检查浏览器控制台:无CORS错误、无JS错误
|
||
- [ ] 测试前端页面功能:登录、数据加载、操作反馈等
|
||
- [ ] 验证数据流:前端操作→后端API→数据库→返回前端显示
|
||
|
||
### 🧪 测试验证
|
||
|
||
- [ ] 运行单元测试:`pytest tests/ -v`
|
||
- [ ] 检查测试覆盖率:`pytest --cov=app --cov-report=html tests/`
|
||
- [ ] 代码格式化:`black app/ tests/`
|
||
- [ ] 代码质量检查:`flake8 app/ tests/`
|
||
|
||
### 📝 文档更新
|
||
|
||
- [ ] 检查是否需要更新 `README.md`
|
||
- [ ] 检查是否需要更新 `数据库架构.md`
|
||
- [ ] 如有架构调整、配置变更、运行逻辑变更,必须更新相关文档
|
||
|
||
### 💾 代码提交
|
||
|
||
- [ ] 查看变更:`git status && git diff`
|
||
- [ ] 添加变更:`git add .`
|
||
- [ ] 提交变更:`git commit -m "feat(module): 描述变更内容"`
|
||
- [ ] 推送代码:`git push origin main`
|
||
|
||
### ⚠️ 问题排查(如遇到问题时执行)
|
||
|
||
- [ ] 数据库连接失败:检查 `docker-compose -f docker-compose.dev.yml logs mysql`
|
||
- [ ] CORS错误:检查 `app/config/settings.py`中的 `CORS_ORIGINS`
|
||
- [ ] 前端API调用失败:检查浏览器网络面板,确认请求URL和方法正确
|
||
- [ ] 前端页面显示异常:检查API返回的数据格式是否符合前端预期
|
||
- [ ] 认证问题:确认JWT token格式和过期时间设置正确
|
||
- [ ] 依赖冲突:删除venv重新创建虚拟环境
|
||
- [ ] 端口占用:`lsof -i :8000` 查看端口占用情况
|
||
|
||
---
|
||
|
||
## 🎯 最终验收标准
|
||
|
||
- [ ] 所有新增API端点正常响应
|
||
- [ ] 数据库迁移成功应用(无重复初始化)
|
||
- [ ] 单元测试通过率≥80%
|
||
- [ ] 前后端对接完全正常
|
||
- [ ] 文档已更新(如有架构/配置变更)
|
||
- [ ] 代码已提交到版本控制
|
||
|
||
---
|
||
|
||
**注意:此清单适用于考培练系统(Python+Vue3+MySQL+FastAPI)的本地开发测试环境**
|