🔧 Bug Fix Release
Fixed
- Time Expression Parsing (Issue #396): Fixed time_expr parameter to correctly parse natural language time expressions
- Now correctly handles: "last week", "3 days ago", "last 5 days", "1 week ago"
- Changed from extract_time_expression() to parse_time_expression() in search_memories()
- Added comprehensive regression tests covering reported failures and edge cases
- ISO date workaround (after/before parameters) continues to work as before
What was broken?
The time_expr parameter in memory_search was failing for most natural language expressions:
- ❌ "last week" - returned empty results
- ❌ "3 days ago" - returned empty results
- ❌ "last 5 days" - returned error
- ✅ "yesterday" - worked (by coincidence)
What is fixed?
All natural language time expressions now work correctly:
- ✅ "last week" - returns memories from previous Monday-Sunday
- ✅ "3 days ago" - returns memories from exactly 3 days ago
- ✅ "last 5 days" - returns memories from last 5 days
- ✅ "1 week ago" - returns memories from 7 days ago
Testing
- 2 new comprehensive test functions added in tests/test_issue_396.py
- All existing tests continue to pass
- Regression coverage for reported issues and edge cases
Risk Assessment
Risk Level: LOW
- Single-line function change
- Well-tested time parser functions (14 existing tests + 2 new tests)
- No breaking changes to API
Full Changelog: https://github.com/doobidoo/mcp-memory-service/blob/main/CHANGELOG.md
Installation:
pip install --upgrade mcp-memory-serviceCloses #396