Files
gpt-pilot/core/agents/task_completer.py
2024-06-13 13:52:15 +02:00

40 lines
1.4 KiB
Python

from core.agents.base import BaseAgent
from core.agents.response import AgentResponse
from core.log import get_logger
from core.telemetry import telemetry
log = get_logger(__name__)
class TaskCompleter(BaseAgent):
agent_type = "pythagora"
display_name = "Pythagora"
async def run(self) -> AgentResponse:
current_task_index1 = self.current_state.tasks.index(self.current_state.current_task) + 1
self.next_state.action = f"Task #{current_task_index1} complete"
self.next_state.complete_task()
await self.state_manager.log_task_completed()
tasks = self.current_state.tasks
source = self.current_state.current_epic.get("source", "app")
await self.ui.send_task_progress(
tasks.index(self.current_state.current_task) + 1,
len(tasks),
self.current_state.current_task["description"],
source,
"done",
self.current_state.get_source_index(source),
tasks,
)
await telemetry.trace_code_event(
"task-end",
{
"task_index": current_task_index1,
"num_tasks": len(self.current_state.tasks),
"num_epics": len(self.current_state.epics),
"num_iterations": len(self.current_state.iterations),
},
)
return AgentResponse.done(self)