From 48e279371952fc97c8a438343dccc9650a7da5ac Mon Sep 17 00:00:00 2001 From: YueGuobin Date: Wed, 4 Mar 2026 22:09:09 +0800 Subject: [PATCH] feat(agent): initialize checkpointer before chat session retrieval Add initialization check for `_checkpointer_conn` in `AgentService` to ensure the checkpointer database connection exists before attempting to retrieve chat sessions. This prevents potential null reference errors when the checkpointer hasn't been initialized yet during agent operations. --- gns3server/agent/gns3_copilot/agent_service.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gns3server/agent/gns3_copilot/agent_service.py b/gns3server/agent/gns3_copilot/agent_service.py index efb4afcdf..b4e739a4b 100644 --- a/gns3server/agent/gns3_copilot/agent_service.py +++ b/gns3server/agent/gns3_copilot/agent_service.py @@ -11,7 +11,7 @@ import json import logging import os from datetime import datetime -from typing import AsyncGenerator, Dict, Any, Optional +from typing import AsyncGenerator, Dict, Any, Optional, List from uuid import uuid4 import aiosqlite @@ -177,6 +177,10 @@ class AgentService: mode, ) + # Ensure checkpointer is initialized + if not self._checkpointer_conn: + await self._get_checkpointer() + # Get or create chat session repo = ChatSessionsRepository(self._checkpointer_conn) session = await repo.get_session_by_thread(session_id)