Skip to content

Commit c298f92

Browse files
authored
refactor(langchain): clarify session commit policy helper (volcengine#2283)
1 parent a88007b commit c298f92

4 files changed

Lines changed: 14 additions & 8 deletions

File tree

openviking/integrations/langchain/client.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,12 +158,12 @@ def ensure_client(connection: OpenVikingConnection) -> Any:
158158
return client
159159

160160

161-
def maybe_commit_session(
161+
def apply_commit_policy(
162162
client: Any,
163163
session_id: str,
164164
policy: OpenVikingCommitPolicy | None,
165165
) -> dict[str, Any] | None:
166-
"""Commit a session if the configured policy says the live tail is ready."""
166+
"""Apply the configured session commit policy."""
167167

168168
if policy is None or policy.mode == "never":
169169
return None

openviking/integrations/langchain/history.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@
2525
from openviking.integrations.langchain.client import (
2626
OpenVikingCommitPolicy,
2727
OpenVikingConnection,
28+
apply_commit_policy,
2829
call_openviking,
2930
ensure_client,
3031
extract_message_text,
31-
maybe_commit_session,
3232
)
3333

3434
logger = logging.getLogger(__name__)
@@ -121,7 +121,7 @@ def add_messages(self, messages: Sequence[BaseMessage]) -> None:
121121
session_id=self.session_id,
122122
messages=batch,
123123
)
124-
maybe_commit_session(client, self.session_id, self.commit_policy)
124+
apply_commit_policy(client, self.session_id, self.commit_policy)
125125

126126
def clear(self) -> None:
127127
client = self._get_client()

openviking/integrations/langchain/middleware.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,11 @@
2626
from openviking.integrations.langchain.client import (
2727
OpenVikingCommitPolicy,
2828
OpenVikingConnection,
29+
apply_commit_policy,
2930
call_openviking,
3031
ensure_client,
3132
extract_message_text,
3233
get_latest_user_text,
33-
maybe_commit_session,
3434
)
3535
from openviking.integrations.langchain.context import (
3636
OPENVIKING_CONTEXT_MARKER,
@@ -203,7 +203,7 @@ def after_agent(self, state: dict[str, Any], runtime: Any) -> dict[str, Any] | N
203203
added += 1
204204
self._captured_signatures[session_id] = current_signatures
205205
if added:
206-
maybe_commit_session(client, session_id, self.commit_policy)
206+
apply_commit_policy(client, session_id, self.commit_policy)
207207
return None
208208

209209
def _resolve_session_id(self, state: dict[str, Any], runtime: Any) -> str:

tests/unit/test_langchain_integration.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from langchain_core.runnables import RunnableLambda
1010
from langgraph.store.base import PutOp
1111

12+
import openviking.integrations.langchain.client as client_helpers
1213
from openviking.integrations.langchain import (
1314
InMemoryOpenVikingClient,
1415
OpenVikingChatMessageHistory,
@@ -22,9 +23,9 @@
2223
)
2324
from openviking.integrations.langchain.client import (
2425
OpenVikingConnection,
26+
apply_commit_policy,
2527
call_openviking,
2628
ensure_client,
27-
maybe_commit_session,
2829
)
2930
from openviking.integrations.langchain.history import (
3031
langchain_message_to_openviking,
@@ -34,6 +35,11 @@
3435
from openviking.integrations.langchain.tools import _archive_grep_pattern
3536

3637

38+
def test_langchain_client_exposes_apply_commit_policy_without_legacy_alias():
39+
assert hasattr(client_helpers, "apply_commit_policy")
40+
assert not hasattr(client_helpers, "maybe_commit_session")
41+
42+
3743
def test_retriever_returns_langchain_documents():
3844
client = InMemoryOpenVikingClient(
3945
{
@@ -958,7 +964,7 @@ def write(self, uri, content, mode="replace", **kwargs):
958964

959965
def test_pending_token_commit_does_not_create_missing_session():
960966
client = InMemoryOpenVikingClient()
961-
result = maybe_commit_session(
967+
result = apply_commit_policy(
962968
client,
963969
"missing-commit-session",
964970
OpenVikingCommitPolicy(mode="pending_tokens", pending_token_threshold=1),

0 commit comments

Comments
 (0)