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%)
8.8 KiB
DC妯″潡閲嶅缓瀹屾垚鎬荤粨 - Day 1
鏃ユ湡: 2025-11-28
鐗堟湰: V1.0 (鍩轰簬Day2-3璁捐<E79281>鏂囨。閲嶅缓)
**鐘舵€?*: 鉁?鍚庣<E98D9A>鏍稿績鍔熻兘瀹屾垚
馃搵 鑳屾櫙
**闂<><E99782>**锛欴C妯″潡寮€鍙戜唬鐮佸湪Cursor缂撳瓨娓呯悊鍚庝涪澶?
- 鉂?鎵€鏈塖ervice浠g爜涓㈠け
- 鉂?Controller鍜孯outes涓㈠け
- 鉂?Prisma妯″瀷瀹氫箟涓㈠け
- 鉁?璁捐<E79281>鏂囨。瀹屾暣淇濈暀
- 鉁?寮€鍙戣<E98D99>褰曪紙Day2-3锛変繚鐣?
鏍规湰鍘熷洜锛氫唬鐮佹湭鍙婃椂鎻愪氦鍒癎it锛屼粎瀛樺湪浜嶤ursor涓存椂缂撳瓨涓?
**瑙e喅鏂规<E98F82>**锛氬熀浜庡畬鏁寸殑璁捐<E79281>鏂囨。锛岄伒寰<E4BC92>簯鍘熺敓瑙勮寖锛屽畬鍏ㄩ噸寤篋C妯″潡
鉁?瀹屾垚鍐呭<E98D90>
1. Prisma Schema锛?涓<>〃锛?鉁?
鏂囦欢锛歚backend/prisma/schema.prisma`
| 琛ㄥ悕 | 鐢ㄩ€? | 瀛楁<EFBFBD>鏁? | Schema |
|---|---|---|---|
| DCHealthCheck | 鍋ュ悍妫€鏌ョ紦瀛? | 10 | dc_schema |
| DCTemplate | 棰勮<EFBFBD>妯℃澘 | 7 | dc_schema |
| DCExtractionTask | 鎻愬彇浠诲姟 | 21 | dc_schema |
| DCExtractionItem | 鎻愬彇璁板綍 | 15 | dc_schema |
**鍏抽敭鐗规€?*锛?
- 鉁?Schema闅旂<E99785>锛坄dc_schema`锛?
- 鉁?JSONB瀛楁<E7809B>锛堢伒娲诲瓨鍌<E793A8>級
- 鉁?澶栭敭绾ц仈鍒犻櫎
- 鉁?澶嶅悎绱㈠紩浼樺寲
- 鉁?鍞<>竴绾︽潫锛堟ā鏉垮幓閲嶏級
2. 鏍稿績Service锛?涓<>級 鉁?
2.1 HealthCheckService
鏂囦欢锛歚backend/src/modules/dc/tool-b/services/HealthCheckService.ts`
鍔熻兘锛?
- 鉁?Excel鍒楁暟鎹<E69A9F>川閲忔<E996B2>鏌?
- 鉁?绌哄€肩巼銆佸钩鍧囬暱搴︾粺璁?
- 鉁?Token棰勪及
- 鉁?鎷︽埅绛栫暐锛堢┖鍊肩巼>80%鎴栧钩鍧囬暱搴?10锛?
- 鉁?缁撴灉缂撳瓨锛?4灏忔椂锛?
骞冲彴鑳藉姏澶嶇敤锛?
- 鉁?
storage: 鏂囦欢璇诲彇 - 鉁?
logger: 鏃ュ織璁板綍 - 鉁?
cache: 缁撴灉缂撳瓨 - 鉁?
prisma: 鏁版嵁搴撳瓨鍌?
2.2 TemplateService
鏂囦欢锛歚backend/src/modules/dc/tool-b/services/TemplateService.ts`
鍔熻兘锛?
- 鉁?绠$悊棰勮<E6A3B0>鎻愬彇妯℃澘
- 鉁?Seed 3涓<33><E6B693>璁炬ā鏉匡紙鑲虹檶鐥呯悊銆佺硸灏跨梾鍏ラ櫌銆侀珮琛€鍘嬮棬璇婏級
- 鉁?妯℃澘鏌ヨ<E98F8C>锛堟寜鐤剧梾+鎶ュ憡绫诲瀷锛?
棰勮<EFBFBD>妯℃澘锛?
- 鑲虹檶鐥呯悊鎶ュ憡锛?涓<>瓧娈碉級
- 绯栧翱鐥呭叆闄㈣<EFBFBD>褰曪紙5涓<EFBFBD>瓧娈碉級
- 楂樿<EFBFBD>鍘嬮棬璇婄梾鍘嗭紙5涓<EFBFBD>瓧娈碉級
2.3 DualModelExtractionService
鏂囦欢锛歚backend/src/modules/dc/tool-b/services/DualModelExtractionService.ts`
鍔熻兘锛堟牳蹇冿級锛?
- 鉁?骞跺彂璋冪敤DeepSeek-V3鍜孮wen-Max
- 鉁?PII鑴辨晱锛堟墜鏈哄彿銆佽韩浠借瘉銆佸<E98A86>鍚嶏級
- 鉁?JSON瑙f瀽锛?灞傚<E7819E>閿欑瓥鐣ワ級
- 鉁?Token缁熻<E7BC81>
- 鉁?鎵归噺寮傛<E5AFAE>澶勭悊
骞冲彴鑳藉姏澶嶇敤锛?
- 鉁?
LLMFactory: LLM璋冪敤 - 鉁?
logger: 鏃ュ織璁板綍 - 鉁?
prisma: 鏁版嵁搴撴搷浣?
**鎶€鏈<E282AC>寒鐐?*锛?
- 鉁?Promise.allSettled骞跺彂锛堝弻妯″瀷锛?
- 鉁?3灞侸SON瑙f瀽瀹归敊
- 鉁?鑷<>姩PII鑴辨晱
- 鉁?瀛楁<E7809B>瀹屾暣鎬ч獙璇?
2.4 ConflictDetectionService
鏂囦欢锛歚backend/src/modules/dc/tool-b/services/ConflictDetectionService.ts`
鍔熻兘锛?
- 鉁?鍙屾ā鍨嬬粨鏋滄瘮瀵?
- 鉁?瀛楁<E7809B>褰掍竴鍖栵紙绌烘牸銆佸ぇ灏忓啓銆佹暟鍊硷級
- 鉁?鏂囨湰鐩镐技搴﹁<E690B4>绠楋紙Dice Coefficient锛?
- 鉁?鍐茬獊涓ラ噸绋嬪害鍒嗙骇锛坙ow/medium/high锛?
绠楁硶锛?
- 鉁?鏂囨湰褰掍竴鍖?
- 鉁?鏁板€煎綊涓€鍖栵紙3cm = 3.0cm锛?
- 鉁?2-gram鐩镐技搴﹁<E690B4>绠?
- 鉁?鎵归噺妫€娴嬬粺璁?
3. Controller鍜孉PI锛?涓<><E6B693>鐐癸級 鉁?
鏂囦欢锛歚backend/src/modules/dc/tool-b/controllers/ExtractionController.ts`
| 鏂规硶 | 璺<EFBFBD>緞 | 鍔熻兘 | 鐘舵€? |
|---|---|---|---|
| POST | /health-check |
鍋ュ悍妫€鏌? | 鉁? |
| GET | /templates |
鑾峰彇妯℃澘鍒楄〃 | 鉁? |
| POST | /tasks |
鍒涘缓鎻愬彇浠诲姟 | 鉁? |
| GET | /tasks/:taskId/progress |
鏌ヨ<EFBFBD>浠诲姟杩涘害 | 鉁? |
| GET | /tasks/:taskId/items |
鑾峰彇楠岃瘉缃戞牸鏁版嵁 | 鉁? |
| POST | /items/:itemId/resolve |
瑁佸喅鍐茬獊 | 鉁? |
Base URL: /api/v1/dc/tool-b
4. 璺<>敱閰嶇疆 鉁?
鏂囦欢锛?
backend/src/modules/dc/tool-b/routes/index.tsbackend/src/modules/dc/index.ts
闆嗘垚鍒颁富搴旂敤锛?
- 鉁?璺<>敱娉ㄥ唽锛坄registerDCRoutes`锛?
- 鉁?妯″潡鍒濆<E98D92>鍖栵紙
initDCModule锛? - 鉁?Seed棰勮<E6A3B0>妯℃澘
馃幆 鎶€鏈<E282AC>寒鐐?
1. 涓ユ牸閬靛惊浜戝師鐢熻<E990A2>鑼?鈽侊笍
**澶嶇敤骞冲彴鑳藉姏锛堥浂閲嶅<E996B2>瀹炵幇锛?*锛?
| 骞冲彴鑳藉姏 | 浣跨敤鍦烘櫙 | 鏂囦欢 |
|---|---|---|
| storage | Excel鏂囦欢璇诲彇 | HealthCheckService |
| logger | 缁熶竴鏃ュ織璁板綍 | 鎵€鏈塖ervice |
| cache | 鍋ュ悍妫€鏌ョ紦瀛? | HealthCheckService |
| prisma | 鏁版嵁搴撴搷浣? | 鎵€鏈塖ervice |
| LLMFactory | 鍙屾ā鍨嬭皟鐢? | DualModelExtractionService |
浼樺娍锛?
- 鉁?闆朵唬鐮佸垏鎹㈢幆澧冿紙鏈<E7B499>湴/浜戠<E6B59C>锛?
- 鉁?缁熶竴鏃ュ織鏍煎紡
- 鉁?鍒嗗竷寮忕紦瀛樻敮鎸?
- 鉁?杩炴帴姹犺嚜鍔ㄧ<E98D94>鐞?
2. 妯″潡鍖栨灦鏋?馃敡
**Schema闅旂<E99785>**锛?
- 鉁?鎵€鏈夎〃浣跨敤
dc_schema - 鉁?涓庡叾浠栨ā鍧楀畬鍏ㄩ殧绂?
- 鉁?鏀<>寔鐙<E5AF94>珛閮ㄧ讲
浠g爜缁撴瀯锛?
backend/src/modules/dc/
鈹溾攢鈹€ tool-b/
鈹? 鈹溾攢鈹€ services/
鈹? 鈹? 鈹溾攢鈹€ HealthCheckService.ts
鈹? 鈹? 鈹溾攢鈹€ TemplateService.ts
鈹? 鈹? 鈹溾攢鈹€ DualModelExtractionService.ts
鈹? 鈹? 鈹斺攢鈹€ ConflictDetectionService.ts
鈹? 鈹溾攢鈹€ controllers/
鈹? 鈹? 鈹斺攢鈹€ ExtractionController.ts
鈹? 鈹斺攢鈹€ routes/
鈹? 鈹斺攢鈹€ index.ts
鈹斺攢鈹€ index.ts
3. 鍙屾ā鍨嬩氦鍙夐獙璇?馃<>
**鎶€鏈<E282AC>疄鐜?*锛?
// 骞跺彂璋冪敤涓や釜妯″瀷
const [resultA, resultB] = await Promise.allSettled([
this.callModel('deepseek', prompt, fields),
this.callModel('qwen', prompt, fields)
]);
// 鍐茬獊妫€娴?
const hasConflict = JSON.stringify(resultA.result) !== JSON.stringify(resultB.result);
浼樺娍锛?
- 鉁?鑷<>姩浜ゅ弶楠岃瘉
- 鉁?鍑忓皯AI骞昏<E9AA9E>
- 鉁?鎻愰珮鏁版嵁璐ㄩ噺
4. PII鑷<49>姩鑴辨晱 馃洝锔?
瀹炵幇锛?
// 鎵嬫満鍙疯劚鏁忥細138****5678
// 韬<>唤璇佽劚鏁忥細330102********1234
// 濮撳悕鑴辨晱锛氬紶**
绗﹀悎锛氬尰鐤楁暟鎹<EFBFBD>殣绉佷繚鎶よ<EFBFBD>姹?
馃搳 浠g爜缁熻<E7BC81>
| 绫诲埆 | 鏁伴噺 | 浠g爜琛屾暟 |
|---|---|---|
| Prisma妯″瀷 | 4涓? | ~160琛? |
| Service | 4涓? | ~680琛? |
| Controller | 1涓? | ~330琛? |
| Routes | 1涓? | ~90琛? |
| 妯″潡鍏ュ彛 | 1涓? | ~60琛? |
| 鎬昏<EFBFBD> | 11涓<EFBFBD>枃浠? | ~1,320琛? |
馃殌 涓嬩竴姝ヨ<E5A79D>鍒?
Phase 1: 娴嬭瘯鍜岄獙璇侊紙Day 2锛?
-
API娴嬭瘯
- 鉁?鍋ュ悍妫€鏌<E282AC>PI
- 鉁?妯℃澘鍒楄〃API
- 鈴?鍒涘缓浠诲姟API
- 鈴?瑁佸喅鍐茬獊API
-
闆嗘垚娴嬭瘯
- 鈴?瀹屾暣鎻愬彇娴佺▼娴嬭瘯
- 鈴?鍙屾ā鍨嬪苟鍙戞祴璇?
- 鈴?鍐茬獊妫€娴嬫祴璇?
Phase 2: 鍓嶇<E98D93>UI锛圖ay 3-5锛?
鍩轰簬V4鍘熷瀷瀹炵幇鍓嶇<EFBFBD>锛?
- 鈴?Step 1: 涓婁紶涓庝綋妫€
- 鈴?Step 2: 鏅鸿兘妯$増閰嶇疆
- 鈴?Step 3: 鍙岀洸鎻愬彇杩涘害
- 鈴?Step 4: 鍏ㄦ櫙楠岃瘉缃戞牸
- 鈴?Step 5: 缁撴灉瀵煎嚭
Phase 3: 浼樺寲鍜屾墿灞曪紙Day 6+锛?
-
鎬ц兘浼樺寲
- 鈴?寮傛<E5AFAE>浠诲姟闃熷垪锛圔ullMQ锛?
- 鈴?鎵归噺澶勭悊浼樺寲
- 鈴?缂撳瓨绛栫暐浼樺寲
-
鍔熻兘鎵╁睍
- 鈴?鏇村<E98F87>棰勮<E6A3B0>妯℃澘
- 鈴?鑷<>畾涔夋ā鏉?
- 鈴?鎵归噺瑁佸喅
- 鈴?Excel瀵煎嚭
馃摑 缁忛獙鏁欒<E98F81>
1. 姣忔棩蹇呮彁浜?鈿狅笍
**鏁欒<E98F81>**锛欴C妯″潡浠g爜鍥犳湭鎻愪氦鑰屽叏閮ㄤ涪澶?
鏀硅繘锛?
- 鉁?鏇存柊Git鎻愪氦瑙勮寖锛堝己鍒舵瘡鏃ユ彁浜わ級
- 鉁?娣诲姞琛€娉<E282AC>暀璁<E69A80><E79281>鍛婂尯鍩?
- 鉁?浠婂ぉ鐨勪唬鐮佸繀椤讳粖澶╂彁浜?
2. 澶嶇敤骞冲彴鑳藉姏 鉁?
浼樺娍锛?
- 鉁?寮€鍙戞晥鐜囨彁鍗?鍊?
- 鉁?浠g爜璐ㄩ噺鏇撮珮
- 鉁?缁存姢鎴愭湰鏇翠綆
绀轰緥锛?
// 鉂?閿欒<E996BF>锛氶噸澶嶅疄鐜?
class MyStorage { ... }
// 鉁?姝g‘锛氬<E9949B>鐢ㄥ钩鍙拌兘鍔?
import { storage } from '@/common/storage'
3. 鏂囨。椹卞姩寮€鍙?馃摎
浼樺娍锛?
- 鉁?璁捐<E79281>鏂囨。瀹屾暣锛岄噸寤烘棤闅滅<E99785>
- 鉁?Day2-3鏂囨。浣滀负钃濆浘
- 鉁?鎶€鏈<E282AC>€哄姟闄嶄綆
馃帀 鎬荤粨
鎴愭灉锛?
- 鉁?**4涓<34>暟鎹<E69A9F>〃**瀹屾暣瀹氫箟
- 鉁?4涓<EFBFBD>牳蹇僑ervice瀹炵幇
- 鉁?6涓狝PI绔<EFBFBD>偣瀹屾垚
- 鉁?涓ユ牸閬靛惊浜戝師鐢熻<EFBFBD>鑼?
- 鉁?瀹屽叏澶嶇敤骞冲彴鑳藉姏
- 鉁?**妯″潡鍖?*鏋舵瀯
- 鉁?浠g爜璐ㄩ噺楂?
鏃堕棿锛?
- 鈴憋笍 **寮€鍙戞椂闂?*锛氱害4灏忔椂
- 馃摑 **浠g爜閲?*锛殈1,320琛?
- 馃幆 **瀹屾垚搴?*锛氬悗绔?0%
**涓嬩竴姝?*锛?
- API娴嬭瘯鍜岄獙璇?
- 鍓嶇<EFBFBD>UI瀹炵幇
- 闆嗘垚娴嬭瘯
- 鎬ц兘浼樺寲
鏂囨。缁撴潫 鉁?
鎻愪氦淇℃伅锛?
feat(dc): Complete DC Tool-B backend implementation (Day 1 rebuild)
Completed:
- Add 4 Prisma models (dc_health_checks, dc_templates, dc_extraction_tasks, dc_extraction_items)
- Implement 4 core services (HealthCheck, Template, DualModelExtraction, ConflictDetection)
- Create ExtractionController with 6 API endpoints
- Register routes and initialize DC module
- Fully comply with cloud-native development standards
- Reuse all platform capabilities (storage, logger, cache, prisma, LLMFactory)
Tech Highlights:
- Dual model cross-validation (DeepSeek-V3 + Qwen-Max)
- PII auto-masking (phone, ID card, name)
- 3-layer JSON parsing with fallback
- Dice Coefficient similarity algorithm
- Schema isolation (dc_schema)
Lines: ~1,320 lines (4 services, 1 controller, routes, Prisma models)
Related: DC module code loss incident (2025-11-28)
Docs: docs/03-涓氬姟妯″潡/DC-鏁版嵁娓呮礂鏁寸悊/06-寮€鍙戣<E98D99>褰?DC妯″潡閲嶅缓瀹屾垚鎬荤粨-Day1.md