DeepBoner / docs /bugs /P3_ARCHITECTURAL_GAP_EPHEMERAL_MEMORY.md
VibecoderMcSwaggins's picture
fix(P0): Implement SPEC_06 - Simple Mode Synthesis Fix (#71)
5cac97d unverified
|
raw
history blame
1.13 kB
# P3: Ephemeral Memory Architecture (No Persistence)
**Status:** OPEN
**Priority:** P3 (Feature/Architecture Gap)
**Found By:** Codebase Investigation
**Date:** 2025-11-29
## Description
The current `EmbeddingService` (`src/services/embeddings.py`) initializes an **in-memory** ChromaDB client (`chromadb.Client()`) and creates a random UUID-based collection for every new session.
While `src/utils/config.py` defines a `chroma_db_path` for persistence, it is currently **ignored**.
## Impact
1. **No Long-Term Learning:** The agent cannot "remember" research from previous runs. Every time you restart the app, it starts from zero.
2. **Redundant Costs:** If a user researches "Diabetes" twice, the agent re-searches and re-embeds the same papers, wasting tokens and compute time.
## Technical Details
- **Current:** `self._client = chromadb.Client()` (In-Memory)
- **Required:** `self._client = chromadb.PersistentClient(path=settings.chroma_db_path)`
## Recommendation
For a "Hackathon Demo," this is **low priority** (ephemeral is fine).
For a "Real Product," this is **critical** (users expect a library of research).