Terminal panel: keys typed before the shell is ready are dropped; blank after reopening on macOS
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 55/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
Research direction
Start with src/renderer/src/views/panels.ts:214-217 and src/main/panels/terminal.ts:20-23 to trace terminal input startup and reattachment. Then inspect tests/e2e/panels.test.ts:46 and run the panel e2e test. Done means startup keystrokes are preserved, the test waits for the prompt instead of sleeping, and reopening the terminal displays its prompt or recent output.
Written by the indexing model from the issue text.
Description
Found in the 2026-10-07 code review (read).
Problem
- Dropped keys: until
terminal:startresolves, the panel'sonDatareacts only to\r(src/renderer/src/views/panels.ts:214-217), and every other key is lost. This is also whytests/e2e/panels.test.ts:46needswaitForTimeout(1500)before typing, and why it is flaky on slow runners. - Blank after reopen: on macOS the pty outlives a closed window.
terminal:startwith the same working directory only resizes (src/main/panels/terminal.ts:20-23), so the new xterm shows no prompt until Enter is pressed, and output produced while the window was closed is lost.
Fix
- Buffer input while the shell is starting and flush it once
started = true. In the e2e test, wait for the prompt instead of sleeping. - On reattach, send a redraw (for example
\x0c) or replay a small buffer of recent output.
- Dominant language
- TypeScript
- Stars
- 2
- Forks
- 2
- Avg merge
- 5h 28m
- Merged PRs (30d)
- 24
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from PierrunoYT/patch
-
enhancement priority: low security severity: low
Difficulty 4/5 3-5 days Newbie friendliness 35/100
PierrunoYT/patch#260 ·
Maintainers usually reply within 1 day
-
bug priority: low severity: low
Difficulty 3/5 1-2 days Newbie friendliness 25/100
PierrunoYT/patch#259 · 1 comment ·
Maintainers usually reply within 1 day
-
platform: macos priority: medium security severity: low tests
Difficulty 4/5 3-5 days Newbie friendliness 15/100
PierrunoYT/patch#257 ·
Maintainers usually reply within 1 day
-
bug platform: windows priority: medium severity: medium
Difficulty 4/5 3-5 days Newbie friendliness 30/100
PierrunoYT/patch#242 · 1 comment ·
Maintainers usually reply within 1 day
-
bug priority: high severity: high
Difficulty 4/5 3-5 days Newbie friendliness 42/100
PierrunoYT/patch#240 ·
Maintainers usually reply within 1 day
All issues in PierrunoYT/patch
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
apache/rocketmq-dashboard#6103 ·
Maintainers usually reply within 4 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
cockpit-project/cockpit-machines#2835 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
cloudflare/kumo#866 ·
Maintainers usually reply within 1 day
-
area:connector bug
Difficulty 1/5 Under an hour Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
autoInject recall silently drops memory injection on long / non-Latin prompts (HTTP 400 Query too long)Possibly taken @Epsilon006 claimed this today. Openintegration:coding-agents
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
vectorize-io/hindsight#5476 · 1 comment ·
Maintainers usually reply within 1 day