feat(workers): Define WorkerState for the Researcher subgraph

This commit is contained in:
Yunxiao Xu
2026-02-23 06:08:54 -08:00
parent f4d09c07c4
commit 120b6fd11a
3 changed files with 34 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
from typing import TypedDict, List, Dict, Any, Optional
from langchain_core.messages import BaseMessage
class WorkerState(TypedDict):
"""Internal state for the Researcher worker subgraph."""
# Internal worker conversation
messages: List[BaseMessage]
# The specific sub-task assigned by the Orchestrator
task: str
# Search context
queries: List[str]
raw_results: List[str]
# Number of internal retry/refinement attempts
iterations: int
# The final research summary to return to the Orchestrator
result: Optional[str]

View File

@@ -0,0 +1,13 @@
from typing import get_type_hints, List
from ea_chatbot.graph.workers.researcher.state import WorkerState
def test_researcher_worker_state():
"""Verify that Researcher WorkerState has the required fields."""
hints = get_type_hints(WorkerState)
assert "messages" in hints
assert "task" in hints
assert "queries" in hints
assert "raw_results" in hints
assert "iterations" in hints
assert "result" in hints