Problem
When an agent pod is killed mid-conversation (rolling update, OOM, node eviction), the user sees a frozen chat with no response and the conversation cannot be resumed.
Solution
Add auto-recovery polling to the UI:
- When the SSE stream drops, the frontend polls the thread state endpoint every 5 seconds (up to 120 seconds)
- Detects when the recovered run completes on a replacement pod
- Renders the response seamlessly
- Handles HITL interrupt recovery and replay of queued decisions
Related
Problem
When an agent pod is killed mid-conversation (rolling update, OOM, node eviction), the user sees a frozen chat with no response and the conversation cannot be resumed.
Solution
Add auto-recovery polling to the UI:
Related