refactor(langchain): use factory function for write_todos tool creation #34381
+32
−26
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
write_todostool definitions into a single factory function_create_write_todos_tool()TodoListMiddleware.__init__descriptionparameter, enabling customization while maintaining a single source of truthWhy
The
write_todostool was defined twice:TodoListMiddleware.__init__(line 174-186) - to support customtool_descriptionThis duplication could lead to inconsistencies if one definition is updated but not the other.
Test plan
pytest tests/unit_tests/agents/middleware/implementations/test_todo.py)write_todosandTodoListMiddlewarework exactly as before🤖 Generated with Claude Code