Files
awoooi/docs/ARCHITECTURE_MEMORY.md
OG T 80d0ef4a8f feat(packages): Phase 6.4a-c leWOOOgo modular architecture
New packages:
- packages/lewooogo-brain: AI reasoning & decision engine
  - IProposalEngine interface (ABC)
  - IIncidentProcessor interface (ABC)
  - Pydantic models: Proposal, Guardrails, Incident, Signal

- packages/lewooogo-data: Memory provider abstraction
  - IMemoryProvider interface (ABC)
  - IDualMemoryProvider for Working + Episodic memory
  - Generic type support for flexible data models

Documentation:
- ADR-008: Python modular packages architecture decision
- ARCHITECTURE_MEMORY.md: Module map index for AI developers
- LOGBOOK.md: Updated milestones and Phase 6.4 status

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-23 09:32:07 +08:00

3.0 KiB
Raw Blame History

AWOOOI 架構記憶地圖 (Architecture Memory)

AI 模組地圖索引 - 每次新增積木後必須登記

最後更新: 2026-03-23 維護者: Claude Code + C-Suite


📦 Python 積木 (packages/)

積木名稱 職責 對外介面 ADR
lewooogo-brain AI 推論與決策邏輯 IProposalEngine, IIncidentProcessor ADR-008
lewooogo-data 資料抽象與持久化 IMemoryProvider, IDualMemoryProvider ADR-008

lewooogo-brain 模組結構

packages/lewooogo-brain/
├── src/lewooogo_brain/
│   ├── interfaces/           # ABC 定義
│   │   ├── proposal_engine.py    → IProposalEngine
│   │   └── incident_processor.py → IIncidentProcessor
│   ├── engines/              # 推論引擎實作
│   │   ├── proposal_engine.py    # 🔲 待實作
│   │   └── incident_engine.py    # 🔲 待搬遷
│   └── skills/               # Skill 動態載入
│       └── loader.py             # 🔲 待實作

lewooogo-data 模組結構

packages/lewooogo-data/
├── src/lewooogo_data/
│   ├── interfaces/           # ABC 定義
│   │   └── memory_provider.py    → IMemoryProvider, IDualMemoryProvider
│   └── providers/            # 具體實作
│       ├── redis_memory.py       # 🔲 待實作
│       ├── pg_memory.py          # 🔲 待實作
│       └── dual_memory.py        # 🔲 待實作

📦 TypeScript 積木 (packages/)

積木名稱 職責 對外介面 ADR
lewooogo-core 前端 Plugin 系統 LeWOOOgoPlugin, AgentProvider, DataAdapter ADR-003

🔗 模組依賴關係

apps/api (FastAPI BFF)
    ├── lewooogo-brain (AI 積木)
    │   └── lewooogo-data (資料積木)
    └── lewooogo-data (直接引用)

apps/web (Next.js)
    └── lewooogo-core (TS 積木)

📋 介面契約索引

Python 介面

介面 位置 職責
IProposalEngine lewooogo_brain.interfaces 決策提案生成
IIncidentProcessor lewooogo_brain.interfaces 事件聚合處理
IMemoryProvider lewooogo_data.interfaces 單層記憶體存取
IDualMemoryProvider lewooogo_data.interfaces 雙層記憶體 (Working + Episodic)

HTTP API 契約

端點 位置 職責
POST /api/v1/incidents/{id}/propose apps/api/src/api/v1/incidents.py 生成決策提案
GET /api/v1/incidents/{id} apps/api/src/api/v1/incidents.py 取得事件詳情

🚨 AI 開發者注意事項

  1. 新增積木前: 先讀取此檔案確認命名不衝突
  2. 新增積木後: 必須在此檔案登記職責與對外介面
  3. 修改介面前: 先讀取 docs/adr/ 確認架構決策
  4. 跨模組引用: 禁止直接 import必須透過介面抽象