- Replace hardcoded user placeholder name lists in write_tools and
user_memory_service with shared _USER_PLACEHOLDER_NAMES constant
- Filter user placeholder names during alias merging in _merge_attribute
to prevent cross-role alias contamination on non-user entities
- Use toLower() in Cypher query for case-insensitive name matching
- Change PgSQL->Neo4j alias sync condition from 'if pg_aliases' to
'if info is not None' so empty aliases correctly clear stale data
- Replace Statement-based implicit memory count (count/3) with actual
MemorySummary node count filtered by DERIVED_FROM_STATEMENT relationship
- Add minimum threshold of 5 MemorySummary nodes before reporting data
- Add _build_empty_profile() to return structured empty profile when
insufficient data exists, skipping unnecessary LLM calls
- Adjust multi-modal memory write behavior for text and visual data
- Mask API keys in model list response to prevent exposure
- Add capability-based filtering to the model list API
- Update ShortService and LongService constructors to accept db Session parameter for proper dependency injection instead of using module-level db instance
- Reorganize imports in memory_short_term_controller.py following PEP 8 conventions (stdlib, third-party, local imports)
- Add comprehensive docstrings with type hints to ShortService and LongService methods for better code documentation
- Fix import organization in memory_short_service.py to group related imports and improve readability
- Reorganize imports in user_memory_service.py to follow consistent import ordering patterns
- Update ShortService instantiation in analytics_memory_types to pass db parameter
- Remove module-level db instance initialization in favor of caller-managed database session lifecycle
- Add type annotations to method signatures (end_user_id: str, db: Session, return types)
- Improve code formatting and spacing consistency across memory service files
- Add workspace_id fallback parameter to memory config loading across all services
- Update hot_memory_tags.py to pass workspace_id when resolving memory configuration
- Enhance emotion_analytics_service.py to support workspace_id as fallback for config resolution
- Improve implicit_memory_service.py with workspace_id fallback in config loading
- Update memory_agent_service.py to handle workspace_id resolution and add refactoring TODO
- Enhance preference_analysis.jinja2 prompt with critical guidance on supporting_evidence extraction
- Add validation to check both config_id and workspace_id before raising configuration errors
- Improve error handling and logging for memory configuration resolution across services
- This enables more flexible memory configuration resolution when config_id is unavailable
* [changes]add user_summary language unification
* [add]Entity extraction, user memory, emotion suggestions, unified language type for writing
* [add]Complete the switch between Chinese and English for the emotion labels and emotion suggestions fields.
* [changes]add user_summary language unification
* [add]Entity extraction, user memory, emotion suggestions, unified language type for writing
* [add]Complete the switch between Chinese and English for the emotion labels and emotion suggestions fields.
* [changes]Modify the code based on the AI review
* [changes]《Modify the interface》
1.Remove the "/search/entity_graph" interface
2.Reconstruct the "/updated_end_user/profile" interface
3.Remove the "Update Username" interface
4.Fix the batch query of user association memory configuration
* [changes]《Modify the interface》
1.Remove the "/search/entity_graph" interface
2.Reconstruct the "/updated_end_user/profile" interface
3.Remove the "Update Username" interface
4.Fix the batch query of user association memory configuration
* [fix]Fix the error response type
* [fix]The repair model does not allow null values and does not support relational networks.
* [fix]The repair model does not allow null values and does not support relational networks.
* [changes]Restore field restrictions
* [refactor]Reconstructing forgotten, emotional, situational, and explicit memory statistics
* [refactor]Reconstructing forgotten, emotional, situational, and explicit memory statistics
* [changes]Improve the code based on AI review
* [changes]Statistics on work, perception, short-term, and implicit memory
* [changes]Statistics on work, perception, short-term, and implicit memory
* [changes]Replace the invisible memory calculation method
* [changes]Statistics on work, perception, short-term, and implicit memory
* [refactor]Reconstructing forgotten, emotional, situational, and explicit memory statistics
* [changes]Statistics on work, perception, short-term, and implicit memory
* [changes]Replace the invisible memory calculation method
* [refactor]Reconstructing forgotten, emotional, situational, and explicit memory statistics
* [refactor]Reconstructing forgotten, emotional, situational, and explicit memory statistics
* [changes]Improve the code based on AI review
* [refactor]Reconstruct episodic memory
* [refactor]Reconstructing explicit memory
* [refactor]Reconstruct episodic memory
* [refactor]Reconstructing explicit memory
* [changes]Based on the improvement of AI review
* [changes]Modify the routing
* [changes]Uniform routing format
* [fix]Fix the failure in parsing the timestamp.
* [refactor]Reconstruct episodic memory
* [refactor]Reconstructing explicit memory
* [changes]Based on the improvement of AI review
* [changes]Modify the routing
* [changes]Uniform routing format
* [fix]Fix the failure in parsing the timestamp.
* [deleted]Delete migration files
* [refactor]Reconstruct episodic memory
* [refactor]Reconstructing explicit memory
* [changes]Based on the improvement of AI review
* [changes]Modify the routing
* [changes]Uniform routing format
* [fix]Fix the failure in parsing the timestamp.
* [deleted]Delete migration files
* feat: add database migration 9ab9b6393f32_20261511
* [changes]Request to remove 'config_id' has been received.
* [add]Add the access history record table
* [changes]Request to remove 'config_id' has been received.
* [add]Add the access history record table
* [add]Obtain the record of the forgetting trend
* [changes]Based on the AI's suggestion, make the necessary modifications.
* [fix]fix memory insights
* [fix]fix memory insights
* [fix]Based on the correction of the code by sourcery-ai
* [fix]Restore user information archive and one-sentence summary
[fix]Fix the data structure + implement memory dashboard display
* fix/othername-name: (18 commits squashed)
- [fix]Fix the issue with the display of the user's memory list
- [fix]Ensure the six dimensions of emotional expression
- [fix]Fix the issue with the display of the user's memory list
- [fix]Ensure the six dimensions of emotional expression
- Merge branch 'fix/othername-name' of codeup.aliyun.com:redbearai/python/redbear-mem-open into fix/othername-name
- [fix]Restore the display of memory types
- [fix]Fix the issue with the display of the user's memory list
- [fix]Ensure the six dimensions of emotional expression
- [fix]Restore the display of memory types
- Merge branch 'fix/othername-name' of codeup.aliyun.com:redbearai/python/redbear-mem-open into fix/othername-name
- [updated]Update the title of the "analytics/node_statistics" log
- [fix]Fix the data structure + implement memory dashboard display
- [fix]Fix the issue with the display of the user's memory list
- [fix]Restore the display of memory types
- [fix]Fix the issue with the display of the user's memory list
- [fix]Restore the display of memory types
- [fix]Fix the data structure + implement memory dashboard display
- Merge branch 'fix/othername-name' of codeup.aliyun.com:redbearai/python/redbear-mem-open into fix/othername-name
Signed-off-by: 乐力齐 <accounts_690c7b0af9007d7e338af636@mail.teambition.com>
Reviewed-by: aliyun6762716068 <accounts_68cb7c6b61f5dcc4200d6251@mail.teambition.com>
Merged-by: aliyun6762716068 <accounts_68cb7c6b61f5dcc4200d6251@mail.teambition.com>
CR-link: https://codeup.aliyun.com/redbearai/python/redbear-mem-open/change/48
[fix]Fix the bug that affects user memory.
* fix/othername-name: (11 commits squashed)
- [fix]Fix the issue with the display of the user's memory list
- [fix]Ensure the six dimensions of emotional expression
- [fix]Fix the issue with the display of the user's memory list
- [fix]Ensure the six dimensions of emotional expression
- Merge branch 'fix/othername-name' of codeup.aliyun.com:redbearai/python/redbear-mem-open into fix/othername-name
- [fix]Restore the display of memory types
- [fix]Fix the issue with the display of the user's memory list
- [fix]Ensure the six dimensions of emotional expression
- [fix]Restore the display of memory types
- Merge branch 'fix/othername-name' of codeup.aliyun.com:redbearai/python/redbear-mem-open into fix/othername-name
- [updated]Update the title of the "analytics/node_statistics" log
Signed-off-by: 乐力齐 <accounts_690c7b0af9007d7e338af636@mail.teambition.com>
Reviewed-by: aliyun6762716068 <accounts_68cb7c6b61f5dcc4200d6251@mail.teambition.com>
Merged-by: aliyun6762716068 <accounts_68cb7c6b61f5dcc4200d6251@mail.teambition.com>
CR-link: https://codeup.aliyun.com/redbearai/python/redbear-mem-open/change/47
- Move MemoryClientFactory from app.core.memory.client_factory to app.core.memory.utils.llm.llm_utils
- Update all evaluation modules to import MemoryClientFactory from new location (locomo, longmemeval, memsciqa)
- Move GenerateCacheRequest from memory_storage_service to memory_storage_schema
- Update memory_storage_controller imports to reflect schema reorganization
- Add analytics_user_summary import to memory_storage_controller from user_memory_service
- Consolidate utility imports across evaluation test files for consistency
- Improve code organization by centralizing LLM utilities in dedicated utils module