Files
wiseclaw/backend/app/memory/store.py

18 lines
597 B
Python

from sqlalchemy import select
from sqlalchemy.orm import Session
from app.db import MemoryItemORM
class MemoryService:
def __init__(self, session: Session) -> None:
self.session = session
def add_item(self, content: str) -> None:
self.session.add(MemoryItemORM(content=content, kind="message"))
self.session.flush()
def latest_items(self, limit: int = 10) -> list[str]:
stmt = select(MemoryItemORM).order_by(MemoryItemORM.created_at.desc(), MemoryItemORM.id.desc()).limit(limit)
return [item.content for item in self.session.scalars(stmt)]