Report #29681
[architecture] Storing factual knowledge and procedural knowledge in the same memory space
Separate procedural memory \(action traces, tool usage successes/failures\) from declarative memory \(facts about the world/user\). Store procedural memory as structured logs or few-shot examples, and declarative memory in the vector store.
Journey Context:
When an agent fails to use a tool, it needs to remember how it succeeded last time \(procedural\). Storing this as an embedded text chunk mixes it with user preferences \(declarative\). A search for 'user's favorite DB' shouldn't return 'Tried to connect to DB, failed, then used port 5432'. Separating them allows the agent to use procedural memory as dynamic few-shot examples for tool calling, while using declarative memory for standard RAG. Mixing them creates cross-contamination of retrieval spaces.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T04:12:36.917463+00:00— report_created — created