test_summarization_middleware_cutoff_at_start_of_tool_sequence() — langchain Function Reference
Architecture documentation for the test_summarization_middleware_cutoff_at_start_of_tool_sequence() function in test_summarization.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD d6226fda_2af2_24cd_a17a_85667afa3b1c["test_summarization_middleware_cutoff_at_start_of_tool_sequence()"] 1911a463_b67d_0301_5ef1_5c535dafc14a["test_summarization.py"] d6226fda_2af2_24cd_a17a_85667afa3b1c -->|defined in| 1911a463_b67d_0301_5ef1_5c535dafc14a style d6226fda_2af2_24cd_a17a_85667afa3b1c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py lines 1092–1110
def test_summarization_middleware_cutoff_at_start_of_tool_sequence() -> None:
"""Test cutoff when target lands exactly at the first ToolMessage."""
middleware = SummarizationMiddleware(
model=MockChatModel(), trigger=("messages", 8), keep=("messages", 4)
)
messages: list[AnyMessage] = [
HumanMessage(content="msg1"),
HumanMessage(content="msg2"),
AIMessage(content="ai", tool_calls=[{"name": "tool", "args": {}, "id": "call1"}]),
ToolMessage(content="result", tool_call_id="call1"),
HumanMessage(content="msg3"),
HumanMessage(content="msg4"),
]
# Target cutoff index is len(messages) - messages_to_keep = 6 - 4 = 2
# Index 2 is an AIMessage (safe cutoff point), so no adjustment needed
cutoff = middleware._find_safe_cutoff(messages, messages_to_keep=4)
assert cutoff == 2
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does test_summarization_middleware_cutoff_at_start_of_tool_sequence() do?
test_summarization_middleware_cutoff_at_start_of_tool_sequence() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py.
Where is test_summarization_middleware_cutoff_at_start_of_tool_sequence() defined?
test_summarization_middleware_cutoff_at_start_of_tool_sequence() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py at line 1092.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free