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>
1.1 KiB
1.1 KiB
leWOOOgo Data
Memory Provider Abstraction Layer for AWOOOI 2.0
Overview
leWOOOgo Data 是 AWOOOI 智能運維平台的資料抽象層積木,負責:
- Working Memory: Redis 快取 (7 天 TTL)
- Episodic Memory: PostgreSQL/SQLite 永久保存
- Dual Memory: 雙層同步寫入
Installation
# 在 apps/api 中使用
pip install -e ../../packages/lewooogo-data
# 如需 PostgreSQL 支援
pip install -e "../../packages/lewooogo-data[pg]"
Usage
from lewooogo_data.interfaces import IMemoryProvider
from lewooogo_data.providers import RedisMemory, PgMemory, DualMemory
# 使用雙層記憶體
memory = DualMemory(
working=RedisMemory(redis_url="redis://localhost:6379"),
episodic=PgMemory(database_url="postgresql://...")
)
# 載入 Incident
incident = await memory.load(f"incident:{incident_id}")
Modules
| Module | Description |
|---|---|
interfaces/ |
ABC 定義 |
providers/ |
具體實作 |