Home / Function/ test_inner_state_preserved_when_outer_has_no_conflict() — langchain Function Reference

test_inner_state_preserved_when_outer_has_no_conflict() — langchain Function Reference

Architecture documentation for the test_inner_state_preserved_when_outer_has_no_conflict() function in test_wrap_model_call_state_update.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  1fb03fce_737e_5cfa_0692_0994faac9b9f["test_inner_state_preserved_when_outer_has_no_conflict()"]
  269d8393_43ba_e665_6d86_95d75ce0c396["TestComposition"]
  1fb03fce_737e_5cfa_0692_0994faac9b9f -->|defined in| 269d8393_43ba_e665_6d86_95d75ce0c396
  style 1fb03fce_737e_5cfa_0692_0994faac9b9f fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call_state_update.py lines 486–531

    def test_inner_state_preserved_when_outer_has_no_conflict(self) -> None:
        """Inner's command keys are preserved when outer doesn't conflict."""

        class MyState(AgentState):
            inner_key: str
            outer_key: str

        class OuterMiddleware(AgentMiddleware):
            state_schema = MyState  # type: ignore[assignment]

            def wrap_model_call(
                self,
                request: ModelRequest,
                handler: Callable[[ModelRequest], ModelResponse],
            ) -> ExtendedModelResponse:
                response = handler(request)
                return ExtendedModelResponse(
                    model_response=response,
                    command=Command(update={"outer_key": "from_outer"}),
                )

        class InnerMiddleware(AgentMiddleware):
            state_schema = MyState  # type: ignore[assignment]

            def wrap_model_call(
                self,
                request: ModelRequest,
                handler: Callable[[ModelRequest], ModelResponse],
            ) -> ExtendedModelResponse:
                response = handler(request)
                return ExtendedModelResponse(
                    model_response=response,
                    command=Command(update={"inner_key": "from_inner"}),
                )

        model = GenericFakeChatModel(messages=iter([AIMessage(content="Hello")]))
        agent = create_agent(
            model=model,
            middleware=[OuterMiddleware(), InnerMiddleware()],
        )

        result = agent.invoke({"messages": [HumanMessage("Hi")]})

        # Both keys survive since there's no conflict
        messages = result["messages"]
        assert messages[-1].content == "Hello"

Domain

Subdomains

Frequently Asked Questions

What does test_inner_state_preserved_when_outer_has_no_conflict() do?
test_inner_state_preserved_when_outer_has_no_conflict() is a function in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call_state_update.py.
Where is test_inner_state_preserved_when_outer_has_no_conflict() defined?
test_inner_state_preserved_when_outer_has_no_conflict() is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call_state_update.py at line 486.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free