Repository and Codebase Map
Repository and Codebase Map
หัวข้อที่มีชื่อว่า “Repository and Codebase Map”Code Map
หัวข้อที่มีชื่อว่า “Code Map”flowchart TB ROOT["kobi-ai"] ROOT --> APP["app"] ROOT --> SRC["src"] ROOT --> CFG["src config"] ROOT --> CORE["src core"] ROOT --> MOD["src modules"] ROOT --> CTX["src context"] APP --> API["app api all routes"] API --> AIAPI["ai routes"] API --> CHATAPI["chat routes"] API --> SESSAPI["sessions routes"] API --> CANVASAPI["canvas routes"] API --> MAPSAPI["maps routes"] API --> DASHAPI["dashboard routes"] MOD --> CHATMOD["chat module"] MOD --> SESSIONMOD["session module"] MOD --> IDEAMOD["idea module"] MOD --> STRATEGYMOD["strategy module"] MOD --> MAPSMOD["maps module"] MOD --> ANALYTICSMOD["analytics module"]
จุดหลักที่ต้องรู้ก่อนแก้โค้ด
หัวข้อที่มีชื่อว่า “จุดหลักที่ต้องรู้ก่อนแก้โค้ด”| พื้นที่ | ไฟล์สำคัญ | ความรับผิดชอบ |
|---|---|---|
| Entry + View orchestration | src/views/UnifiedChatView.jsx และ src/views/useUnifiedChat*.js | route, scope, thread bootstrap, share handling |
| Chat interaction | src/modules/chat/components/ChatPane.jsx | send/reset/history/action approvals |
| Chat lifecycle hooks | src/modules/chat/hooks/* | URL sync, threads model, HITL resume, scope picker |
| Message pipeline | src/context/hooks/useChatSender.js | thread materialization, stream updates, persistence |
| Mode bootstrap | src/context/KobiProvider.jsx | skills, canvas, modes initialization |
| Mode registry | src/config/agents/* และ src/core/modes/* | manifest-driven mode identity/capabilities |
| Canvas registry | src/core/canvas/CanvasRegistry.js | workspace loading + aliases |
| Tool/Node contract | src/config/agents/toolPolicy.js, src/config/canvas/nodeRegistry.js | allowed tools และ node validation |
| BFF AI boundary | app/api/ai/_proxy.js | field whitelist, scope context, request normalization |
| Chat BFF | `app/api/chat/threads | messages |
| Session start BFF | app/api/sessions/start/route.js | unified new-chat bootstrap per agent and scope |
| Session client service | src/modules/session/services/sessionStartService.js | call session start API and normalize canonical path |
| Workspace BFF | app/api/canvas/_service.js, app/api/maps/*, app/api/dashboard/* | scoped workspace read/mutations/context |
Change Map by Scenario
หัวข้อที่มีชื่อว่า “Change Map by Scenario”- เพิ่มโหมดใหม่
- แก้ manifest (
src/config/agents/<mode>/manifest.js) - ผูก workspace alias ใน canvas registry
- เพิ่ม policy ใน tool/node registry
- เพิ่ม scope handling ใน view + BFF ตามโหมด
- แก้ send/resume behavior
- เริ่มที่
useChatSender,useChatActions,ActionContext - ตรวจ contract ฝั่ง
/api/ai/chat|stream|resume - ทดสอบ persistence ของ placeholder/final messages
- แก้ workspace scope bug
- ตรวจ
useUnifiedChatWorkspaceScopeและuseChatLifecycle - ตรวจ chat threads/messages/history routes
- ตรวจ scope mapping table path และ canonical URL generation
- แก้ maps realtime bug
- ตรวจ
useMapRealtimeและ/api/maps/realtime/token|state - ยืนยัน room scope (
map:{mapId}) และ token assertions