diff --git a/matter_server/server/device_controller.py b/matter_server/server/device_controller.py index bfe57795..0948f696 100644 --- a/matter_server/server/device_controller.py +++ b/matter_server/server/device_controller.py @@ -1424,6 +1424,7 @@ def _setup_node_create_task(self, node_id: int) -> asyncio.Task | None: node_logger.debug("Setup task exists already for this Node") return None task = asyncio.create_task(self._setup_node(node_id)) + task.add_done_callback(lambda _: self._setup_node_tasks.pop(node_id, None)) self._setup_node_tasks[node_id] = task return task