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,89 +1,89 @@
# 下一阶段行动计划 V2.0 - 模块化架构优先
# 銝衤<EFBFBD><EFBFBD>嗆挾銵<EFBFBD>𢆡霈<EFBFBD> V2.0 - 璅<E79285><E288AA>𡝗沲<F0A19D97><E6B2B2><EFBFBD><EFBFBD>?
> **计划周期:** 2025-11-07 2025-12-135周
> **核心目标:** 建立可独立部署的模块化架构 + 完成ASL核心功能
> **制定时间:** 2025-11-07
> **版本:** V2.0(架构优先版)
> **<EFBFBD><EFBFBD><EFBFBD>嚗?* 2025-11-07 <EFBFBD>?2025-12-13嚗?<3F><EFBFBD>
> **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?* 撱箇<E692B1><E7AE87>舐𡠺蝡钅<E89DA1>蝵脩<E89DB5><E79285><E288AA>𡝗沲<F0A19D97>?+ 摰峕<E691B0>ASL<53><EFBFBD><E8A9A8><EFBFBD>
> **<EFBFBD><EFBFBD><EFBFBD>園𡢿嚗?* 2025-11-07
> **<EFBFBD><EFBFBD>𧋦嚗?* V2.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
---
## <20><20>条裦靚<E8A3A6>㟲霂湔<E99C82>
### 为什么要调整?
### 銝箔<EFBFBD><EFBFBD><EFBFBD><EFBFBD>㟲嚗?
**<EFBFBD>蠘恣<EFBFBD>𡜐<EFBFBD>V1.0嚗㚁<EFBFBD>** 敹恍<E695B9>笔鍳<E7AC94>杗SL撘<4C><E69298>𡢅<EFBFBD><F0A1A285><EFBFBD><EFBFBD>Schema<6D>𠉛氖
**新计划V2.0** 先打好架构基础,再开发业务功能
**<EFBFBD>啗恣<EFBFBD>𡜐<EFBFBD>V2.0嚗㚁<EFBFBD>** <20><><EFBFBD>憟賣沲<E8B3A3><E6B2B2>抅蝖<E68A85><EFBFBD><E59A97><EFBFBD><E69298><EFBFBD><E79DB2><EFBFBD><E288AA>?
### <20><EFBFBD><E8A9A8><EFBFBD>
| 憿寧𤌍 | V1.0 | V2.0 | <20><EFBFBD> |
|------|------|------|------|
| Schema隔离 | ❌ 暂缓 | ✅ 必做 | 独立部署的前提 |
| 模块独立性 | 📋 计划中 | ⭐ 最高优先级 | 90%独立部署需求 |
| 开发重点 | ASL单模块 | ASL+DC+RVW三模块 | 统一架构标准 |
| 时间分配 | 1周基础+3周开发 | 2周基础+3周开发 | 架构投入增加 |
| Schema<EFBFBD>𠉛氖 | <20>?<3F><><EFBFBD> | <20>?敹<><E695B9> | <20><EFBFBD><E7A589>函蔡<E587BD><E894A1><EFBFBD><EFBFBD>?|
| <EFBFBD><EFBFBD><EFBFBD><EFBFBD>?| <20><><E99C88>銝?| 潃?<3F><>擃䀝<E69383><E4809D><EFBFBD>漣 | 90%<25><EFBFBD><E7A589>函蔡<E587BD><E894A1>瘙?|
| <EFBFBD><EFBFBD><EFBFBD><EFBFBD>?| ASL<53>閙芋<E99699>?| ASL+DC+RVW銝㗇芋<E39787>?| 蝏煺<E89D8F><E785BA><EFBFBD><E59786><EFBFBD><EFBFBD> |
| <EFBFBD>園𡢿<EFBFBD><EFBFBD><EFBFBD> | 1<>典抅蝖<E68A85>+3<><EFBFBD><E585B8>?| 2<>典抅蝖<E68A85>+3<><EFBFBD><E585B8>?| <20><EFBFBD><E59786><EFBFBD>憓𧼮<E68693> |
---
## 📊 整体规划 - 五周五阶段
## <EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD><E996AB> - 鈭𥪜𪂹鈭娪𧫴畾?
```
Week 1-2(架构基础) Week 3-4(核心功能) Week 5(测试优化)
Schema隔离+模块化架构 → ASL标题摘要初筛+全文复筛 → 多模块联调+测试
Week 1-2<EFBFBD><EFBFBD><EFBFBD>抅蝖<EFBFBD>嚗? Week 3-4<EFBFBD>瓲敹<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Week 5<EFBFBD><EFBFBD>霂蓥<EFBFBD><EFBFBD><EFBFBD>
Schema<EFBFBD>𠉛氖+璅<E79285><E288AA>𡝗沲<F0A19D97>? <20>? ASL<53><4C><EFBFBD><EFBFBD><EFBFBD><E48185><EFBFBD>+<2B><EFBFBD>憭滨<E686AD> <20>? 憭𡁏芋<F0A1818F>𡑒<EFBFBD>靚?瘚贝<E7989A>
```
| 阶段 | 时间 | 核心任务 | 交付成果 | 优先级 |
| <EFBFBD>嗆挾 | <20>園𡢿 | <20><EFBFBD>隞餃𦛚 | 鈭支<E988AD><E694AF><EFBFBD> | 隡睃<E99AA1>蝥?|
|------|------|---------|---------|--------|
| **阶段1** | Week 1 | Schema隔离方案 | 8个Schema设计+迁移计划 | P0 ⭐⭐⭐ |
| **阶段2** | Week 2 | 模块化架构实施 | 代码分层+独立部署能力 | P0 ⭐⭐⭐ |
| **阶段3** | Week 3 | ASL标题摘要初筛 | 双模型筛选功能 | P0 ⭐⭐ |
| **<EFBFBD>嗆挾1** | Week 1 | Schema<EFBFBD>𠉛氖<EFBFBD><EFBFBD> | 8銝杵chema霈曇恣+餈<>宏霈<E99C88> | P0 潃鐥<EFBFBD>潃?|
| **<EFBFBD>嗆挾2** | Week 2 | <EFBFBD><EFBFBD>𡝗沲<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?| 隞<><E99A9E><EFBFBD><EFBFBD><EFBFBD>+<2B><EFBFBD><E7A589>函蔡<E587BD><EFBFBD> | P0 潃鐥<EFBFBD>潃?|
| **<EFBFBD>嗆挾3** | Week 3 | ASL<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | <20>峕芋<E5B395><EFBFBD><E8AEA0><EFBFBD><E58CA7>?| P0 潃鐥<EFBFBD> |
| **<EFBFBD>嗆挾4** | Week 4 | ASL<53><EFBFBD>憭滨<E686AD> | PDF<44><EFBFBD><E586BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | P0 潃鐥<E6BD83> |
| **阶段5** | Week 5 | 多模块联调测试 | 三模块协同工作 | P1 |
| **<EFBFBD>嗆挾5** | Week 5 | 憭𡁏芋<EFBFBD>𡑒<EFBFBD><EFBFBD><EFBFBD>霂?| 銝㗇芋<E39787><EFBFBD><E5A092><EFBFBD>極雿?| P1 潃?|
---
## 🏗️ 核心架构设计
## <EFBFBD><EFBFBD>儭?<3F><EFBFBD><E8A9A8><EFBFBD>霈曇恣
### 銝匧之<E58CA7><EFBFBD><E79285>
```
┌─────────────────────────────────────────────────────────┐
云端统一平台
│ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ │ ASL │ │ DC │ │ RVW
│ │AI智能文献│ │ 数据清洗 │ │ 审稿系统 │
│ └──────────┘ └──────────┘ └──────────┘
│ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ │asl_schema│ │dc_schema │ │rvw_schema
│ └──────────┘ └──────────┘ └──────────┘
└─────────────────────────────────────────────────────────┘
每个模块都可以独立部署 90%
<EFBFBD>𢞖<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<EFBFBD>? 鈭𤑳垢蝏煺<EFBFBD>撟喳蝱 <EFBFBD>?
<EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>? ASL <EFBFBD>? <20>? DC <EFBFBD>? <20>? RVW <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20><>I<EFBFBD><EFBFBD><E7AE84><EFBFBD><EFBFBD>? <20>?<3F>唳旿皜<E697BF><E79A9C> <20>? <20>?摰∠阮蝟餌<E89D9F> <20>? <EFBFBD>?
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <EFBFBD>? <EFBFBD>? <EFBFBD>? <EFBFBD>?
<EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20>𢞖<EFBFBD><F0A29E96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD>? <20><>sl_schema<EFBFBD>? <20><>c_schema <EFBFBD>? <20><>vw_schema<EFBFBD>? <EFBFBD>?
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <20><EFBFBD><E5A999><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>? <EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
<EFBFBD>?
瘥譍葵璅<EFBFBD><EFBFBD>賢虾隞亦𡠺蝡钅<EFBFBD>蝵?90%
```
### 模块独立性设计原则
### <EFBFBD><EFBFBD><EFBFBD><EFBFBD>扯挽霈<EFBFBD><EFBFBD>?
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>90%嚗㚁<E59A97>**
- ✅ 独立的数据库Schema
- ✅ 独立的API路由/api/asl/*, /api/dc/*, /api/rvw/*
- ✅ 独立的前端页面
- ✅ 独立的部署包
- ✅ 独立的配置文件
- <EFBFBD>?<3F><EFBFBD><E7A589><EFBFBD><EFBFBD><EFBFBD>Schema
- <EFBFBD>?<3F><EFBFBD><E7A589><EFBFBD>PI頝舐眏嚗?api/asl/*, /api/dc/*, /api/rvw/*嚗?
- <EFBFBD>?<3F><EFBFBD><E7A589><EFBFBD><EFBFBD>蝡舫△<E888AB>?
- <EFBFBD>?<3F><EFBFBD><E7A589><EFBFBD><EFBFBD>蝵脣<E89DB5>
- <EFBFBD>?<3F><EFBFBD><E7A589><EFBFBD><EFBFBD>蝵格<E89DB5>隞?
**<EFBFBD>曹澈<EFBFBD><EFBFBD><EFBFBD>10%嚗㚁<E59A97>**
- 🔗 用户认证platform_schema.users
- <EFBFBD><EFBFBD> <20><EFBFBD>霈方<E99C88>嚗īlatform_schema.users嚗?
- <20><> LLM蝵穃<E89DB5>嚗Ếommon撅<6E><E69285>
- <20><> <20><EFBFBD>UI蝏<49>
- <20><> <20>函蔡<E587BD><EFBFBD>霈暹鴌
---
## 🚀 阶段1Schema隔离方案Week 1
## <EFBFBD><EFBFBD> <20>嗆挾1嚗锭chema<6D>𠉛氖<F0A0899B><EFBFBD>嚗Áeek 1嚗?
> **时间:** 2025-11-07 2025-11-137天
> **目标:** 完成8个Schema设计和数据库迁移
> **<EFBFBD>園𡢿嚗?* 2025-11-07 <EFBFBD>?2025-11-13嚗?憭抬<E686AD>
> **<EFBFBD><EFBFBD>嚗?* 摰峕<E691B0>8銝杵chema霈曇恣<E69B87>峕㺭<E5B395><EFBFBD><EFBFBD>
### <20><EFBFBD><E8A9A8><EFBFBD>
@@ -91,7 +91,7 @@ Schema隔离+模块化架构 → ASL标题摘要初筛+全文复筛 → 多
1. Schema<6D>𠉛氖<F0A0899B>舐𡠺蝡钅<E89DA1>蝵脩<E89DB5><E884A9>齿<EFBFBD><E9BDBF>∩辣
2. 敶勗<E695B6><E58B97>𡒊賒<F0A1928A><E8B392><EFBFBD>劐誨<E58A90><E8AAA8><EFBFBD><EFBFBD>唳旿霈輸䔮<E8BCB8><EFBFBD>
3. 頞𦠜𡟺<F0A6A09C>𡄯<EFBFBD><F0A184AF>𡒊賒<F0A1928A>孵𢆡<E5ADB5>鞉𧋦頞𠹺<E9A09E>
4. 为三大模块ASL、DC、RVW建立清晰边界
4. 銝箔<EFBFBD>憭扳芋<EFBFBD><EFBFBD>ASL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW嚗匧遣蝡𧢲<EFBFBD><EFBFBD>啗器<EFBFBD>?
---
@@ -99,25 +99,25 @@ Schema隔离+模块化架构 → ASL标题摘要初筛+全文复筛 → 多
#### 8銝杵chema<6D><EFBFBD><E98DA6><EFBFBD>
| Schema名称 | 用途 | 核心表 | 优先级 |
| Schema<EFBFBD>滨妍 | <20><EFBFBD>?| <20><EFBFBD>銵?| 隡睃<E99AA1>蝥?|
|-----------|------|--------|--------|
| **platform_schema** | 平台基础 | users, roles, permissions | P0 |
| **platform_schema** | 撟喳蝱<EFBFBD><EFBFBD> | users, roles, permissions | P0 潃?|
| **aia_schema** | AI<41><EFBFBD> | projects, conversations, messages | P1 |
| **asl_schema** | AI智能文献 | literature_projects, literature_items, screening_results | P0 ⭐⭐⭐ |
| **asl_schema** | AI<EFBFBD><EFBFBD><EFBFBD><EFBFBD> | literature_projects, literature_items, screening_results | P0 潃鐥<EFBFBD>潃?|
| **dc_schema** | <20>唳旿皜<E697BF><E79A9C> | cleaning_projects, datasets, cleaning_rules | P0 潃鐥<E6BD83> |
| **rvw_schema** | 摰∠阮蝟餌<E89D9F> | manuscripts, reviews,霂<><EFBFBD><E691AF><EFBFBD> | P0 潃鐥<E6BD83> |
| **pkb_schema** | 知识库 | knowledge_bases, documents | P1 |
| **pkb_schema** | <EFBFBD><EFBFBD>摨?| knowledge_bases, documents | P1 |
| **admin_schema** | 餈鞱𨯫蝞∠<E89D9E> | system_logs, statistics | P2 |
| **common_schema** | <20>𡁶鍂<F0A181B6>唳旿 | llm_usage, feature_flags | P1 |
#### <20><EFBFBD><E6BBA8>單釣銝匧之璅<E79285>
**ASLAI智能文献Schema**
**ASL嚗㇁I<EFBFBD><EFBFBD><EFBFBD><EFBFBD>讃嚗农chema嚗?*
```sql
-- asl_schema
CREATE SCHEMA asl_schema;
-- 文献项目表
-- <EFBFBD><EFBFBD>讃憿寧𤌍銵?
CREATE TABLE asl_schema.literature_projects (
id UUID PRIMARY KEY,
user_id UUID REFERENCES platform_schema.users(id),
@@ -128,7 +128,7 @@ CREATE TABLE asl_schema.literature_projects (
updated_at TIMESTAMP
);
-- PICO配置表
-- PICO<EFBFBD>滨蔭銵?
CREATE TABLE asl_schema.pico_configs (
id UUID PRIMARY KEY,
project_id UUID REFERENCES asl_schema.literature_projects(id) ON DELETE CASCADE,
@@ -139,7 +139,7 @@ CREATE TABLE asl_schema.pico_configs (
study_design TEXT NOT NULL
);
-- 文献条目表
-- <EFBFBD><EFBFBD><EFBFBD>∠𤌍銵?
CREATE TABLE asl_schema.literature_items (
id UUID PRIMARY KEY,
project_id UUID REFERENCES asl_schema.literature_projects(id) ON DELETE CASCADE,
@@ -149,7 +149,7 @@ CREATE TABLE asl_schema.literature_items (
journal VARCHAR(200),
year INTEGER,
doi VARCHAR(200),
-- 筛选结果
-- 蝑偦<EFBFBD><EFBFBD><EFBFBD>?
screening_status VARCHAR(50) DEFAULT 'pending',
final_decision VARCHAR(50),
ai_model1_decision VARCHAR(50),
@@ -163,7 +163,7 @@ CREATE TABLE asl_schema.literature_items (
);
```
**DC数据清洗Schema**
**DC<EFBFBD><EFBFBD><EFBFBD>瘣梹<EFBFBD>Schema嚗?*
```sql
-- dc_schema
CREATE SCHEMA dc_schema;
@@ -196,7 +196,7 @@ CREATE TABLE dc_schema.cleaning_rules (
);
```
**RVW审稿系统Schema**
**RVW<EFBFBD>恣蝔輻頂蝏<EFBFBD><EFBFBD>Schema嚗?*
```sql
-- rvw_schema
CREATE SCHEMA rvw_schema;
@@ -232,22 +232,22 @@ CREATE TABLE rvw_schema.evaluation_criteria (
#### Day 1隞餃𦛚皜<F0A69B9A><E79A9C>
- [ ] 绘制完整的Schema关系图
- [ ] 蝏睃<EFBFBD>摰峕㟲<EFBFBD><EFBFBD>chema<EFBFBD>喟頂<EFBFBD>?
- [ ] 霈曇恣8銝杵chema<6D><61>”蝏𤘪<E89D8F>
- [ ] <20><EFBFBD>嚗朞祕蝏<E7A595>挽霈SL<53><4C>C<EFBFBD><43>VW銝劐葵Schema
- [ ] 设计跨Schema的外键引用规则
- [ ] 霈曇恣頝沒chema<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- [ ] 蝻硋<E89DBB>Schema霈曇恣<E69B87><E681A3>
**输出文档:**
**颲枏枂<EFBFBD><EFBFBD>﹝嚗?*
- `09-<2D><EFBFBD>摰墧鴌/01-Schema<6D>𠉛氖霂衣<E99C82>霈曇恣.md`
---
#### Day 2:数据迁移计划
#### Day 2嚗𡁏㺭<EFBFBD><EFBFBD>蝘餉恣<EFBFBD>?
**<EFBFBD><EFBFBD>銵典<EFBFBD>蝐鳴<EFBFBD>**
| 现有表 | 迁移到 | 优先级 |
| <EFBFBD><EFBFBD>銵?| 餈<><EFBFBD>?| 隡睃<E99AA1>蝥?|
|--------|--------|--------|
| users, roles | platform_schema | P0 |
| projects, conversations, messages | aia_schema | P1 |
@@ -256,49 +256,49 @@ CREATE TABLE rvw_schema.evaluation_criteria (
| 嚗<>鰵撱綽<E692B1>cleaning_* | dc_schema | P0 |
| 嚗<>鰵撱綽<E692B1>manuscripts, reviews | rvw_schema | P0 |
**迁移策略:**
**<EFBFBD>宏蝑𣇉裦嚗?*
1. **阶段性迁移**
- Phase 1创建所有Schema5分钟
- Phase 2迁移platform核心表30分钟
- Phase 3迁移AIA和PKB表1小时
- Phase 4创建ASL/DC/RVW新表30分钟
1. **<EFBFBD>嗆挾<EFBFBD><EFBFBD>蝘?*
- Phase 1嚗𡁜<EFBFBD>撱箸<EFBFBD><EFBFBD>农chema嚗?<3F><><EFBFBD>嚗?
- Phase 2嚗朞<EFBFBD>蝘裴latform<EFBFBD><EFBFBD>銵剁<EFBFBD>30<EFBFBD><EFBFBD><EFBFBD>嚗?
- Phase 3嚗朞<EFBFBD>蝘翠IA<EFBFBD>釶KB銵剁<EFBFBD>1撠𤩺𧒄嚗?
- Phase 4嚗𡁜<EFBFBD>撱態SL/DC/RVW<EFBFBD>啗”嚗?0<><30><EFBFBD>嚗?
2. **零停机迁移**
- 使用数据库视图作为过渡
2. **<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝘?*
- 雿輻鍂<EFBFBD>唳旿摨栞<EFBFBD><EFBFBD><EFBFBD>銝箄<EFBFBD>皜?
- <20>鞉郊<E99E89><E9838A>揢摨𠉛鍂隞<E98D82><E99A9E>
- 靽萘<E99DBD><E89098>扯”雿靝蛹憭<E89BB9>
**Day 2任务清单:**
**Day 2隞餃𦛚皜<EFBFBD><EFBFBD>嚗?*
- [ ] 蝻硋<E89DBB>SQL餈<4C><EFBFBD>𡁏𧋦
- [ ] 霈曇恣<E69B87>唳旿撉諹<E69289><E8ABB9><EFBFBD>
- [ ] <20><><EFBFBD><EFBFBD><EFBFBD><E5A2A7><EFBFBD>
- [ ] 在测试环境验证
- [ ] <EFBFBD><EFBFBD>霂閧㴓憓<EFBFBD><EFBFBD>霂?
**输出文档:**
- `09-架构实施/02-数据库迁移计划.md`
**颲枏枂<EFBFBD><EFBFBD>﹝嚗?*
- `09-<EFBFBD><EFBFBD>摰墧鴌/02-<2D>唳旿摨栞<E691A8>蝘餉恣<E9A489>?md`
- `09-<2D><EFBFBD>摰墧鴌/migration-scripts/`
---
### Day 3-4嚗𡁏<E59A97>銵玺chema餈<61>
#### Day 3:测试环境迁移
#### Day 3嚗𡁏<EFBFBD>霂閧㴓憓<EFBFBD><EFBFBD>蝘?
**上午:准备工作**
- [ ] 备份测试数据库
**銝𠰴<EFBFBD>嚗𡁜<EFBFBD><EFBFBD>極雿?*
- [ ] <EFBFBD>遢瘚贝<EFBFBD><EFBFBD>唳旿摨?
- [ ] <20>𥕦遣8銝杵chema
- [ ] 运行迁移脚本Platform + AIA + PKB
- [ ] 餈鞱<EFBFBD><EFBFBD><EFBFBD>𡁏𧋦嚗㇊latform + AIA + PKB嚗?
**銝见<E98A9D>嚗𡁻<E59A97><EFBFBD><E99C82>瘚贝<E7989A>**
- [ ] 数据完整性验证
- [ ] 现有功能测试AI问答、知识库
- [ ] 修复发现的问题
- [ ] <EFBFBD>唳旿摰峕㟲<EFBFBD><EFBFBD>霂?
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>瘚贝<EFBFBD>嚗㇁I<EFBFBD><EFBFBD><EFBFBD><EFBFBD>䰻霂<EFBFBD><EFBFBD>嚗?
- [ ] 靽桀<EFBFBD><EFBFBD>𤑳緵<EFBFBD><EFBFBD>䔮憸?
#### Day 4:生产环境迁移 + 新Schema创建
#### Day 4嚗𡁶<EFBFBD>鈭抒㴓憓<EFBFBD><EFBFBD>蝘?+ <20>chema<EFBFBD>𥕦遣
**上午:生产环境迁移**
- [ ] 备份生产数据库
**銝𠰴<EFBFBD>嚗𡁶<EFBFBD>鈭抒㴓憓<EFBFBD><EFBFBD>蝘?*
- [ ] <EFBFBD><EFBFBD>煺漣<EFBFBD>唳旿摨?
- [ ] <20><EFBFBD>Schema餈<61>
- [ ] <20>唳旿撉諹<E69289>
@@ -306,9 +306,9 @@ CREATE TABLE rvw_schema.evaluation_criteria (
- [ ] <20>𥕦遣asl_schema<6D>𦠜<EFBFBD><F0A6A09C>㕑”
- [ ] <20>𥕦遣dc_schema<6D>𦠜<EFBFBD><F0A6A09C>㕑”
- [ ] <20>𥕦遣rvw_schema<6D>𦠜<EFBFBD><F0A6A09C>㕑”
- [ ] 创建必要的索引
- [ ] <EFBFBD>𥕦遣敹<EFBFBD><EFBFBD><EFBFBD><EFBFBD>揣撘?
**验收标准:**
**撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?*
- [ ] 8銝杵chema<6D><EFBFBD><E588B8>𥕦遣摰峕<E691B0>
- [ ] <20><EFBFBD><E594B3><EFBFBD><EFBFBD>虜餈鞱<E9A488>
- [ ] 銝匧之璅<E79285>Schema<6D><61><EFBFBD>撠梁貌
@@ -317,13 +317,13 @@ CREATE TABLE rvw_schema.evaluation_criteria (
### Day 5嚗䥪risma Schema<6D>湔鰵
**核心任务:**
- [ ] 更新Prisma Schema配置(支持多Schema
**<EFBFBD><EFBFBD>隞餃𦛚嚗?*
- [ ] <EFBFBD>湔鰵Prisma Schema<EFBFBD>滨蔭嚗<EFBFBD>𣈲<EFBFBD><EFBFBD><EFBFBD>Schema嚗?
- [ ] 銝態SL<53><4C>C<EFBFBD><43>VW<56>𥕦遣Prisma璅<E79285>
- [ ] <20><><EFBFBD>Prisma Client
- [ ] <20>湔鰵<E6B994><EFBFBD><EFBFBD><E99A9E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A180>亥砭
**Prisma多Schema配置示例:**
**Prisma憭锭chema<EFBFBD>滨蔭蝷箔<EFBFBD>嚗?*
```prisma
// schema.prisma
generator client {
@@ -384,7 +384,7 @@ model PICOConfig {
// ... <20><EFBFBD><E79285>
```
**验收标准:**
**撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?*
- [ ] Prisma Schema<6D><EFBFBD>8銝杵chema
- [ ] <20><><EFBFBD><EFBFBD><EFBFBD>lient<6E>臭誑甇<E8AA91>霈輸䔮<E8BCB8><E494AE><EFBFBD>农chema
- [ ] 蝐餃<E89D90>摰帋<E691B0>摰峕㟲
@@ -393,57 +393,57 @@ model PICOConfig {
### Week 1 <20><EFBFBD>
**交付成果:**
1. ✅ 8个Schema设计完成
2. ✅ 数据库迁移完成
3. Prisma Schema更新完成
4. ASL、DC、RVW三大模块数据库就绪
**鈭支<EFBFBD><EFBFBD><EFBFBD>嚗?*
1. <EFBFBD>?8銝杵chema霈曇恣摰峕<E691B0>
2. <EFBFBD>?<3F>唳旿摨栞<E691A8>蝘餃<E89D98><E9A483>?
3. <EFBFBD>?Prisma Schema<EFBFBD>湔鰵摰峕<EFBFBD>
4. <EFBFBD>?ASL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW銝匧之璅<EFBFBD><EFBFBD>唳旿摨枏停蝏?
**验收标准:**
- [ ] 所有现有功能正常运行
- [ ] 数据库完整性100%
**撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?*
- [ ] <EFBFBD><EFBFBD><EFBFBD>厩緵<EFBFBD><EFBFBD><EFBFBD>賣迤撣貉<EFBFBD>銵?
- [ ] <EFBFBD>唳旿摨枏<EFBFBD><EFBFBD><EFBFBD>?00%
- [ ] Prisma Client甇<74>虜撌乩<E6928C>
- [ ] 三大模块可以开始开发
- [ ] 銝匧之璅<EFBFBD><EFBFBD>臭誑撘<EFBFBD>憪见<EFBFBD><EFBFBD>?
---
## 🔧 阶段2模块化架构实施Week 2
## <EFBFBD><20>嗆挾2嚗𡁏芋<F0A1818F><EFBFBD><E5A092><EFBFBD>摰墧鴌嚗Áeek 2嚗?
> **时间:** 2025-11-14 2025-11-207天
> **目标:** 建立清晰的代码分层 + 实现模块独立部署能力
> **<EFBFBD>園𡢿嚗?* 2025-11-14 <EFBFBD>?2025-11-20嚗?憭抬<E686AD>
> **<EFBFBD><EFBFBD>嚗?* 撱箇<E692B1><EFBFBD><EFBFBD><E88B8A><EFBFBD><E8AAA8><EFBFBD>撅?+ 摰䂿緵璅<E79285><E288AA><EFBFBD><E7A589>函蔡<E587BD><EFBFBD>
### <20><EFBFBD><E8A9A8><EFBFBD>
**建立三层架构 + 模块独立性**
**撱箇<EFBFBD>銝匧<EFBFBD><EFBFBD><EFBFBD> + 璅<E79285><E288AA><EFBFBD><E7A589>?*
```
backend/
├── platform/ # 平台基础层
│ ├── auth/ # 认证授权(共享)
│ ├── permission/ # 权限管理
│ └── storage/ # 存储服务
├── common/ # 通用能力层
│ ├── llm/ # LLM网关 ⭐ 核心
│ ├── document/ # 文档处理
│ └── utils/ # 工具函数
├── modules/ # 业务模块层(独立)
│ ├── asl/ # AI智能文献 ⭐⭐⭐
│ │ ├── api/
│ │ ├── services/
│ │ ├── types/
│ │ └── standalone.config.ts # 独立部署配置
│ │
│ ├── dc/ # 数据清洗 ⭐⭐
│ │ └── standalone.config.ts
│ │
│ ├── rvw/ # 审稿系统 ⭐⭐
│ │ └── standalone.config.ts
│ │
│ ├── aia/ # AI问答
│ └── pkb/ # 知识库
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> platform/ # 撟喳蝱<EFBFBD><EFBFBD>撅?
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> auth/ # 霈方<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>鈭恬<EFBFBD>
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> permission/ # <EFBFBD><EFBFBD><EFBFBD>蝞∠<EFBFBD>
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> storage/ # 摮睃<EFBFBD><EFBFBD>滚𦛚
<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> common/ # <EFBFBD>𡁶鍂<EFBFBD><EFBFBD>撅?
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> llm/ # LLM蝵穃<EFBFBD> 潃?<3F><EFBFBD>
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> document/ # <EFBFBD><EFBFBD>﹝憭<EFBFBD><EFBFBD>
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> utils/ # 撌亙<EFBFBD><EFBFBD>賣㺭
<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> modules/ # 銝𡁜𦛚璅<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> asl/ # AI<EFBFBD><EFBFBD><EFBFBD><EFBFBD>讃 潃鐥<E6BD83>潃?
<EFBFBD>? <20>? <20><EFBFBD><E98EBF><EFBFBD> api/
<EFBFBD>? <20>? <20><EFBFBD><E98EBF><EFBFBD> services/
<EFBFBD>? <20>? <20><EFBFBD><E98EBF><EFBFBD> types/
<EFBFBD>? <20>? <20><EFBFBD><E5A999><EFBFBD> standalone.config.ts # <EFBFBD><EFBFBD><EFBFBD>函蔡<EFBFBD>滨蔭
<EFBFBD>? <20>?
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> dc/ # <EFBFBD>唳旿皜<EFBFBD><EFBFBD> 潃鐥<E6BD83>
<EFBFBD>? <20>? <20><EFBFBD><E5A999><EFBFBD> standalone.config.ts
<EFBFBD>? <20>?
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> rvw/ # 摰∠阮蝟餌<EFBFBD> 潃鐥<E6BD83>
<EFBFBD>? <20>? <20><EFBFBD><E5A999><EFBFBD> standalone.config.ts
<EFBFBD>? <20>?
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> aia/ # AI<EFBFBD><EFBFBD>
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> pkb/ # <EFBFBD><EFBFBD>摨?
<EFBFBD>?
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> shared/ # <20>曹澈隞<E6BE88><E99A9E>
<20><EFBFBD><E98EBF><EFBFBD> types/
<20><EFBFBD><E5A999><EFBFBD> interfaces/
@@ -451,51 +451,51 @@ backend/
---
### Day 1-2:代码重构 + LLM网关
### Day 1-2嚗帋誨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?+ LLM蝵穃<EFBFBD>
#### Day 1:目录重构
#### Day 1嚗𡁶𤌍敶閖<EFBFBD><EFBFBD>?
**任务:**
**隞餃𦛚嚗?*
- [ ] <20>𥕦遣銝匧<E98A9D><E58CA7><EFBFBD>蝏𤘪<E89D8F>
- [ ] 迁移现有代码到对应目录
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>啣笆摨𠉛𤌍敶?
- [ ] 銝態SL<53><4C>C<EFBFBD><43>VW<56>𥕦遣璅<E79285>撉冽沲
- [ ] <20>湔鰵import頝臬<E9A09D>
**ASL模块目录结构:**
**ASL<EFBFBD><EFBFBD><EFBFBD>蝏𤘪<EFBFBD>嚗?*
```
modules/asl/
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> api/
│ ├── projects.ts # 项目管理API
│ ├── screening.ts # 筛选API
│ └── exports.ts # 导出API
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> projects.ts # 憿寧𤌍蝞∠<EFBFBD>API
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> screening.ts # 蝑偦<EFBFBD>𡅅PI
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> exports.ts # 撖澆枂API
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> services/
│ ├── project.service.ts
│ ├── screening.service.ts
│ └── llm.service.ts # 封装LLM网关调用
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> project.service.ts
<EFBFBD>? <20><EFBFBD><E98EBF><EFBFBD> screening.service.ts
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> llm.service.ts # <EFBFBD><EFBFBD>LLM蝵穃<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> types/
│ └── index.ts
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> index.ts
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> config/
│ └── standalone.config.ts # 独立部署配置
<EFBFBD>? <20><EFBFBD><E5A999><EFBFBD> standalone.config.ts # <EFBFBD><EFBFBD><EFBFBD>函蔡<EFBFBD>滨蔭
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> index.ts # 璅<E79285><E288AA>亙藁
```
#### Day 2LLM网关实现 ⭐ 核心
#### Day 2嚗匁LM蝵穃<EFBFBD>摰䂿緵 潃?<3F><EFBFBD>
**为什么LLM网关如此重要**
**銝箔<EFBFBD>銋𡿨LM蝵穃<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?*
- ASL<53><4C><EFBFBD>憸䀹<E686B8><EFBFBD><E996AC>蝑𥕦<E89D91><F0A595A6><EFBFBD>韏硋<E99F8F>
- DC<44><43><EFBFBD><EFBFBD>瘣堒遣霈桅<E99C88><EFBFBD><E996AC>
- RVW<56><57>恣蝔輯<E89D94>隡圈<E99AA1><EFBFBD><E996AC>
- 蝏煺<E89D8F>蝞∠<E89D9E><E288A0><EFBFBD><EFBFBD>𡅅I靚<49>
**实现任务:**
- [ ] 实现BaseLLMAdapter抽象类
**摰䂿緵隞餃𦛚嚗?*
- [ ] 摰䂿緵BaseLLMAdapter<EFBFBD>質情蝐?
- [ ] 摰䂿緵DeepSeekAdapter
- [ ] 摰䂿緵QwenAdapter
- [ ] 实现LLMGateway主服务
- [ ] 摰䂿緵LLMGateway銝餅<EFBFBD><EFBFBD>?
- [ ] Feature Flag<61><67><EFBFBD>
- [ ] 配额检查
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
**核心代码:**
**<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?*
```typescript
// common/llm/LLMGateway.ts
export class LLMGateway {
@@ -505,24 +505,24 @@ export class LLMGateway {
messages: Message[],
options?: LLMOptions
): Promise<LLMResponse> {
// 1. Feature Flag检查
// 2. 配额检查
// 3. 调用适配器
// 4. 记录使用量
// 1. Feature Flag<EFBFBD><EFBFBD>?
// 2. <EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
// 3. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
// 4. 霈啣<EFBFBD>雿輻鍂<EFBFBD>?
}
}
```
**验收标准:**
**撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?*
- [ ] <20>臭誑靚<E8AA91>鍂DeepSeek<65>熑wen3
- [ ] Feature Flag甇<67>虜撌乩<E6928C>
- [ ] 配额检查正常
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>交迤撣?
---
### Day 3-5:模块独立部署能力
### Day 3-5嚗𡁏芋<EFBFBD>㛖𡠺蝡钅<EFBFBD>蝵脰<EFBFBD><EFBFBD>?
#### Day 3:独立部署配置
#### Day 3嚗𡁶𡠺蝡钅<EFBFBD>蝵脤<EFBFBD>蝵?
**銝箸<E98A9D>銝芣芋<E88AA3><EFBFBD>撱箇𡠺蝡钅<E89DA1>蝵殷<E89DB5>**
@@ -540,7 +540,7 @@ export const ASLStandaloneConfig = {
apiPrefix: '/api/asl',
},
// 依赖的共享服务
// 靘肽<EFBFBD><EFBFBD><EFBFBD><EFBFBD>鈭急<EFBFBD><EFBFBD>?
dependencies: {
auth: {
required: true,
@@ -552,7 +552,7 @@ export const ASLStandaloneConfig = {
},
},
// 数据库配置
// <EFBFBD>唳旿摨㯄<EFBFBD>蝵?
database: {
schema: 'asl_schema',
url: process.env.ASL_DATABASE_URL || process.env.DATABASE_URL,
@@ -560,7 +560,7 @@ export const ASLStandaloneConfig = {
};
```
**任务清单:**
**隞餃𦛚皜<EFBFBD><EFBFBD>嚗?*
- [ ] 銝態SL<53>𥕦遣standalone.config.ts
- [ ] 銝慣C<E685A3>𥕦遣standalone.config.ts
- [ ] 銝摧VW<56>𥕦遣standalone.config.ts
@@ -568,23 +568,23 @@ export const ASLStandaloneConfig = {
#### Day 4嚗鋫PI頝舐眏<E88890>𠉛氖
**统一API路由规范**
**蝏煺<EFBFBD>API頝舐眏閫<EFBFBD><EFBFBD>嚗?*
```
/api/asl/* - AI<41><EFBFBD><E7AE84><EFBFBD>
/api/dc/* - <20>唳旿皜<E697BF><E79A9C>
/api/rvw/* - 摰∠阮蝟餌<E89D9F>
/api/aia/* - AI<41><EFBFBD>
/api/pkb/* - 知识库
/api/pkb/* - <EFBFBD><EFBFBD>摨?
```
**任务:**
**隞餃𦛚嚗?*
- [ ] <20>齿<EFBFBD>API頝舐眏嚗峕<E59A97><E79285><E288AA><EFBFBD>
- [ ] 实现路由级别的权限检查
- [ ] 摰䂿緵頝舐眏蝥批<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- [ ] 銝箸<E98A9D>銝芣芋<E88AA3><EFBFBD>撱箇𡠺蝡讠<E89DA1>API<50><49>
#### Day 5Docker化 + 独立部署测试
#### Day 5嚗鋽ocker<EFBFBD>?+ <20><EFBFBD><E7A589>函蔡瘚贝<E7989A>
**为每个模块创建Dockerfile**
**銝箸<EFBFBD>銝芣芋<EFBFBD><EFBFBD>撱慣ockerfile嚗?*
```dockerfile
# modules/asl/Dockerfile
@@ -611,14 +611,14 @@ EXPOSE 3001
CMD ["node", "dist/modules/asl/index.js"]
```
**任务:**
**隞餃𦛚嚗?*
- [ ] 銝態SL<53>𥕦遣Dockerfile
- [ ] 銝慣C<E685A3>𥕦遣Dockerfile
- [ ] 銝摧VW<56>𥕦遣Dockerfile
- [ ] <20>𥕦遣docker-compose<73>滨蔭
- [ ] 瘚贝<E7989A><E8B49D><EFBFBD><E7A589>函蔡
**docker-compose.yml示例:**
**docker-compose.yml蝷箔<EFBFBD>嚗?*
```yaml
version: '3.8'
@@ -648,51 +648,51 @@ services:
### Week 2 <20><EFBFBD>
**交付成果:**
1. ✅ 三层代码架构建立完成
2. LLM网关实现完成
3. ASL、DC、RVW三模块支持独立部署
4. Docker化完成
**鈭支<EFBFBD><EFBFBD><EFBFBD>嚗?*
1. <EFBFBD>?銝匧<E98A9D><EFBFBD><E99A9E><EFBFBD><EFBFBD>撱箇<E692B1>摰峕<E691B0>
2. <EFBFBD>?LLM蝵穃<EFBFBD>摰䂿緵摰峕<EFBFBD>
3. <EFBFBD>?ASL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW銝㗇芋<EFBFBD>埈𣈲<EFBFBD><EFBFBD>𡠺蝡钅<EFBFBD>蝵?
4. <EFBFBD>?Docker<EFBFBD><EFBFBD><EFBFBD>?
**验收标准:**
- [ ] 代码结构清晰,依赖关系正确
**撉峕𤣰<EFBFBD><EFBFBD><EFBFBD>嚗?*
- [ ] <EFBFBD><EFBFBD>蝏𤘪<EFBFBD><EFBFBD>苊嚗䔶<EFBFBD>韏硋<EFBFBD>蝟餅迤蝖?
- [ ] LLM蝵穃<E89DB5><E7A983>臭誑甇<E8AA91>虜靚<E8999C>
- [ ] 三大模块可以独立启动和运行
- [ ] 銝匧之璅<EFBFBD><EFBFBD>臭誑<EFBFBD><EFBFBD><EFBFBD>臬𢆡<EFBFBD><EFBFBD>銵?
- [ ] Docker<65>𨅯<EFBFBD><F0A885AF>臭誑甇<E8AA91><EFBFBD><E8999C>
---
## 🎯 阶段3-4ASL核心功能开发Week 3-4
## <EFBFBD><20>嗆挾3-4嚗鋫SL<53><EFBFBD><E8A9A8><EFBFBD><EFBFBD><E69298>𡢅<EFBFBD>Week 3-4嚗?
> **时间:** 2025-11-21 2025-12-042周
> **目标:** 完成ASL标题摘要初筛 + 全文复筛
> **<EFBFBD>園𡢿嚗?* 2025-11-21 <EFBFBD>?2025-12-04嚗?<3F><EFBFBD>
> **<EFBFBD><EFBFBD>嚗?* 摰峕<E691B0>ASL<53><4C><EFBFBD><EFBFBD><EFBFBD><E48185><EFBFBD> + <20><EFBFBD>憭滨<E686AD>
**霂衣<E99C82><E8A1A3><EFBFBD><EFBFBD><E68D86><EFBFBD><EFBFBD><EFBFBD><E99C88>嚗峕瓲敹<E793B2><EFBFBD><EFBFBD>**
- Week 3:项目管理 + CSV导入 + 标题摘要初筛
- Week 4:全文复筛 + PDF处理
- Week 3嚗𡁻★<EFBFBD>桃恣<EFBFBD>?+ CSV撖澆<E69296> + <20><><EFBFBD><EFBFBD><EFBFBD><E48185><EFBFBD>
- Week 4嚗𡁜<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝑?+ PDF<EFBFBD><EFBFBD>
---
## 🔗 阶段5多模块联调Week 5
## <EFBFBD><EFBFBD> <20>嗆挾5嚗𡁜<E59A97><E79285><E288AA><EFBFBD>嚗Áeek 5嚗?
> **时间:** 2025-12-05 2025-12-139天
> **目标:** 验证三大模块的协同工作能力
> **<EFBFBD>園𡢿嚗?* 2025-12-05 <EFBFBD>?2025-12-13嚗?憭抬<E686AD>
> **<EFBFBD><EFBFBD>嚗?* 撉諹<E69289>銝匧之璅<E79285><E288AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>極雿𡏭<E99BBF><F0A18FAD>?
### <20><EFBFBD>瘚贝<E7989A><E8B49D>箸艶
**<EFBFBD>箸艶1嚗𡁶鍂<EFBFBD>瑁楊璅<EFBFBD>雿輻鍂**
- 用户登录 → 使用ASL筛选文献 → 使用DC清洗数据 → 使用RVW审稿
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>?雿輻鍂ASL蝑偦<E89D91><EFBFBD><E39787>?<3F>?雿輻鍂DC皜<43><E79A9C><EFBFBD>唳旿 <20>?雿輻鍂RVW摰∠阮
**场景2数据共享测试**
- ASL筛选出的文献 → 导出到DC进行数据提取
- DC清洗的数据 → 用于RVW的稿件准备
**<EFBFBD>箸艶2嚗𡁏㺭<EFBFBD><EFBFBD>鈭急<EFBFBD>霂?*
- ASL蝑偦<EFBFBD>匧枂<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>?撖澆枂<E6BE86>蚤C餈𥡝<E9A488><F0A5A19D>唳旿<E594B3>𣂼<EFBFBD>
- DC<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<3F>?<3F><EFBFBD>RVW<56><57>阮隞嗅<E99A9E>憭?
**场景3独立部署测试**
- ASL独立部署 → 调用平台认证服务 → 正常工作
- DC独立部署 → 调用LLM网关 → 正常工作
**<EFBFBD>箸艶3嚗𡁶𡠺蝡钅<EFBFBD>蝵脫<EFBFBD>霂?*
- ASL<EFBFBD><EFBFBD><EFBFBD>函蔡 <20>?靚<>鍂撟喳蝱霈方<E99C88><E696B9>滚𦛚 <20>?甇<>虜撌乩<E6928C>
- DC<EFBFBD><EFBFBD><EFBFBD>函蔡 <20>?靚<>鍂LLM蝵穃<E89DB5> <20>?甇<>虜撌乩<E6928C>
**任务清单:**
- [ ] 端到端测试
**隞餃𦛚皜<EFBFBD><EFBFBD>嚗?*
- [ ] 蝡臬<EFBFBD>蝡舀<EFBFBD>霂?
- [ ] <20><EFBFBD>瘚贝<E7989A>
- [ ] <20><EFBFBD><E7A589>函蔡撉諹<E69289>
- [ ] <20><>﹝摰<EFB99D><E691B0>
@@ -701,41 +701,41 @@ services:
## <20><> <20>喲睸<E596B2><EFBFBD>霈啣<E99C88>
### 决策001Schema隔离必须执行 ✅
### <EFBFBD><EFBFBD>001嚗锭chema<EFBFBD>𠉛氖敹<EFBFBD><EFBFBD><EFBFBD> <20>?
**决策:** Week 1必须完成Schema隔离
**<EFBFBD><EFBFBD>嚗?* Week 1<EFBFBD>◆摰峕<EFBFBD>Schema<EFBFBD>𠉛氖
**理由:**
1. 独立部署的前提条件
**<EFBFBD><EFBFBD>眏嚗?*
1. <EFBFBD><EFBFBD><EFBFBD>函蔡<EFBFBD><EFBFBD><EFBFBD><EFBFBD>鞉辺隞?
2.<E79285>颲寧<E9A2B2><EFBFBD>
3. <20>唳旿摨梶漣<E6A2B6><EFBFBD><E6808E>𠉛氖
4. 支持未来独立销售
4. <EFBFBD><EFBFBD><EFBFBD>芣䔉<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
**影响:** Week 1全部用于架构改造
**敶勗<EFBFBD>嚗?* Week 1<><EFBFBD><E588B8><EFBFBD><E585B6><EFBFBD><E59786><EFBFBD>?
---
### 决策002三大模块优先 ✅
### <EFBFBD><EFBFBD>002嚗帋<EFBFBD>憭扳芋<EFBFBD>𦯀<EFBFBD><EFBFBD>?<3F>?
**决策:** 重点投入ASL、DC、RVW三大模块
**<EFBFBD><EFBFBD>嚗?* <20><EFBFBD><E6BBA8><EFBFBD>ASL<53><4C>C<EFBFBD><43>VW銝匧之璅<E79285>
**理由:**
1. 90%独立部署需求
2. 核心差异化产品
**<EFBFBD><EFBFBD>眏嚗?*
1. 90%<EFBFBD><EFBFBD><EFBFBD>函蔡<EFBFBD><EFBFBD>瘙?
2. <EFBFBD><EFBFBD>撌桀<EFBFBD><EFBFBD>碶漣<EFBFBD>?
3. 蝏煺<E89D8F><E785BA><EFBFBD><E59786><EFBFBD><EFBFBD>
**隡睃<E99AA1>蝥改<E89DA5>** ASL > DC = RVW
---
### 决策003LLM网关Week 2实现 ✅
### <EFBFBD><EFBFBD>003嚗匁LM蝵穃<EFBFBD>Week 2摰䂿緵 <20>?
**决策:** LLM网关在Week 2实现不是Week 1
**<EFBFBD><EFBFBD>嚗?* LLM蝵穃<E89DB5><E7A983>汾eek 2摰䂿緵嚗䔶<E59A97><E494B6>eek 1
**理由:**
**<EFBFBD><EFBFBD>眏嚗?*
1. Week 1銝𤘪釣Schema<6D>𠉛氖
2. LLM网关需要Schema完成后才能正确配置
3. Week 2有充足时间实现
2. LLM蝵穃<EFBFBD><EFBFBD><EFBFBD><EFBFBD>chema摰峕<EFBFBD><EFBFBD><EFBFBD><EFBFBD>賣迤蝖桅<EFBFBD>蝵?
3. Week 2<EFBFBD><EFBFBD>頞單𧒄<EFBFBD><EFBFBD><EFBFBD>?
---
@@ -746,7 +746,7 @@ services:
| <20><><EFBFBD> | <20><EFBFBD> | Week 1 | Week 2 | Week 3-4 | Week 5 |
|------|------|--------|--------|----------|--------|
| Schema<6D>𠉛氖 | 100% | 100% | - | - | - |
| 模块化架构 | 100% | 0% | 100% | - | - |
| <EFBFBD><EFBFBD>𡝗沲<EFBFBD>?| 100% | 0% | 100% | - | - |
| LLM蝵穃<E89DB5> | 100% | 0% | 100% | - | - |
| ASL<53><EFBFBD> | 100% | 0% | 0% | 100% | - |
| <20><EFBFBD><E7A589>函蔡 | 100% | 0% | 80% | 80% | 100% |
@@ -755,19 +755,19 @@ services:
## <20><20>𣂼<EFBFBD><F0A382BC><EFBFBD><EFBFBD>
### 技术标准
### <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
- [ ] 8个Schema全部创建并正常工作
- [ ] 三大模块ASL、DC、RVW可以独立部署
- [ ] 8銝杵chema<EFBFBD><EFBFBD><EFBFBD>𥕦遣撟嗆迤撣詨極雿?
- [ ] 銝匧之璅<EFBFBD>嚗㇁SL<EFBFBD><EFBFBD>C<EFBFBD><EFBFBD>VW嚗匧虾隞亦𡠺蝡钅<EFBFBD>蝵?
- [ ] LLM蝵穃<E89DB5>蝔喳<E89D94><E596B3><EFBFBD>
- [ ] ASL<53><EFBFBD><E8A9A8><EFBFBD>摰峕㟲
- [ ] 模块间可以协同工作
- [ ] <EFBFBD><EFBFBD>游虾隞亙<EFBFBD><EFBFBD><EFBFBD>極雿?
### 銝𡁜𦛚<F0A1819C><F0A69B9A><EFBFBD>
- [ ] ASL<53>臭誑摰峕<E691B0><E5B395><EFBFBD>讃蝑偦<E89D91><EFBFBD><EFBFBD><E7989A>
- [ ] 蝑偦<E89D91><EFBFBD>蝖桃<E89D96> > 85%
- [ ] 支持独立部署并对外销售
- [ ] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>函蔡撟嗅笆憭㚚<EFBFBD><EFBFBD>?
- [ ] <20><EFBFBD>雿㯄<E99BBF><EFBFBD><E7989A>
---
@@ -776,44 +776,44 @@ services:
### 憌𡡞埯1嚗锭chema餈<61>宏憭齿<E686AD>摨阡<E691A8>
**风险等级:**
**缓解措施:**
- 在测试环境充分验证
- 准备完善的回滚方案
**憌𡡞埯蝑厩漣嚗?* 擃?
**蝻栞圾<EFBFBD>芣鴌嚗?*
- <EFBFBD><EFBFBD>霂閧㴓憓<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>霂?
- <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>皛𡁏䲮獢?
- <20><>𧫴畾菔<E795BE>蝘鳴<E89D98><E9B3B4><EFBFBD>憌𡡞埯
### 风险2模块独立部署调试困难
### 憌𡡞埯2嚗𡁏芋<EFBFBD>㛖𡠺蝡钅<EFBFBD>蝵脰<EFBFBD>霂訫𤌴<EFBFBD>?
**风险等级:**
**缓解措施:**
**憌𡡞埯蝑厩漣嚗?* 銝?
**蝻栞圾<EFBFBD>芣鴌嚗?*
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E98A9D>函蔡嚗<E894A1><E59A97>摰䂿緵<E482BF><EFBFBD><E7A589>函蔡
- <20><><EFBFBD><EFBFBD><EFBFBD>𠯫敹堒<E695B9><E5A092>烐綉
- 详细的部署文档
- 霂衣<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵脫<EFBFBD>獢?
### 风险3时间延长到5周
### 憌𡡞埯3嚗𡁏𧒄<EFBFBD>游辣<EFBFBD><EFBFBD>5<EFBFBD>?
**风险等级:**
**缓解措施:**
**憌𡡞埯蝑厩漣嚗?* 銝?
**蝻栞圾<EFBFBD>芣鴌嚗?*
- <20><EFBFBD><E59786><EFBFBD><E8A8AB><EFBFBD><EFBFBD><E996AC>
- <20><EFBFBD><E8B8B5><EFBFBD><E4BAA6><EFBFBD><EFBFBD><EFBFBD>園𡢿
- Week 3-4可以并行多人开发
- Week 3-4<EFBFBD>臭誑撟嗉<EFBFBD>憭帋犖撘<EFBFBD><EFBFBD>?
---
## <20><> <20><EFBFBD><E8A9A8><EFBFBD>
- [里程碑4 - 架构改造](./02-里程碑规划/04-里程碑4-架构改造.md)
- [Schema隔离方案](../00-系统总体设计/05-Schema隔离方案与成本分析.md)
- [<EFBFBD>𣬚<EFBFBD>蝣? - <20><EFBFBD><E59786><EFBFBD>髗(./02-<2D>𣬚<EFBFBD>蝣𤏸<E89DA3><F0A48FB8>?04-<2D>𣬚<EFBFBD>蝣?-<2D><EFBFBD><E59786><EFBFBD>?md)
- [Schema<EFBFBD>𠉛氖<EFBFBD><EFBFBD>](../00-蝟餌<EFBFBD><EFBFBD><EFBFBD>霈曇恣/05-Schema<EFBFBD>𠉛氖<EFBFBD><EFBFBD>銝擧<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?md)
- [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>函蔡<EFBFBD><EFBFBD>](../00-蝟餌<E89D9F><E9A48C><EFBFBD>霈曇恣/06-璅<E79285><E288AA><EFBFBD><E7A589>函蔡銝𤾸<E98A9D><F0A4BEB8><EFBFBD><E7AE87><EFBFBD>.md)
- [ASL敹恍<EFBFBD><EFBFBD>銝𧢲<EFBFBD>](../03-銝𡁜𦛚璅<E79285>/ASL-AI<41><EFBFBD><E7AE84><EFBFBD>讃/[AI撖寞𦻖]%20ASL敹恍<E695B9><EFBFBD>銝𧢲<E98A9D>.md)
---
**<EFBFBD><EFBFBD>鈭綽<EFBFBD>** AI<41><EFBFBD>
**审核人:** 待审核
**批准人:** 待批准
**摰⊥瓲鈭綽<EFBFBD>** <EFBFBD><EFBFBD>?
**<EFBFBD><EFBFBD>鈭綽<EFBFBD>** 敺<><EFBFBD>?
**<EFBFBD><EFBFBD><EFBFBD>擧凒<EFBFBD><EFBFBD>** 2025-11-07
**版本:** V2.0
**<EFBFBD><EFBFBD>𧋦嚗?* V2.0