Fix shellv2 multi-line code paste parsing#2092
Conversation
When users pasted multiline string blocks (e.g. from Python code), the BrowserRepl was evaluating each line individually with `\n` mapped to Enter. Consequently, double newlines representing empty lines within blocks prematurely triggered the REPL to end execution contexts, preventing entire copy-paste sequences from loading correctly. This commit updates the `BrowserWasmAdapter` to process pasted blocks via a single method (`paste_input`), sequentially submitting and managing completion buffers. In the frontend hook, paste multi-character sequences containing linebreaks are now captured and passed as a solid chunk, while simple append logic remains unmodified. Co-authored-by: KCarretto <16250309+KCarretto@users.noreply.github.com>
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
Pasting multi-line Python snippets containing empty lines caused the frontend `BrowserRepl` loop to misinterpret the empty lines as end-of-block signals when processed line-by-line. This caused premature submission and subsequently threw errors or split logic into disconnected blocks. This fix modifies `BrowserWasmAdapter`'s `paste_input()` handler to send the entire clipboard payload buffer straight to `BrowserRepl.input(textToInput)` in one piece, correctly preserving the block logic without prematurely submitting execution on intermediate blank lines. Co-authored-by: KCarretto <16250309+KCarretto@users.noreply.github.com>
Summary
Previous Results
Insights
Slowest Tests
🎉 No failed tests in this run. | 🍂 No flaky tests in this run. Github Test Reporter by CTRF 💚 🔄 This comment has been updated |
Fixes a bug where pasting multiline code into
shellv2prematurely evaluated logic due to empty lines exiting the currentBrowserReplblock. Instead of handling pastes character-by-character, it now delegates the full string block toBrowserWasmAdapter.PR created automatically by Jules for task 16086420678191050824 started by @KCarretto