-
Notifications
You must be signed in to change notification settings - Fork 12
Comparing changes
Open a pull request
base repository: redis/agent-memory-server
base: server/v0.9.3
head repository: redis/agent-memory-server
compare: server/v0.9.4
- 18 commits
- 31 files changed
- 4 contributors
Commits on Jul 28, 2025
-
Configuration menu - View commit details
-
Copy full SHA for a2a4373 - Browse repository at this point
Copy the full SHA a2a4373View commit details
Commits on Jul 31, 2025
-
Fix hash-based deduplication FT.AGGREGATE query execution
Fixes issue #31 where hash-based deduplication reported finding N groups but merged 0 memories, causing confusing logs. **Root Cause:** - FT.AGGREGATE query was executed as a single string via execute_command() - This bypassed the FILTER "@count>1" clause, returning all groups including unique memories (count=1) - Processing logic correctly skipped count<=1 groups, resulting in 0 merges **Solution:** - Change FT.AGGREGATE execution from single string to individual arguments - Use execute_command(*agg_query) instead of execute_command(agg_query) - This ensures the FILTER clause properly excludes unique memories - Added clearer logging messages **Testing:** - All existing tests pass - Verified fix with integration test showing: - 5 memories (2 duplicates + 3 unique) → 4 memories (1 duplicate removed) - Proper logging: "Found 1 groups with hash-based duplicates to process" - Correctly removes duplicate while preserving unique memories 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ac6d88b - Browse repository at this point
Copy the full SHA ac6d88bView commit details -
Fix broken summarization test that was modified during hash deduplica…
…tion work The test was expecting summarization to trigger but the messages were under the 1000 token limit. Increased the message length to ensure summarization happens and made the token count assertion more flexible since it varies based on actual content.
Configuration menu - View commit details
-
Copy full SHA for efb4dc6 - Browse repository at this point
Copy the full SHA efb4dc6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2f6462b - Browse repository at this point
Copy the full SHA 2f6462bView commit details -
Clean up obsolete window_size references and rename misleading variable
- Replace window_size parameter with model_name in examples and test files - Rename effective_window_size to effective_token_limit in API for clarity - Update all references to use the current token-based API instead of the old message-count based window_size approach
Configuration menu - View commit details
-
Copy full SHA for 55ea2ef - Browse repository at this point
Copy the full SHA 55ea2efView commit details -
1. Fix string consistency in FT.AGGREGATE query parameters - now all numeric parameters are explicitly converted to strings using str() 2. Handle tool messages and other unknown roles in memory_prompt API - treat non-user/assistant roles as assistant messages for MCP compatibility since MCP base only supports UserMessage and AssistantMessage types
Configuration menu - View commit details
-
Copy full SHA for 67d732c - Browse repository at this point
Copy the full SHA 67d732cView commit details -
Merge pull request #41 from redis/fix/hash-deduplication-issue-31
Fix hash-based deduplication FT.AGGREGATE query execution
Configuration menu - View commit details
-
Copy full SHA for 2b623b1 - Browse repository at this point
Copy the full SHA 2b623b1View commit details
Commits on Aug 1, 2025
-
feat: Make OpenAI and Anthropic API base URLs configurable
- Add openai_api_base and anthropic_api_base fields to Settings - Update AnthropicClientWrapper to accept and use base_url parameter - Update get_model_client to use configuration settings instead of env vars directly - Fix import style to use absolute imports - Format code with ruff Co-authored-by: Andrew Brookins <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2d38015 - Browse repository at this point
Copy the full SHA 2d38015View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9265184 - Browse repository at this point
Copy the full SHA 9265184View commit details -
fix: Use elif instead of if for Anthropic provider check
This prevents both OpenAI and Anthropic client wrappers from being created when the model is OpenAI, addressing the review comment. Co-authored-by: Andrew Brookins <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3df5d15 - Browse repository at this point
Copy the full SHA 3df5d15View commit details
Commits on Aug 2, 2025
-
Fix discrete_memory_extracted flag in MCP memory search
- Add ExtractedMemoryRecord class for explicit memories (defaults to 't') - Keep MemoryRecord for raw messages (defaults to 'f') - Update CreateMemoryRecordRequest to use ExtractedMemoryRecord - Update LenientMemoryRecord to inherit from ExtractedMemoryRecord - Fix Redis vector store adapter to preserve discrete_memory_extracted field during search - Update long_term_memory.py type signatures to accept both memory classes This resolves the issue where MCP-created memories were incorrectly showing discrete_memory_extracted='f' instead of 't' in search results.
Configuration menu - View commit details
-
Copy full SHA for 0299d9f - Browse repository at this point
Copy the full SHA 0299d9fView commit details -
Add test for MCP memory record defaults
- Add test_mcp_lenient_memory_record_defaults to verify LenientMemoryRecord and ExtractedMemoryRecord default to discrete_memory_extracted='t' - This ensures regression protection for the memory extraction flag fix
Configuration menu - View commit details
-
Copy full SHA for dac18fc - Browse repository at this point
Copy the full SHA dac18fcView commit details -
Add comprehensive regression test for discrete_memory_extracted flag
- Add test_redis_adapter_preserves_discrete_memory_extracted_flag to catch the bug where Redis vector store adapter wasn't preserving the discrete_memory_extracted field during search - Test verifies that memories with discrete_memory_extracted='t' are returned correctly, not defaulted to 'f' - Includes clear error message to help diagnose similar issues in the future
Configuration menu - View commit details
-
Copy full SHA for c705c9b - Browse repository at this point
Copy the full SHA c705c9bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7ab7205 - Browse repository at this point
Copy the full SHA 7ab7205View commit details -
Configuration menu - View commit details
-
Copy full SHA for f6d82cc - Browse repository at this point
Copy the full SHA f6d82ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 96857b9 - Browse repository at this point
Copy the full SHA 96857b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for be7f078 - Browse repository at this point
Copy the full SHA be7f078View commit details -
Merge pull request #43 from redis/claude/issue-42-20250801-1705
feat: Make OpenAI and Anthropic API base URLs configurable
Configuration menu - View commit details
-
Copy full SHA for da35c4e - Browse repository at this point
Copy the full SHA da35c4eView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff server/v0.9.3...server/v0.9.4