@@ -207,10 +207,10 @@ def test_read_session_legacy_migration(self, session_manager, mock_memory_client
207207 """Test reading a legacy session event triggers migration."""
208208 legacy_session_data = '{"session_id": "test-session-456", "session_type": "AGENT"}'
209209
210- # First call (new approach with metadata) returns empty
210+ # First call returns an event whose payload is no longer available
211211 # Second call (legacy actor_id) returns the legacy event
212212 mock_memory_client .list_events .side_effect = [
213- [], # New approach returns nothing
213+ [{ "eventId" : "expired-session-event" , "payload" : []}],
214214 [{"eventId" : "legacy-event-1" , "payload" : [{"blob" : legacy_session_data }]}], # Legacy approach
215215 ]
216216 mock_memory_client .gmdp_client .create_event .return_value = {"event" : {"eventId" : "new-event-1" }}
@@ -234,6 +234,19 @@ def test_read_session_legacy_migration(self, session_manager, mock_memory_client
234234 assert delete_call_kwargs ["actorId" ] == "session_test-session-456"
235235 assert delete_call_kwargs ["eventId" ] == "legacy-event-1"
236236
237+ def test_read_session_empty_payload_returns_none (self , session_manager , mock_memory_client ):
238+ """Test session events with empty payloads are treated as unavailable."""
239+ mock_memory_client .list_events .side_effect = [
240+ [{"eventId" : "session-event-1" , "payload" : []}],
241+ [{"eventId" : "legacy-event-1" , "payload" : []}],
242+ ]
243+
244+ result = session_manager .read_session ("test-session-456" )
245+
246+ assert result is None
247+ mock_memory_client .gmdp_client .create_event .assert_not_called ()
248+ mock_memory_client .gmdp_client .delete_event .assert_not_called ()
249+
237250 def test_create_agent (self , session_manager ):
238251 """Test creating an agent."""
239252 session_agent = SessionAgent (agent_id = "test-agent-123" , state = {}, conversation_manager_state = {})
0 commit comments