Fix wasm crashes when viewing conversation search tool calls.#13108
Merged
Conversation
Contributor
|
I'm starting a first review of this pull request. You can view the conversation on Warp. I completed the review and no human review was requested for this pull request. Comment Powered by Oz |
Contributor
There was a problem hiding this comment.
Overview
This PR prevents shared-session viewers from running conversation-search temp-directory cleanup when replicated subagent results are applied, avoiding the WASM std::env::temp_dir() crash while leaving cleanup ownership with the sharing session.
Concerns
- The PR changes user-facing shared-session behavior by fixing a viewer crash, but the description says the shared-session conversation-search flow was not manually tested and has no screenshot or recording evidence. For this user-facing change, please include screenshots or a screen recording demonstrating it working end to end.
Verdict
Found: 0 critical, 1 important, 0 suggestions
Request changes
Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz
dagmfactory
pushed a commit
that referenced
this pull request
Jun 30, 2026
## Description Session-sharing viewers receive the sharing session's conversation-search subagent results, including paths to temporary directories created by the sharing session. Viewers were treating those replicated results as locally owned cleanup state and calling `cleanup_conversation_search_temp_dir`. On WASM, deriving the local cleanup base directory calls `std::env::temp_dir()`, which panics because the platform has no filesystem. Skip conversation-search temp-directory cleanup when applying client actions in a shared-session viewer. The sharing session still owns and cleans up its temporary directories normally. This also prevents native viewers from attempting to delete filesystem paths owned by another Warp instance. ## Linked Issue - [Sentry: WARP-CLIENT-DEV-RDJ](https://warpdotdev.sentry.io/issues/WARP-CLIENT-DEV-RDJ/) ## Testing - [x] `cargo fmt --package warp -- --check` - [x] `cargo check -p warp --lib` - [x] Symbolicated the exact staged WASM crash and confirmed the failing path is shared-session client-action processing → conversation-search cleanup → `std::env::temp_dir()`. - [ ] Manually tested the shared-session conversation-search flow. Not performed; the change was validated from the exact-release stack trace and compile checks. No automated test was added because this is a simple ownership guard and reproducing the regression requires a WASM shared-session viewer receiving a completed conversation-search subagent result. ### Screenshots / Videos N/A — no visual changes. ## Agent Mode - [x] Warp Agent Mode - This PR was created via Warp's AI Agent Mode CHANGELOG-BUG-FIX: Fixed a crash when viewing shared sessions that used conversation search. Co-Authored-By: Oz <oz-agent@warp.dev>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Description
Session-sharing viewers receive the sharing session's conversation-search subagent results, including paths to temporary directories created by the sharing session. Viewers were treating those replicated results as locally owned cleanup state and calling
cleanup_conversation_search_temp_dir. On WASM, deriving the local cleanup base directory callsstd::env::temp_dir(), which panics because the platform has no filesystem.Skip conversation-search temp-directory cleanup when applying client actions in a shared-session viewer. The sharing session still owns and cleans up its temporary directories normally. This also prevents native viewers from attempting to delete filesystem paths owned by another Warp instance.
Linked Issue
Testing
cargo fmt --package warp -- --checkcargo check -p warp --libstd::env::temp_dir().No automated test was added because this is a simple ownership guard and reproducing the regression requires a WASM shared-session viewer receiving a completed conversation-search subagent result.
Screenshots / Videos
N/A — no visual changes.
Agent Mode
CHANGELOG-BUG-FIX: Fixed a crash when viewing shared sessions that used conversation search.
Co-Authored-By: Oz oz-agent@warp.dev