@@ -25,8 +25,8 @@ def agentcore_config():
2525def agentcore_config_with_retrieval ():
2626 """Create a test AgentCore Memory configuration with retrieval config."""
2727 retrieval_config = {
28- "user_preferences/{actorId}" : RetrievalConfig (top_k = 5 , relevance_score = 0.3 ),
29- "session_context/{sessionId}" : RetrievalConfig (top_k = 3 , relevance_score = 0.5 ),
28+ "user_preferences/{actorId}/ " : RetrievalConfig (top_k = 5 , relevance_score = 0.3 ),
29+ "session_context/{sessionId}/ " : RetrievalConfig (top_k = 3 , relevance_score = 0.5 ),
3030 }
3131 return AgentCoreMemoryConfig (
3232 memory_id = "test-memory-123" ,
@@ -471,17 +471,17 @@ def test_validate_namespace_resolution(self, session_manager):
471471
472472 # Valid resolution
473473 assert session_manager ._validate_namespace_resolution (
474- "user_preferences/{actorId}" , "user_preferences/test-actor"
474+ "user_preferences/{actorId}/ " , "user_preferences/test-actor/ "
475475 )
476476
477477 # Mock invalid resolution
478478 session_manager ._validate_namespace_resolution .return_value = False
479479 assert not session_manager ._validate_namespace_resolution (
480- "user_preferences/{actorId}" , "user_preferences/{actorId}"
480+ "user_preferences/{actorId}/ " , "user_preferences/{actorId}/ "
481481 )
482482
483483 # Invalid - empty result
484- assert not session_manager ._validate_namespace_resolution ("test_namespace" , "" )
484+ assert not session_manager ._validate_namespace_resolution ("test_namespace/ " , "" )
485485
486486 def test_load_long_term_memories_with_validation_failure (self , mock_memory_client , test_agent ):
487487 """Test LTM loading with namespace validation failure."""
@@ -490,7 +490,7 @@ def test_load_long_term_memories_with_validation_failure(self, mock_memory_clien
490490 memory_id = "test-memory-123" ,
491491 session_id = "test-session-456" ,
492492 actor_id = "test-actor" ,
493- retrieval_config = {"user_preferences/{invalidVar}" : RetrievalConfig (top_k = 5 , relevance_score = 0.3 )},
493+ retrieval_config = {"user_preferences/{invalidVar}/ " : RetrievalConfig (top_k = 5 , relevance_score = 0.3 )},
494494 )
495495
496496 with patch (
@@ -563,23 +563,23 @@ def mock_generate_query(namespace, config, agent):
563563
564564 # Test preferences namespace
565565 config = RetrievalConfig (top_k = 5 , relevance_score = 0.3 )
566- query = session_manager ._generate_initialization_query ("user_preferences/{actorId}" , config , test_agent )
566+ query = session_manager ._generate_initialization_query ("user_preferences/{actorId}/ " , config , test_agent )
567567 assert query == "user preferences settings"
568568
569569 # Test context namespace
570- query = session_manager ._generate_initialization_query ("session_context/{sessionId}" , config , test_agent )
570+ query = session_manager ._generate_initialization_query ("session_context/{sessionId}/ " , config , test_agent )
571571 assert query == "conversation context history"
572572
573573 # Test semantic namespace
574- query = session_manager ._generate_initialization_query ("semantic_knowledge" , config , test_agent )
574+ query = session_manager ._generate_initialization_query ("semantic_knowledge/ " , config , test_agent )
575575 assert query == "facts knowledge information"
576576
577577 # Test facts namespace
578- query = session_manager ._generate_initialization_query ("facts_database" , config , test_agent )
578+ query = session_manager ._generate_initialization_query ("facts_database/ " , config , test_agent )
579579 assert query == "facts knowledge information"
580580
581581 # Test fallback
582- query = session_manager ._generate_initialization_query ("unknown_namespace" , config , test_agent )
582+ query = session_manager ._generate_initialization_query ("unknown_namespace/ " , config , test_agent )
583583 assert query == "context preferences facts"
584584
585585 def test_generate_initialization_query_custom (self , session_manager , test_agent ):
@@ -589,7 +589,7 @@ def test_generate_initialization_query_custom(self, session_manager, test_agent)
589589 # Mock the method since it doesn't exist yet
590590 session_manager ._generate_initialization_query = Mock (return_value = "custom query for testing" )
591591
592- query = session_manager ._generate_initialization_query ("user_preferences/{actorId}" , config , test_agent )
592+ query = session_manager ._generate_initialization_query ("user_preferences/{actorId}/ " , config , test_agent )
593593 assert query == "custom query for testing"
594594
595595 def test_retrieve_contextual_memories_all_namespaces (self , agentcore_config_with_retrieval , mock_memory_client ):
@@ -617,11 +617,11 @@ def test_retrieve_contextual_memories_all_namespaces(self, agentcore_config_with
617617 manager .retrieve_contextual_memories = Mock (
618618 return_value = [
619619 {
620- "namespace" : "user_preferences/test-actor-789" ,
620+ "namespace" : "user_preferences/test-actor-789/ " ,
621621 "memories" : [{"content" : "Relevant memory" , "relevanceScore" : 0.8 }],
622622 },
623623 {
624- "namespace" : "session_context/test-session-456" ,
624+ "namespace" : "session_context/test-session-456/ " ,
625625 "memories" : [{"content" : "Less relevant memory" , "relevanceScore" : 0.2 }],
626626 },
627627 ]
@@ -657,13 +657,13 @@ def test_retrieve_contextual_memories_specific_namespaces(
657657 manager .retrieve_contextual_memories = Mock (
658658 return_value = [
659659 {
660- "namespace" : "user_preferences/test-actor-789" ,
660+ "namespace" : "user_preferences/test-actor-789/ " ,
661661 "memories" : [{"content" : "User preference memory" , "relevanceScore" : 0.9 }],
662662 }
663663 ]
664664 )
665665 results = manager .retrieve_contextual_memories (
666- "What are my preferences?" , namespaces = ["user_preferences/{actorId}" ]
666+ "What are my preferences?" , namespaces = ["user_preferences/{actorId}/ " ]
667667 )
668668
669669 # Should return results for specified namespace only
@@ -695,7 +695,7 @@ def test_retrieve_contextual_memories_invalid_namespace(self, agentcore_config_w
695695 ):
696696 manager = AgentCoreMemorySessionManager (agentcore_config_with_retrieval )
697697 manager .retrieve_contextual_memories = Mock (return_value = {})
698- results = manager .retrieve_contextual_memories ("test query" , namespaces = ["nonexistent_namespace" ])
698+ results = manager .retrieve_contextual_memories ("test query" , namespaces = ["nonexistent_namespace/ " ])
699699
700700 # Should return empty results
701701 assert results == {}
@@ -755,27 +755,27 @@ def test_load_long_term_memories_exception_handling(
755755 def test_namespace_variable_resolution (self , session_manager ):
756756 """Test namespace variable resolution with various combinations."""
757757 # Test basic variable resolution
758- namespace = "user_preferences/{actorId}"
758+ namespace = "user_preferences/{actorId}/ "
759759 resolved = namespace .format (
760760 actorId = session_manager .config .actor_id , sessionId = session_manager .config .session_id , memoryStrategyId = ""
761761 )
762- assert resolved == "user_preferences/test-actor-789"
762+ assert resolved == "user_preferences/test-actor-789/ "
763763
764764 # Test multiple variables
765- namespace = "context/{sessionId}/actor/{actorId}"
765+ namespace = "context/{sessionId}/actor/{actorId}/ "
766766 resolved = namespace .format (
767767 actorId = session_manager .config .actor_id , sessionId = session_manager .config .session_id , memoryStrategyId = ""
768768 )
769- assert resolved == "context/test-session-456/actor/test-actor-789"
769+ assert resolved == "context/test-session-456/actor/test-actor-789/ "
770770
771771 # Test with strategy ID
772- namespace = "strategy/{memoryStrategyId}/user/{actorId}"
772+ namespace = "strategy/{memoryStrategyId}/user/{actorId}/ "
773773 resolved = namespace .format (
774774 actorId = session_manager .config .actor_id ,
775775 sessionId = session_manager .config .session_id ,
776776 memoryStrategyId = "test_strategy" ,
777777 )
778- assert resolved == "strategy/test_strategy/user/test-actor-789"
778+ assert resolved == "strategy/test_strategy/user/test-actor-789/ "
779779
780780 def test_generate_initialization_query_patterns (self , session_manager , test_agent ):
781781 """Test initialization query generation with various namespace patterns."""
@@ -796,17 +796,17 @@ def mock_generate_query(namespace, config, agent):
796796
797797 # Test various preference patterns
798798 patterns_and_expected = [
799- ("user_preferences/{actorId}" , "user preferences settings" ),
800- ("preferences/global" , "user preferences settings" ),
801- ("my_preferences" , "user preferences settings" ),
802- ("session_context/{sessionId}" , "conversation context history" ),
803- ("context/history" , "conversation context history" ),
804- ("conversation_context" , "conversation context history" ),
805- ("semantic_memory" , "facts knowledge information" ),
806- ("facts_database" , "facts knowledge information" ),
807- ("knowledge_semantic" , "facts knowledge information" ),
808- ("random_namespace" , "context preferences facts" ),
809- ("unknown" , "context preferences facts" ),
799+ ("user_preferences/{actorId}/ " , "user preferences settings" ),
800+ ("preferences/global/ " , "user preferences settings" ),
801+ ("my_preferences/ " , "user preferences settings" ),
802+ ("session_context/{sessionId}/ " , "conversation context history" ),
803+ ("context/history/ " , "conversation context history" ),
804+ ("conversation_context/ " , "conversation context history" ),
805+ ("semantic_memory/ " , "facts knowledge information" ),
806+ ("facts_database/ " , "facts knowledge information" ),
807+ ("knowledge_semantic/ " , "facts knowledge information" ),
808+ ("random_namespace/ " , "context preferences facts" ),
809+ ("unknown/ " , "context preferences facts" ),
810810 ]
811811
812812 for namespace , expected_query in patterns_and_expected :
@@ -1063,7 +1063,7 @@ def test_retrieve_customer_context_filters_by_relevance_score(self, mock_memory_
10631063 memory_id = "test-memory-123" ,
10641064 session_id = "test-session-456" ,
10651065 actor_id = "test-actor-789" ,
1066- retrieval_config = {"test_namespace" : RetrievalConfig (top_k = 10 , relevance_score = 0.5 )},
1066+ retrieval_config = {"test_namespace/ " : RetrievalConfig (top_k = 10 , relevance_score = 0.5 )},
10671067 )
10681068
10691069 with patch (
0 commit comments