mirror of
https://github.com/handsomezhuzhu/QQuiz.git
synced 2026-04-18 22:42:53 +00:00
87 lines
2.4 KiB
Markdown
87 lines
2.4 KiB
Markdown
# QQuiz Execution Plan
|
||
|
||
更新时间:2026-04-17
|
||
|
||
## 目标
|
||
|
||
把当前项目推进到可以持续开发和稳定验收的状态,重点落实:
|
||
|
||
1. 默认 SQLite,兼容 MySQL
|
||
2. 前端界面简洁、可直接操作、少说明文字
|
||
3. 用户管理达到可上市产品的基础要求
|
||
4. push 后 GitHub 自动构建镜像
|
||
5. 逐步完成旧 Vite 前端到新 Next 前端的替换
|
||
|
||
## 已完成的代码级工作
|
||
|
||
- 默认 Docker 拓扑已切到 SQLite
|
||
- MySQL 兼容拓扑已拆到 `docker-compose.mysql.yml`
|
||
- 新前端容器已接入并替换 Docker 默认前端
|
||
- 管理员用户管理已经接入真实接口
|
||
- 管理员设置页已经接入真实配置接口
|
||
- 侧边栏选中态 bug 已修复
|
||
- 新前端色彩已收敛为更简洁的产品风格
|
||
|
||
## 当前代码扫描后的主要问题
|
||
|
||
### 后端
|
||
|
||
1. 数据库迁移体系仍然不完整
|
||
2. `LLMService` 仍存在启动期副作用
|
||
3. 文档解析任务仍依赖进程内后台任务
|
||
4. 题库导入并发与去重约束还没彻底补完
|
||
5. 管理模块还缺用户状态、审计、批量能力
|
||
|
||
### 前端
|
||
|
||
1. Exam detail / Question / Mistake / Quiz 仍是占位或半占位页面
|
||
2. 部分页面仍有旧迁移骨架内容,需要继续清理
|
||
3. 确认类交互还没统一替换为更正式的对话框方案
|
||
4. 视觉层还需要统一列表、表单、状态、分页组件
|
||
|
||
### 部署与文档
|
||
|
||
1. Compose 仍缺 dev/prod 分离
|
||
2. 文档体系仍需把运行方式统一到 SQLite 默认 + MySQL 兼容
|
||
3. CI 只有主干镜像构建,还缺 PR 验证与 smoke test
|
||
|
||
## 后续执行顺序
|
||
|
||
### 第一阶段:后端稳定性
|
||
|
||
1. Alembic 基线迁移
|
||
2. 去掉 `create_all` 正式职责
|
||
3. 去掉 LLM import side effect
|
||
4. 统一事务边界
|
||
5. 补用户状态字段与审计日志模型
|
||
|
||
### 第二阶段:前端业务页
|
||
|
||
1. 接通 `exams/[examId]`
|
||
2. 接通 `questions`
|
||
3. 接通 `mistakes`
|
||
4. 接通 `quiz/[examId]`
|
||
5. 接通 `mistake-quiz`
|
||
|
||
### 第三阶段:用户管理产品化
|
||
|
||
1. 用户状态管理
|
||
2. 审计日志
|
||
3. 批量操作
|
||
4. 更完整的密码与安全策略
|
||
|
||
### 第四阶段:工程化
|
||
|
||
1. Compose dev/prod 分离
|
||
2. PR workflow
|
||
3. SQLite/MySQL 双栈 smoke
|
||
4. 文档统一
|
||
|
||
## 前端视觉要求
|
||
|
||
1. 主色:深蓝,作为动作与选中态
|
||
2. 背景:浅灰蓝,不用大面积高饱和装饰
|
||
3. 卡片:白底、细边框、轻阴影
|
||
4. 状态色:成功绿、警告橙、错误红
|
||
5. 页面信息结构:标题、数据、动作优先,减少解释文字
|