From 17e3fcbe1f7bae42f647e2b815759e3efa466ec9 Mon Sep 17 00:00:00 2001 From: GininDenis Date: Mon, 12 Jan 2026 10:58:42 +0300 Subject: [PATCH] fix: unlink task in execution spans Co-authored-by: Greyson LaLonde --- 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 5289deb06..c4a81da40 100644 --- a/lib/crewai/src/crewai/events/event_listener.py +++ b/lib/crewai/src/crewai/events/event_listener.py @@ -209,10 +209,9 @@ class EventListener(BaseEventListener): @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 = get_task_name(source) @@ -222,11 +221,10 @@ class EventListener(BaseEventListener): @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 = get_task_name(source)