Problem
BaseClient declares batch_add_messages, and the LangChain chat history path uses that contract for bulk session writes. The remote HTTP client implements it, but the embedded local client and the in-memory LangChain testing client do not.
That means code paths that are valid against the remote client can fail or require special-casing when the same integration is exercised with local or in-memory clients.
Expected behavior
All OpenViking client implementations that support session message writes should satisfy the same batch_add_messages contract.
Proposed fix
- Add
batch_add_messages to LocalClient.
- Add the same method to
InMemoryOpenVikingClient.
- Add regression coverage for both implementations.
Problem
BaseClientdeclaresbatch_add_messages, and the LangChain chat history path uses that contract for bulk session writes. The remote HTTP client implements it, but the embedded local client and the in-memory LangChain testing client do not.That means code paths that are valid against the remote client can fail or require special-casing when the same integration is exercised with local or in-memory clients.
Expected behavior
All OpenViking client implementations that support session message writes should satisfy the same
batch_add_messagescontract.Proposed fix
batch_add_messagestoLocalClient.InMemoryOpenVikingClient.