| from dataclasses import dataclass, field | |
| class State: | |
| graph_state: str = "" | |
| logs: list[str] = field(default_factory=list) | |
| def set_graph_state(self, actor: str, value: str) -> None: | |
| previous_value = self.graph_state | |
| self.graph_state = value | |
| self.logs.append( | |
| f"{actor}: graph_state changed from {previous_value!r} to {value!r}" | |
| ) | |
| def log_node_end(self, node_name: str) -> None: | |
| self.logs.append( | |
| f"{node_name}: finished with graph_state={self.graph_state!r}" | |
| ) | |