From e4ba3f4c4c759d748caef95da425485554dbe70b Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Sun, 3 Aug 2025 17:20:37 +0000 Subject: [PATCH] fix: resolve CI failures - remove unused imports and fix event bus registration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove unused typing imports from execution_trace.py and execution_trace_collector.py - Fix event bus registration by removing unregister_handler calls (method doesn't exist) - Remove storing handler references since register_handler returns None - Addresses lint and type-checker CI failures Co-Authored-By: João --- src/crewai/crews/execution_trace.py | 2 +- .../utilities/execution_trace_collector.py | 22 ++++++------------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/crewai/crews/execution_trace.py b/src/crewai/crews/execution_trace.py index d952c2746..8a48f91ca 100644 --- a/src/crewai/crews/execution_trace.py +++ b/src/crewai/crews/execution_trace.py @@ -1,5 +1,5 @@ from datetime import datetime -from typing import Any, Dict, List, Optional, Union +from typing import Any, Dict, List, Optional from pydantic import BaseModel, Field class ExecutionStep(BaseModel): diff --git a/src/crewai/utilities/execution_trace_collector.py b/src/crewai/utilities/execution_trace_collector.py index efbee0178..ac97e91a0 100644 --- a/src/crewai/utilities/execution_trace_collector.py +++ b/src/crewai/utilities/execution_trace_collector.py @@ -1,5 +1,4 @@ from datetime import datetime -from typing import Any, Dict, List, Optional from crewai.crews.execution_trace import ExecutionStep, ExecutionTrace from crewai.utilities.events.crewai_event_bus import crewai_event_bus from crewai.utilities.events.agent_events import ( @@ -22,32 +21,25 @@ class ExecutionTraceCollector: def __init__(self): self.trace = ExecutionTrace() self.is_collecting = False - self._event_handlers = [] def start_collecting(self) -> None: """Start collecting execution events.""" self.is_collecting = True self.trace = ExecutionTrace(start_time=datetime.now()) - self._event_handlers = [ - crewai_event_bus.register_handler(TaskStartedEvent, self._handle_task_started), - crewai_event_bus.register_handler(TaskCompletedEvent, self._handle_task_completed), - crewai_event_bus.register_handler(AgentExecutionStartedEvent, self._handle_agent_started), - crewai_event_bus.register_handler(AgentExecutionCompletedEvent, self._handle_agent_completed), - crewai_event_bus.register_handler(AgentLogsExecutionEvent, self._handle_agent_logs), - crewai_event_bus.register_handler(ToolUsageStartedEvent, self._handle_tool_started), - crewai_event_bus.register_handler(ToolUsageFinishedEvent, self._handle_tool_finished), - ] + crewai_event_bus.register_handler(TaskStartedEvent, self._handle_task_started) + crewai_event_bus.register_handler(TaskCompletedEvent, self._handle_task_completed) + crewai_event_bus.register_handler(AgentExecutionStartedEvent, self._handle_agent_started) + crewai_event_bus.register_handler(AgentExecutionCompletedEvent, self._handle_agent_completed) + crewai_event_bus.register_handler(AgentLogsExecutionEvent, self._handle_agent_logs) + crewai_event_bus.register_handler(ToolUsageStartedEvent, self._handle_tool_started) + crewai_event_bus.register_handler(ToolUsageFinishedEvent, self._handle_tool_finished) def stop_collecting(self) -> ExecutionTrace: """Stop collecting and return the execution trace.""" self.is_collecting = False self.trace.end_time = datetime.now() - for handler in self._event_handlers: - crewai_event_bus.unregister_handler(handler) - self._event_handlers.clear() - return self.trace