feat(aia): Complete AIA V2.0 with universal streaming capabilities

Major Changes:
- Add StreamingService with OpenAI Compatible format
- Upgrade Chat component V2 with Ant Design X integration
- Implement AIA module with 12 intelligent agents
- Update API routes to unified /api/v1 prefix
- Update system documentation

Backend (~1300 lines):
- common/streaming: OpenAI Compatible adapter
- modules/aia: 12 agents, conversation service, streaming integration
- Update route versions (RVW, PKB to v1)

Frontend (~3500 lines):
- modules/aia: AgentHub + ChatWorkspace (100% prototype restoration)
- shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook
- Update API endpoints to v1

Documentation:
- AIA module status guide
- Universal capabilities catalog
- System overview updates
- All module documentation sync

Tested: Stream response verified, authentication working
Status: AIA V2.0 core completed (85%)
This commit is contained in:
2026-01-14 19:15:01 +08:00
parent 3d35e9c58b
commit 1b53ab9d52
386 changed files with 52096 additions and 65238 deletions

View File

@@ -1,42 +1,42 @@
# 鍚庣<E98D9A>爜鍒嗗眰 - 璇︾粏杩佺Щ璁″垝
> **文档版本:** v1.0
> **创建日期:** 2025-11-13
> **任务编号:** 任务19Week 2 Day 8-9
> **目标:** 将现有扁平化后端代码重组为 platform/common/modules 三层架构
> **鏂囨。鐗堟湰锛?* v1.0
> **鍒涘缓鏃ユ湡锛?* 2025-11-13
> **浠诲姟缂栧彿锛?* 浠诲姟19锛圵eek 2 Day 8-9锛?
> **<EFBFBD>爣锛?* 灏嗙幇鏈夋墎骞冲寲鍚庣<E98D9A>爜閲嶇粍涓?platform/common/modules 涓夊眰鏋舵瀯
---
## 馃搵 鎬讳綋鐩<E7B68B>
### 璁捐<E79281>鍘熷垯
1. **稳妥第一** - 一步一步迁移,每步验证
2. **只做重组** - 不增加新功能,不修改业务逻辑
3. **保持兼容** - API路径不变,功能不变
4. **可回退** - Git commit记录每一步,可随时回退
1. 鉁?**绋冲Ε<CE95>** - 涓€姝ヤ竴姝ヨ縼绉伙紝姣忔<EFBFBD>楠岃瘉
2. 鉁?**鍙<>仛閲嶇粍** - 涓嶅<EFBFBD>鍔犳柊鍔熻兘锛屼笉淇<EFBFBD>敼涓氬姟閫昏緫
3. 鉁?**淇濇寔鍏煎<E98D8F>** - API<EFBFBD>緞涓嶅彉锛屽姛鑳戒笉鍙?
4. 鉁?**鍙<>洖閫€** - Git commit璁板綍姣忎竴姝ワ紝鍙<EFBFBD>殢鏃跺洖閫€
### 鐩<>爣鏋舵瀯
```
backend/src/
├── platform/ # 🏛️ 平台层(本次只创建目录,暂不实现)
│ ├── auth/
│ └── users/
├── common/ # 🔧 通用能力层
│ ├── llm/ # LLM适配器和Gateway
│ ├── document/ # 文档处理客户端
│ ├── rag/ # RAG/Dify客户端
│ ├── middleware/ # 中间件
│ ├── utils/ # 工具函数
│ └── types/ # 通用类型
├── modules/ # 📦 业务模块层
│ ├── aia/ # AI智能问答模块
│ ├── pkb/ # 个人知识库模块
│ └── rvw/ # 稿件审查模块
鈹溾攢鈹€ platform/ # 馃彌锔?骞冲彴灞傦紙鏈<E7B499><E98F88><EFBFBD>垱寤虹洰褰曪紝鏆備笉瀹炵幇锛?
鈹? 鈹溾攢鈹€ auth/
鈹? 鈹斺攢鈹€ users/
鈹?
鈹溾攢鈹€ common/ # 馃敡 閫氱敤鑳藉姏灞?
鈹? 鈹溾攢鈹€ llm/ # LLM閫傞厤鍣ㄥ拰Gateway
鈹? 鈹溾攢鈹€ document/ # 鏂囨。澶勭悊瀹㈡埛绔?
鈹? 鈹溾攢鈹€ rag/ # RAG/Dify瀹㈡埛绔?
鈹? 鈹溾攢鈹€ middleware/ # <EFBFBD>棿浠?
鈹? 鈹溾攢鈹€ utils/ # 宸ュ叿鍑芥暟
鈹? 鈹斺攢鈹€ types/ # 閫氱敤绫诲瀷
鈹?
鈹溾攢鈹€ modules/ # 馃摝 涓氬姟妯″潡灞?
鈹? 鈹溾攢鈹€ aia/ # AI鏅鸿兘闂<EFBFBD>瓟妯″潡
鈹? 鈹溾攢鈹€ pkb/ # <EFBFBD>汉鐭ヨ瘑搴撴ā鍧?
鈹? 鈹斺攢鈹€ rvw/ # 绋夸欢瀹℃煡妯″潡
鈹?
鈹溾攢鈹€ config/ # 閰嶇疆锛堜繚鐣欙級
└── index.ts # 主入口(重写)
鈹斺攢鈹€ index.ts # 涓诲叆鍙o紙閲嶅啓锛?
```
---
@@ -44,113 +44,113 @@ backend/src/
## 馃搳 鐜版湁浠g爜娓呭崟
### 1. adapters/ - LLM閫傞厤鍣<E58EA4>紙4涓<34>枃浠讹級
- `DeepSeekAdapter.ts` - DeepSeek-V3适配器
- `QwenAdapter.ts` - Qwen3/Qwen-Long适配器
- `LLMFactory.ts` - LLM工厂类
- `types.ts` - 适配器接口定义
- 鉁?`DeepSeekAdapter.ts` - DeepSeek-V3閫傞厤鍣?
- 鉁?`QwenAdapter.ts` - Qwen3/Qwen-Long閫傞厤鍣?
- 鉁?`LLMFactory.ts` - LLM宸ュ巶绫?
- 鉁?`types.ts` - 閫傞厤鍣ㄦ帴鍙e畾涔?
### 2. clients/ - 澶栭儴鏈嶅姟瀹㈡埛绔<E59F9B>紙3涓<33>枃浠讹級
- `DifyClient.ts` - Dify RAG客户端
- `ExtractionClient.ts` - Python文档提取服务客户端
- `types.ts` - 客户端类型定义
- 鉁?`DifyClient.ts` - Dify RAG瀹㈡埛绔?
- 鉁?`ExtractionClient.ts` - Python鏂囨。鎻愬彇鏈嶅姟瀹㈡埛绔?
- 鉁?`types.ts` - 瀹㈡埛绔<EFBFBD>被鍨嬪畾涔?
### 3. controllers/ - 鎺у埗鍣<E59F97>紙8涓<38>枃浠讹級
- `projectController.ts` - 项目管理
- `agentController.ts` - 智能体管理
- `conversationController.ts` - 对话管理
- `chatController.ts` - 通用对话
- `knowledgeBaseController.ts` - 知识库管理
- `documentController.ts` - 文档管理
- `batchController.ts` - 批处理
- `reviewController.ts` - 稿件审查
- 鉁?`projectController.ts` - 椤圭洰绠$悊
- 鉁?`agentController.ts` - 鏅鸿兘浣撶<EFBFBD>鐞?
- 鉁?`conversationController.ts` - 瀵硅瘽绠$悊
- 鉁?`chatController.ts` - 閫氱敤瀵硅瘽
- 鉁?`knowledgeBaseController.ts` - 鐭ヨ瘑搴撶<EFBFBD>鐞?
- 鉁?`documentController.ts` - 鏂囨。绠$悊
- 鉁?`batchController.ts` - 鎵瑰<EFBFBD>鐞?
- 鉁?`reviewController.ts` - 绋夸欢瀹℃煡
### 4. services/ - 服务8个文件
- `projectService.ts` - 项目服务
- `agentService.ts` - 智能体服务
- `conversationService.ts` - 对话服务
- `knowledgeBaseService.ts` - 知识库服务
- `documentService.ts` - 文档服务
- `batchService.ts` - 批处理服务
- `tokenService.ts` - Token计数服务
- `reviewService.ts` - 审查服务
### 4. services/ - 鏈嶅姟锛?涓<>枃浠讹級
- 鉁?`projectService.ts` - 椤圭洰鏈嶅姟
- 鉁?`agentService.ts` - 鏅鸿兘浣撴湇鍔?
- 鉁?`conversationService.ts` - 瀵硅瘽鏈嶅姟
- 鉁?`knowledgeBaseService.ts` - 鐭ヨ瘑搴撴湇鍔?
- 鉁?`documentService.ts` - 鏂囨。鏈嶅姟
- 鉁?`batchService.ts` - 鎵瑰<EFBFBD>鐞嗘湇鍔?
- 鉁?`tokenService.ts` - Token璁℃暟鏈嶅姟
- 鉁?`reviewService.ts` - 瀹℃煡鏈嶅姟
### 5. routes/ - 路由7个文件
- `projects.ts` - 项目路由
- `agents.ts` - 智能体路由
- `conversations.ts` - 对话路由
- `chatRoutes.ts` - 通用对话路由
- `knowledgeBases.ts` - 知识库路由
- `batchRoutes.ts` - 批处理路由
- `reviewRoutes.ts` - 审查路由
### 5. routes/ - <EFBFBD>敱锛?涓<>枃浠讹級
- 鉁?`projects.ts` - 椤圭洰璺<EFBFBD>
- 鉁?`agents.ts` - 鏅鸿兘浣撹矾鐢?
- 鉁?`conversations.ts` - 瀵硅瘽璺<EFBFBD>
- 鉁?`chatRoutes.ts` - 閫氱敤瀵硅瘽璺<EFBFBD>
- 鉁?`knowledgeBases.ts` - 鐭ヨ瘑搴撹矾鐢?
- 鉁?`batchRoutes.ts` - 鎵瑰<EFBFBD>鐞嗚矾鐢?
- 鉁?`reviewRoutes.ts` - 瀹℃煡璺<EFBFBD>
### 6. middleware/ - 涓<>棿浠讹紙1涓<31>枃浠讹級
- `validateProject.ts` - 项目验证中间件
- 鉁?`validateProject.ts` - 椤圭洰楠岃瘉涓<EFBFBD>棿浠?
### 7. utils/ - 工具函数1个文件
- `jsonParser.ts` - JSON解析工具
### 7. utils/ - 宸ュ叿鍑芥暟锛?涓<>枃浠讹級
- 鉁?`jsonParser.ts` - JSON瑙f瀽宸ュ叿
### 8. templates/ - 模板1个文件
- `clinicalResearch.ts` - 临床研究模板
### 8. templates/ - 妯℃澘锛?涓<>枃浠讹級
- 鉁?`clinicalResearch.ts` - 涓村簥鐮旂┒妯℃澘
### 9. config/ - 配置2个文件
- `database.ts` - 数据库配置
- `env.ts` - 环境变量配置
### 9. config/ - 閰嶇疆锛?涓<>枃浠讹級
- 鉁?`database.ts` - 鏁版嵁搴撻厤缃?
- 鉁?`env.ts` - <EFBFBD><EFBFBD>鍙橀噺閰嶇疆
### 10. types/ - 类型(空目录)
### 10. types/ - 绫诲瀷锛堢┖鐩<EFBFBD>綍锛?
### 11. scripts/ - 脚本2个文件
- `create-mock-user.ts` - 创建模拟用户
- `test-dify-client.ts` - 测试Dify客户端
### 11. scripts/ - 鑴氭湰锛?涓<>枃浠讹級
- 鉁?`create-mock-user.ts` - 鍒涘缓妯℃嫙鐢ㄦ埛
- 鉁?`test-dify-client.ts` - 娴嬭瘯Dify瀹㈡埛绔?
---
## 🗺️ 详细迁移映射表
## 馃椇锔?璇︾粏杩佺Щ鏄犲皠琛?
### 阶段1迁移 common/ 通用能力层
### 闃舵<EFBFBD>1锛氳縼绉?common/ 閫氱敤鑳藉姏灞?
#### 1.1 common/llm/ - LLM适配器
| 原路径 | 新路径 | 说明 |
#### 1.1 common/llm/ - LLM閫傞厤鍣?
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/adapters/types.ts` | `src/common/llm/adapters/types.ts` | 适配器接口 |
| `src/adapters/DeepSeekAdapter.ts` | `src/common/llm/adapters/DeepSeekAdapter.ts` | DeepSeek适配器 |
| `src/adapters/QwenAdapter.ts` | `src/common/llm/adapters/QwenAdapter.ts` | Qwen适配器 |
| `src/adapters/types.ts` | `src/common/llm/adapters/types.ts` | 閫傞厤鍣ㄦ帴鍙?|
| `src/adapters/DeepSeekAdapter.ts` | `src/common/llm/adapters/DeepSeekAdapter.ts` | DeepSeek閫傞厤鍣?|
| `src/adapters/QwenAdapter.ts` | `src/common/llm/adapters/QwenAdapter.ts` | Qwen閫傞厤鍣?|
| `src/adapters/LLMFactory.ts` | `src/common/llm/adapters/LLMFactory.ts` | LLM宸ュ巶 |
#### 1.2 common/document/ - 鏂囨。澶勭悊
| 原路径 | 新路径 | 说明 |
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/clients/ExtractionClient.ts` | `src/common/document/ExtractionClient.ts` | 文档提取客户端 |
| `src/clients/ExtractionClient.ts` | `src/common/document/ExtractionClient.ts` | 鏂囨。鎻愬彇瀹㈡埛绔?|
| `src/services/tokenService.ts` | `src/common/document/TokenService.ts` | Token璁℃暟鏈嶅姟 |
| `src/clients/types.ts` | `src/common/document/types.ts` | 鏂囨。鐩稿叧绫诲瀷 |
#### 1.3 common/rag/ - RAG寮曟搸
| 原路径 | 新路径 | 说明 |
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/clients/DifyClient.ts` | `src/common/rag/DifyClient.ts` | Dify客户端 |
| `src/clients/DifyClient.ts` | `src/common/rag/DifyClient.ts` | Dify瀹㈡埛绔?|
#### 1.4 common/middleware/ - 中间件
| 原路径 | 新路径 | 说明 |
#### 1.4 common/middleware/ - <EFBFBD>棿浠?
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/middleware/validateProject.ts` | `src/common/middleware/validateProject.ts` | 项目验证中间件 |
| `src/middleware/validateProject.ts` | `src/common/middleware/validateProject.ts` | 椤圭洰楠岃瘉涓<EFBFBD>棿浠?|
#### 1.5 common/utils/ - 宸ュ叿鍑芥暟
| 原路径 | 新路径 | 说明 |
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/utils/jsonParser.ts` | `src/common/utils/jsonParser.ts` | JSON瑙瀽宸ュ叿 |
#### 1.6 common/types/ - 閫氱敤绫诲瀷
| 原路径 | 新路径 | 说明 |
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/types/` | `src/common/types/` | (目前为空,预留) |
| `src/types/` | `src/common/types/` | 锛堢洰鍓嶄负绌猴紝棰勭暀锛?|
---
### 阶段2迁移 modules/ 业务模块层
### 闃舵<EFBFBD>2锛氳縼绉?modules/ 涓氬姟妯″潡灞?
#### 2.1 modules/aia/ - AI鏅鸿兘闂<E58598>瓟妯″潡
**Controllers:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/controllers/projectController.ts` | `src/modules/aia/controllers/projectController.ts` |
| `src/controllers/agentController.ts` | `src/modules/aia/controllers/agentController.ts` |
@@ -158,53 +158,53 @@ backend/src/
| `src/controllers/chatController.ts` | `src/modules/aia/controllers/chatController.ts` |
**Services:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/services/projectService.ts` | `src/modules/aia/services/projectService.ts` |
| `src/services/agentService.ts` | `src/modules/aia/services/agentService.ts` |
| `src/services/conversationService.ts` | `src/modules/aia/services/conversationService.ts` |
**Routes:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/routes/projects.ts` | `src/modules/aia/routes/projects.ts` |
| `src/routes/agents.ts` | `src/modules/aia/routes/agents.ts` |
| `src/routes/conversations.ts` | `src/modules/aia/routes/conversations.ts` |
| `src/routes/chatRoutes.ts` | `src/modules/aia/routes/chatRoutes.ts` |
**其他:**
| 原路径 | 新路径 | 说明 |
**鍏朵粬锛?*
| 鍘熻矾寰?| 鏂拌矾寰?| 璇存槑 |
|--------|--------|------|
| `src/templates/clinicalResearch.ts` | `src/modules/aia/templates/clinicalResearch.ts` | 批处理模板 |
| `src/templates/clinicalResearch.ts` | `src/modules/aia/templates/clinicalResearch.ts` | 鎵瑰<EFBFBD>鐞嗘ā鏉?|
**新增文件:**
**鏂板<EFBFBD>鏂囦欢锛?*
- `src/modules/aia/routes/index.ts` - 妯″潡璺<E6BDA1>敱缁熶竴瀵煎嚭
---
#### 2.2 modules/pkb/ - 个人知识库模块
#### 2.2 modules/pkb/ - <EFBFBD>汉鐭ヨ瘑搴撴ā鍧?
**Controllers:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/controllers/knowledgeBaseController.ts` | `src/modules/pkb/controllers/knowledgeBaseController.ts` |
| `src/controllers/documentController.ts` | `src/modules/pkb/controllers/documentController.ts` |
| `src/controllers/batchController.ts` | `src/modules/pkb/controllers/batchController.ts` |
**Services:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/services/knowledgeBaseService.ts` | `src/modules/pkb/services/knowledgeBaseService.ts` |
| `src/services/documentService.ts` | `src/modules/pkb/services/documentService.ts` |
| `src/services/batchService.ts` | `src/modules/pkb/services/batchService.ts` |
**Routes:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/routes/knowledgeBases.ts` | `src/modules/pkb/routes/knowledgeBases.ts` |
| `src/routes/batchRoutes.ts` | `src/modules/pkb/routes/batchRoutes.ts` |
**新增文件:**
**鏂板<EFBFBD>鏂囦欢锛?*
- `src/modules/pkb/routes/index.ts` - 妯″潡璺<E6BDA1>敱缁熶竴瀵煎嚭
---
@@ -212,39 +212,39 @@ backend/src/
#### 2.3 modules/rvw/ - 绋夸欢瀹℃煡妯″潡
**Controllers:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/controllers/reviewController.ts` | `src/modules/rvw/controllers/reviewController.ts` |
**Services:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/services/reviewService.ts` | `src/modules/rvw/services/reviewService.ts` |
**Routes:**
| 原路径 | 新路径 |
| 鍘熻矾寰?| 鏂拌矾寰?|
|--------|--------|
| `src/routes/reviewRoutes.ts` | `src/modules/rvw/routes/reviewRoutes.ts` |
**新增文件:**
**鏂板<EFBFBD>鏂囦欢锛?*
- `src/modules/rvw/routes/index.ts` - 妯″潡璺<E6BDA1>敱缁熶竴瀵煎嚭
---
### 阶段3创建 platform/ 平台层(仅骨架)
### 闃舵<EFBFBD>3锛氬垱寤?platform/ 骞冲彴灞傦紙浠呴<EFBFBD>鏋讹級
**目录结构:**
**<EFBFBD>綍缁撴瀯锛?*
```
src/platform/
鈹溾攢鈹€ auth/
│ └── README.md # 说明Week 3实现
鈹? 鈹斺攢鈹€ README.md # 璇存槑锛歐eek 3瀹炵幇
鈹斺攢鈹€ users/
鈹斺攢鈹€ README.md # 璇存槑锛歐eek 3瀹炵幇
```
---
### 阶段4保留原位置的文件
### 闃舵<EFBFBD>4锛氫繚鐣欏師浣嶇疆鐨勬枃浠?
| 璺<>緞 | 璇存槑 |
|------|------|
@@ -275,7 +275,7 @@ src/platform/
## 馃摑 瀵煎叆璺<E58F86>緞鏇存柊瑙勫垯
### 1. common层内部导入
### 1. common灞傚唴閮ㄥ<EFBFBD>鍏?
```typescript
// 鏃э細
import { LLMFactory } from '../adapters/LLMFactory.js'
@@ -284,7 +284,7 @@ import { LLMFactory } from '../adapters/LLMFactory.js'
import { LLMFactory } from '@common/llm/adapters/LLMFactory.js'
```
### 2. modules层导入common
### 2. modules灞傚<EFBFBD><EFBFBD>ommon灞?
```typescript
// 鏃э細
import { LLMFactory } from '../../adapters/LLMFactory.js'
@@ -300,7 +300,7 @@ import { projectService } from '../services/projectService.js'
// 鏂帮細
import { projectService } from '@modules/aia/services/projectService.js'
// 或者相对路径(如果在同一模块内):
// 鎴栬€呯浉瀵硅矾寰勶紙濡傛灉鍦ㄥ悓涓€妯″潡鍐咃級锛?
import { projectService } from '../services/projectService.js'
```
@@ -308,13 +308,13 @@ import { projectService } from '../services/projectService.js'
## 鈿狅笍 鍏抽敭娉ㄦ剰浜嬮」
### 1. 保持 .js 扩展名
- TypeScript ES模块需要保留 `.js` 扩展名
- ✅ 所有导入路径末尾必须加 `.js`
### 1. 淇濇寔 .js 鎵╁睍鍚?
- 鉁?TypeScript ES妯″潡闇€瑕佷繚鐣?`.js` 鎵╁睍鍚?
- 鉁?鎵€鏈夊<E98F88>鍏ヨ矾寰勬湯灏惧繀椤诲姞 `.js`
### 2. Prisma Client 瀵煎叆
```typescript
// 保持不变:
// 淇濇寔涓嶅彉锛?
import { prisma } from '@config/database.js'
```
@@ -327,7 +327,7 @@ import { PrismaClient } from '@prisma/client'
### 4. 绫诲瀷瀵煎叆
```typescript
// 使用 type 关键字导入类型
// 浣跨敤 type 鍏抽敭瀛楀<EFBFBD>鍏ョ被鍨?
import type { FastifyRequest, FastifyReply } from 'fastify'
```
@@ -335,125 +335,125 @@ import type { FastifyRequest, FastifyReply } from 'fastify'
## 馃殌 鎵ц<E98EB5>姝ラ<E5A79D>锛堝垎11涓<31>樁娈碉級
### ✅ 阶段1代码调研与规划已完成
### 鉁?闃舵<E99783>1锛氫唬鐮佽皟鐮斾笌瑙勫垝锛堝凡瀹屾垚锛?
- [x] 浜嗚В鐜版湁浠g爜缁撴瀯
- [x] 创建迁移映射表
- [x] 鍒涘缓杩佺Щ鏄犲皠琛?
- [x] 鍒跺畾璇︾粏璁″垝
### ⏳ 阶段2备份与安全
- [ ] Git status 检查工作区状态
### 鈴?闃舵<E99783>2锛氬<E9949B>浠戒笌瀹夊叏
- [ ] Git status 妫€鏌ュ伐浣滃尯鐘舵€?
- [ ] Git commit 褰撳墠浠g爜锛堜綔涓哄洖閫€鐐癸級
- [ ] 创建新分支 `feature/backend-layering`
- [ ] 鍒涘缓鏂板垎鏀?`feature/backend-layering`
### ⏳ 阶段3创建新目录结构
- [ ] 创建 `src/platform/`(空)
### 鈴?闃舵<E99783>3锛氬垱寤烘柊鐩<E69F8A>綍缁撴瀯
- [ ] 鍒涘缓 `src/platform/`锛堢┖锛?
- [ ] 鍒涘缓 `src/common/` 鍙婂瓙鐩<E79399>
- [ ] 鍒涘缓 `src/modules/` 鍙婂瓙鐩<E79399>
### ⏳ 阶段4配置TypeScript路径别名
### 鈴?闃舵<E99783>4锛氶厤缃甌ypeScript<EFBFBD>緞鍒<EFBFBD>
- [ ] 鏇存柊 `tsconfig.json`
- [ ] 娴嬭瘯缂栬瘧
### ⏳ 阶段5迁移common
### 鈴?闃舵<E99783>5锛氳縼绉籧ommon灞?
- [ ] 杩佺Щ `common/llm/`
- [ ] 杩佺Щ `common/document/`
- [ ] 杩佺Щ `common/rag/`
- [ ] 杩佺Щ `common/middleware/`
- [ ] 杩佺Щ `common/utils/`
- [ ] 更新所有导入路径
- [ ] 鏇存柊鎵€鏈夊<EFBFBD>鍏ヨ矾寰?
### ⏳ 阶段6迁移modules
### 鈴?闃舵<E99783>6锛氳縼绉籱odules灞?
- [ ] 杩佺Щ `modules/aia/`
- [ ] 杩佺Щ `modules/pkb/`
- [ ] 杩佺Щ `modules/rvw/`
- [ ] 鍒涘缓鍚勬ā鍧楃殑 `routes/index.ts`
- [ ] 更新所有导入路径
- [ ] 鏇存柊鎵€鏈夊<EFBFBD>鍏ヨ矾寰?
### ⏳ 阶段7创建platform层骨架
### 鈴?闃舵<E99783>7锛氬垱寤簆latform灞傞<EFBFBD>鏋?
- [ ] 鍒涘缓 `platform/auth/README.md`
- [ ] 鍒涘缓 `platform/users/README.md`
### ⏳ 阶段8更新主入口文件
### 鈴?闃舵<E99783>8锛氭洿鏂颁富鍏ュ彛鏂囦欢
- [ ] 閲嶅啓 `src/index.ts`
- [ ] 鏇存柊璺<E69F8A>敱娉ㄥ唽閫昏緫
### ⏳ 阶段9编译测试与验证
### 鈴?闃舵<E99783>9锛氱紪璇戞祴璇曚笌楠岃瘉
- [ ] 杩愯<E69DA9> `npm run build`
- [ ] 检查编译错误
- [ ] 妫€鏌ョ紪璇戦敊璇?
- [ ]<><E6B787>绫诲瀷閿欒<E996BF>
### ⏳ 阶段10功能测试API冒烟测试
### 鈴?闃舵<E99783>10锛氬姛鑳芥祴璇曪紙API鍐掔儫娴嬭瘯锛?
- [ ]<>姩鍚庣<E98D9A>鏈嶅姟 `npm run dev`
- [ ] 测试健康检查 `/health`
- [ ] 测试AIA模块API至少1个端点
- [ ] 测试PKB模块API至少1个端点
- [ ] 测试RVW模块API至少1个端点
- [ ] 娴嬭瘯鍋ュ悍妫€鏌?`/health`
- [ ] 娴嬭瘯AIA妯″潡API锛堣嚦灏?涓<><E6B693>鐐癸級
- [ ] 娴嬭瘯PKB妯″潡API锛堣嚦灏?涓<><E6B693>鐐癸級
- [ ] 娴嬭瘯RVW妯″潡API锛堣嚦灏?涓<><E6B693>鐐癸級
### ⏳ 阶段11文档更新与总结
### 鈴?闃舵<E99783>11锛氭枃妗洿鏂颁笌鎬荤粨
- [ ] 鏇存柊 `鍓嶅悗绔<E68297>ā鍧楀寲鏋舵瀯璁捐<E79281>-V2.md`
- [ ] 鍒涘缓 `鍚庣<E98D9A>爜鍒嗗眰瀹炴柦鎶ュ憡.md`
- [ ] 更新 `下一阶段行动计划-V2.2-完整版.md`
- [ ] Git commit 最终代码
- [ ] 鏇存柊 `涓嬩竴闃舵<E99783>琛屽姩璁″垝-V2.2-瀹屾暣鐗?md`
- [ ] Git commit 鏈€缁堜唬鐮?
- [ ] 鏍囪<E98F8D>浠诲姟19瀹屾垚
---
## 📊 风险评估与应对
## 馃搳 椋庨櫓璇勪及涓庡簲瀵?
### 风险1导入路径错误导致编译失败
**应对:**
- ✅ 每迁移一个文件,立即更新其导入路径
- ✅ 阶段性编译验证(每完成一层就编译一次)
### 椋庨櫓1锛氬<EFBFBD>鍏ヨ矾寰勯敊璇<EFBFBD><EFBFBD>鑷寸紪璇戝け璐?
**搴斿<EFBFBD>锛?*
- 鉁?姣忚縼绉讳竴涓<E7ABB4>枃浠讹紝绔嬪嵆鏇存柊鍏跺<E98D8F>鍏ヨ矾寰?
- 鉁?闃舵<E99783>х紪璇戦獙璇侊紙姣忓畬鎴愪竴灞傚氨缂栬瘧涓€娆★級
### 椋庨櫓2锛氳繍琛屾椂閿欒<E996BF>锛堣矾寰勮В鏋愰棶棰橈級
**应对:**
- ✅ 保留 `.js` 扩展名
- ✅ 配置 `tsconfig.json` `paths` 映射
- ✅ 启动测试验证
**搴斿<EFBFBD>锛?*
- 鉁?淇濈暀 `.js` 鎵╁睍鍚?
- 鉁?閰嶇疆 `tsconfig.json` 鐨?`paths` 鏄犲皠
- 鉁?鍚<>姩娴嬭瘯楠岃瘉
### 风险3循环依赖
**应对:**
- ✅ 遵循依赖方向modules common platform
- ✅ 不允许反向依赖
### 椋庨櫓3锛氬惊鐜<EFBFBD>緷璧?
**搴斿<EFBFBD>锛?*
- 鉁?閬靛惊渚濊禆鏂瑰悜锛歮odules 鈫?common 鈫?platform
- 鉁?涓嶅厑璁稿弽鍚戜緷璧?
### 风险4功能回归
**应对:**
- ✅ 保持业务逻辑完全不变
- API冒烟测试验证核心功能
- Git记录每步,可随时回退
### 椋庨櫓4锛氬姛鑳藉洖褰?
**搴斿<EFBFBD>锛?*
- 鉁?淇濇寔涓氬姟閫昏緫瀹屽叏涓嶅彉
- 鉁?API鍐掔儫娴嬭瘯楠岃瘉鏍稿績鍔熻兘
- 鉁?Git璁板綍姣忔<EFBFBD>锛屽彲闅忔椂鍥為€€
---
## 馃幆 鎴愬姛鏍囧噯
### 缂栬瘧鎴愬姛
- `npm run build` 无错误
- ✅ 无TypeScript类型错误
- ✅ 无ESLint错误
- 鉁?`npm run build` 鏃犻敊璇?
- 鉁?鏃燭ypeScript绫诲瀷閿欒<EFBFBD>
- 鉁?鏃燛SLint閿欒<EFBFBD>
### 杩愯<E69DA9>鎴愬姛
- `npm run dev` 正常启动
- ✅ 健康检查返回正常
- ✅ 数据库连接正常
- 鉁?`npm run dev` 父鍚<EFBFBD>
- 鉁?鍋ュ悍妫€鏌ヨ繑鍥炴<E98DA5>甯?
- 鉁?鏁版嵁搴撹繛鎺ユ<E98EBA>甯?
### 鍔熻兘姝e父
- AIA模块API正常响应
- PKB模块API正常响应
- RVW模块API正常响应
- ✅ 流式输出正常
- ✅ 文件上传正常
- 鉁?AIA妯″潡API姝父鍝嶅簲
- 鉁?PKB妯″潡API姝父鍝嶅簲
- 鉁?RVW妯″潡API姝父鍝嶅簲
- 鉁?娴佸紡杈撳嚭姝e父
- 鉁?鏂囦欢涓婁紶姝e父
### 鏋舵瀯娓呮櫚
- ✅ 三层架构目录清晰
- ✅ 模块边界明确
- ✅ 导入路径一致
- 鉁?涓夊眰鏋舵瀯鐩<E780AF>綍娓呮櫚
- 鉁?妯″潡杈圭晫鏄庣‘
- 鉁?瀵煎叆璺<E58F86>緞涓€鑷?
---
**鍒涘缓浜猴細** AI鍔╂墜
**审核人:** 待审核
**瀹℃牳浜猴細** 寰呭<EFBFBD>鏍?
**寮€濮嬫椂闂达細** 2025-11-13
**预计完成时间:** 1-2
**棰勮<EFBFBD>瀹屾垚鏃堕棿锛?* 1-2澶?