feat(api): Explicitly define version method for all BaseNode subclasses (#21443)
This PR addresses issue #21441 by implementing explicit `version` method definitions for all `BaseNode` subclasses to improve code maintainability. ### Changes Added explicit `version` method definitions for all `BaseNode` subclasses: - `QuestionClassifierNode` - `KnowledgeRetrievalNode` - `AgentNode` Added comprehensive test suite to validate: 1. All subclasses of `BaseNode` have explicitly defined `version` method 2. All subclasses have required `_node_type` property 3. The `(node_type, node_version)` combination is unique across all subclasses
This commit is contained in:
@@ -39,6 +39,10 @@ class AgentNode(ToolNode):
|
||||
_node_data_cls = AgentNodeData # type: ignore
|
||||
_node_type = NodeType.AGENT
|
||||
|
||||
@classmethod
|
||||
def version(cls) -> str:
|
||||
return "1"
|
||||
|
||||
def _run(self) -> Generator:
|
||||
"""
|
||||
Run the agent node
|
||||
|
Reference in New Issue
Block a user