Files
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

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/ 具體實作

ADR Reference