"A conversation that cannot remember what was said is not a conversation."
The Problem Today
Even with an IConversation abstraction, tracking state across multiple turns requires a persistence mechanism. There is no standard model for what conversation state looks like or how it transitions.
What We Are Building
A conversation state model that tracks participants, channel, status transitions (open → active → closed / expired), message history (both sent and received messages), and arbitrary metadata. A default in-memory implementation is provided for testing; the state store interface is designed for easy replacement with database-backed implementations.
Benefits
- Conversation state is structured and queryable, not ad-hoc
- The in-memory store enables conversation flow testing without a database
- The state store interface makes persistence backend replacement trivial
The Problem Today
Even with an
IConversationabstraction, tracking state across multiple turns requires a persistence mechanism. There is no standard model for what conversation state looks like or how it transitions.What We Are Building
A conversation state model that tracks participants, channel, status transitions (open → active → closed / expired), message history (both sent and received messages), and arbitrary metadata. A default in-memory implementation is provided for testing; the state store interface is designed for easy replacement with database-backed implementations.
Benefits