From a176f25b5059902032ecf70debf3e9958a659bad Mon Sep 17 00:00:00 2001 From: Denis Ginin Date: Tue, 30 Dec 2025 09:39:15 +0300 Subject: [PATCH] Unlink task in execution spans --- lib/crewai/src/crewai/events/event_listener.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/crewai/src/crewai/events/event_listener.py b/lib/crewai/src/crewai/events/event_listener.py index 1c7602587c..ba9b9ebb56 100644 --- a/lib/crewai/src/crewai/events/event_listener.py +++ b/lib/crewai/src/crewai/events/event_listener.py @@ -218,10 +218,9 @@ def on_task_started(source: Any, event: TaskStartedEvent) -> None: @crewai_event_bus.on(TaskCompletedEvent) def on_task_completed(source: Any, event: TaskCompletedEvent) -> None: # Handle telemetry - span = self.execution_spans.get(source) + span = self.execution_spans.pop(source, None) if span: self._telemetry.task_ended(span, source, source.agent.crew) - self.execution_spans[source] = None # Pass task name if it exists task_name = source.name if hasattr(source, "name") and source.name else None @@ -235,11 +234,10 @@ def on_task_completed(source: Any, event: TaskCompletedEvent) -> None: @crewai_event_bus.on(TaskFailedEvent) def on_task_failed(source: Any, event: TaskFailedEvent) -> None: - span = self.execution_spans.get(source) + span = self.execution_spans.pop(source, None) if span: if source.agent and source.agent.crew: self._telemetry.task_ended(span, source, source.agent.crew) - self.execution_spans[source] = None # Pass task name if it exists task_name = source.name if hasattr(source, "name") and source.name else None