Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions strix/interface/tui.py
Original file line number Diff line number Diff line change
Expand Up @@ -471,7 +471,7 @@ def _update_ui_from_tracer(self) -> None:
return

agent_updates = False
for agent_id, agent_data in self.tracer.agents.items():
for agent_id, agent_data in list(self.tracer.agents.items()):
if agent_id not in self._displayed_agents:
self._add_agent_node(agent_data)
self._displayed_agents.add(agent_id)
Expand Down Expand Up @@ -749,7 +749,7 @@ def _stop_dot_animation(self) -> None:
def _animate_dots(self) -> None:
has_active_agents = False

for agent_id, agent_data in self.tracer.agents.items():
for agent_id, agent_data in list(self.tracer.agents.items()):
status = agent_data.get("status", "running")
if status in ["running", "waiting"]:
has_active_agents = True
Expand Down Expand Up @@ -792,7 +792,7 @@ def _gather_agent_events(self, agent_id: str) -> list[dict[str, Any]]:
"id": f"tool_{exec_id}",
"data": tool_data,
}
for exec_id, tool_data in self.tracer.tool_executions.items()
for exec_id, tool_data in list(self.tracer.tool_executions.items())
if tool_data.get("agent_id") == agent_id
]

Expand Down Expand Up @@ -958,7 +958,7 @@ def _copy_node_under(self, node_to_copy: TreeNode, new_parent: TreeNode) -> None
def _reorganize_orphaned_agents(self, new_parent_id: str) -> None:
agents_to_move = []

for agent_id, agent_data in self.tracer.agents.items():
for agent_id, agent_data in list(self.tracer.agents.items()):
if (
agent_data.get("parent_id") == new_parent_id
and agent_id in self.agent_nodes
Expand Down
4 changes: 2 additions & 2 deletions strix/telemetry/tracer.py
Original file line number Diff line number Diff line change
Expand Up @@ -291,14 +291,14 @@ def _calculate_duration(self) -> float:
def get_agent_tools(self, agent_id: str) -> list[dict[str, Any]]:
return [
exec_data
for exec_data in self.tool_executions.values()
for exec_data in list(self.tool_executions.values())
if exec_data.get("agent_id") == agent_id
]

def get_real_tool_count(self) -> int:
return sum(
1
for exec_data in self.tool_executions.values()
for exec_data in list(self.tool_executions.values())
if exec_data.get("tool_name") not in ["scan_start_info", "subagent_start_info"]
)

Expand Down