fix(orchestrator): Preserve error occurrences through session cleanup#19
What Changed
Thread error banners on the web now track each failure as its own occurrence. A provider error stays visible after its session is released or cleaned up, and keeps its original time instead of looking like a new failure. Dismissing a banner hides that occurrence only, so a later failure with the same message appears again. Dismissing a local error reveals a newer provider error hidden behind it.
For Pi, a failure the provider already reported survives a clean end of its event stream.
Why
Session cleanup cleared or restamped the thread's error, so banners disappeared while the failure still mattered, or came back after being dismissed. Dismissal was keyed by message text alone, which also hid genuinely new failures that happened to repeat the same text.
UI Changes
The error banner looks the same; only when it appears and stays dismissed changes. No screenshots are attached.
Checklist
- This PR is small and focused
- I explained what changed and why
- I included before/after screenshots for any UI changes
- I included a video for animation/interaction changes
Added 1 commit
- fix(orchestrator): Preserve error occurrences through session cleanup145aade