Conversation
|
The following comment was made by an LLM, it may be inaccurate: Related Open PRs Found#41299 -
#39349 -
#43607 -
Note: PR #44903 is the current PR, so it's correctly excluded from the duplicates list. The other PRs are related but appear to be either prior work, complementary fixes, or addressing related aspects of SSE stream handling. |
|
Thanks for updating your PR! It now meets our contributing guidelines. 👍 |
|
Automated PR Cleanup Thank you for contributing to opencode. Due to the high volume of PRs from users and AI agents, we periodically close older PRs using automated criteria so maintainers can focus review time on the most active and community-supported contributions. This PR was closed because it matched the following cleanup criteria:
PRs created within the last month are not affected by this cleanup. If you believe this PR was closed incorrectly, or if you are still actively working on it, please leave a comment explaining why it should be reopened. A maintainer can review and reopen it if appropriate. Thanks again for taking the time to contribute. |
Issue for this PR
Closes #39030
Type of change
What does this PR do?
On iOS Safari, switching to another app can suspend the page and close the OpenCode SSE connection. When the user returns, the assistant may have finished on the server while the web UI remains stuck until a manual refresh.
This change reconnects the stream when the document becomes visible again. It also detects silently stalled streams and resynchronizes active session status and message timelines after reconnect. The implementation builds on the recovery work in #41299.
How did you verify your code works?
bun run --cwd packages/app typecheckpassed.Screenshots / recordings
No UI surface changed; this is a connection recovery behavior change.
Checklist
If you do not follow this template your PR will be automatically rejected.