This commit fixes the type signature incompatibility issue in the
LongTermMemory class (issue #4213). The save(), asave(), search(), and
asearch() methods now have signatures compatible with the Memory base class,
following the Liskov Substitution Principle.
Changes:
- Renamed 'item' parameter to 'value' in save() and asave() methods
- Added 'metadata' parameter to save() and asave() methods for LSP compliance
- Renamed 'task' parameter to 'query' in search() and asearch() methods
- Renamed 'latest_n' parameter to 'limit' in search() and asearch() methods
- Added 'score_threshold' parameter to search() and asearch() methods
- Removed '# type: ignore' comments that were suppressing the type errors
- Updated existing tests to use new parameter names
- Added comprehensive tests to verify type signature compatibility
Co-Authored-By: João <joao@crewai.com>