fix: pre-v1-style lifecycle resilience — mailbox delivery, uniform revival, unexitable runner, waiting timeout, broader retries, crash-safe identity (#923)

This commit is contained in:
devin-ai-integration[bot]
2026-08-01 11:17:08 -07:00
committed by GitHub
parent a9deb84260
commit 5602bc23ca
8 changed files with 413 additions and 145 deletions
+6 -2
View File
@@ -1041,9 +1041,9 @@ class StrixTUIApp(App): # type: ignore[misc]
name=names.get(agent_id, agent_id),
parent_id=parent_of.get(agent_id),
status=status,
error_message=error,
error_message=error or "",
)
if status in {"failed", "crashed"} and error:
if error:
if agent_id not in self._error_noted_agents:
self._error_noted_agents.add(agent_id)
self.live_view.record_agent_error(agent_id, error)
@@ -1293,6 +1293,10 @@ class StrixTUIApp(App): # type: ignore[misc]
text.append("Send a message to continue", style="dim")
keymap = keymap_styled([("ctrl-q", "quit")])
else:
error_msg = agent_data.get("error_message") or ""
if error_msg:
text.append(error_msg, style="red")
text.append(" \u00b7 ", style="dim")
text.append("Send message to resume", style="dim")
return (text, keymap, False)
+1 -1
View File
@@ -82,7 +82,7 @@ class TuiLiveView:
current["parent_id"] = parent_id
if status is not None:
current["status"] = status
if error_message:
if error_message is not None:
current["error_message"] = error_message
current["updated_at"] = now