Spaces:
Sleeping
Sleeping
| """State models used by the deep research workflow.""" | |
| import operator | |
| from dataclasses import dataclass, field | |
| from typing import List, Optional | |
| from typing_extensions import Annotated | |
| class TodoItem: | |
| """A single todo task item.""" | |
| id: int | |
| title: str | |
| intent: str | |
| query: str | |
| status: str = field(default="pending") | |
| summary: Optional[str] = field(default=None) | |
| sources_summary: Optional[str] = field(default=None) | |
| notices: list[str] = field(default_factory=list) | |
| note_id: Optional[str] = field(default=None) | |
| note_path: Optional[str] = field(default=None) | |
| stream_token: Optional[str] = field(default=None) | |
| class SummaryState: | |
| research_topic: str = field(default=None) # Report topic | |
| search_query: str = field(default=None) # Deprecated placeholder | |
| web_research_results: Annotated[list, operator.add] = field(default_factory=list) | |
| sources_gathered: Annotated[list, operator.add] = field(default_factory=list) | |
| research_loop_count: int = field(default=0) # Research loop count | |
| running_summary: str = field(default=None) # Legacy summary field | |
| todo_items: Annotated[list, operator.add] = field(default_factory=list) | |
| structured_report: Optional[str] = field(default=None) | |
| report_note_id: Optional[str] = field(default=None) | |
| report_note_path: Optional[str] = field(default=None) | |
| class SummaryStateInput: | |
| research_topic: str = field(default=None) # Report topic | |
| class SummaryStateOutput: | |
| running_summary: str = field(default=None) # Backward-compatible text | |
| report_markdown: Optional[str] = field(default=None) | |
| todo_items: List[TodoItem] = field(default_factory=list) | |