fix(cli): preserve startup input through full init#94
Open
BingqingLyu wants to merge 8 commits into
Open
Conversation
This was referenced Apr 28, 2026
Open
5 tasks
Owner
Author
Conflict Group 1This PR shares modified functions with 16 other PR(s): #10, #11, #112, #113, #114, #117, #14, #17, #20, #26, #31, #37, #6, #7, #87, #88. These PRs should be reviewed as a batch — merging one may affect the others.
graph LR
PR94["PR #94"]
FKeypressProvider_396["KeypressProvider<br>KeypressContext.tsx"]
PR94 -->|modifies| FKeypressProvider_396
PR37["PR #37"]
PR37 -->|modifies| FKeypressProvider_396
PR87["PR #87"]
PR87 -->|modifies| FKeypressProvider_396
Fmain_4875["main<br>gemini.tsx"]
PR94 -->|modifies| Fmain_4875
PR14["PR #14"]
PR14 -->|modifies| Fmain_4875
PR17["PR #17"]
PR17 -->|modifies| Fmain_4875
PR20["PR #20"]
PR20 -->|modifies| Fmain_4875
FrelaunchAppInChildProcess_6506["relaunchAppInChildProcess<br>relaunch.ts"]
PR94 -->|modifies| FrelaunchAppInChildProcess_6506
PR11["PR #11"]
PR11 -->|modifies| FrelaunchAppInChildProcess_6506
FstartInteractiveUI_4875["startInteractiveUI<br>gemini.tsx"]
PR94 -->|modifies| FstartInteractiveUI_4875
PR114["PR #114"]
PR114 -->|modifies| FstartInteractiveUI_4875
PR117["PR #117"]
PR117 -->|modifies| FstartInteractiveUI_4875
PR14 -->|modifies| FstartInteractiveUI_4875
PR17 -->|modifies| FstartInteractiveUI_4875
PR31["PR #31"]
PR31 -->|modifies| FstartInteractiveUI_4875
PR6["PR #6"]
PR6 -->|modifies| FstartInteractiveUI_4875
PR88["PR #88"]
PR88 -->|modifies| FstartInteractiveUI_4875
Fstart_sandbox_9815["start_sandbox<br>sandbox.ts"]
PR94 -->|modifies| Fstart_sandbox_9815
PR10["PR #10"]
PR10 -->|modifies| Fstart_sandbox_9815
PR112["PR #112"]
PR112 -->|modifies| Fstart_sandbox_9815
PR113["PR #113"]
PR113 -->|modifies| Fstart_sandbox_9815
PR114 -->|modifies| Fstart_sandbox_9815
PR117 -->|modifies| Fstart_sandbox_9815
PR26["PR #26"]
PR26 -->|modifies| Fstart_sandbox_9815
PR7["PR #7"]
PR7 -->|modifies| Fstart_sandbox_9815
PR88 -->|modifies| Fstart_sandbox_9815
Posted by codegraph-ai conflict detection. |
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.
Summary
KeypressProvideronce the interactive UI mountsWhy
Fixes QwenLM#3224.
Today, fast typists can lose input while the interactive REPL is still initializing. This change preserves those keystrokes and replays them into the normal input pipeline once the prompt is ready.
Testing
cd packages/cli && npx vitest run src/utils/earlyInput.test.ts src/ui/contexts/KeypressContext.replay.test.tsx src/gemini.test.tsxnpm run buildnpm run typecheckDemo
before
https://github.com/user-attachments/assets/461abf53-e732-4e8f-b77a-03d1e863c22c
after
https://github.com/user-attachments/assets/ec7e6472-66a6-4ddc-9359-0d9f73837657