Terminal flooded with raw mouse tracking escape sequences upon quitting wizard (Ghostty)
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- typescript
- Domínio
- cli
Direção de pesquisa
Reproduza o problema iniciando o TAILCODE, saindo da tela inicial de configuração guiada com q e movendo o mouse depois que o prompt retornar. Rastreie o caminho de saída e teardown do terminal do wizard TypeScript; a tarefa estará concluída quando o shell retornar sem que sequências de escape de rastreamento do mouse sejam impressas.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description:
When attempting to quit the TAILCODE wizard, the application exits but fails to clean up the terminal state. Specifically, it appears to leave mouse reporting enabled, resulting in the terminal being flooded with raw escape sequences as the mouse is moved.
Installation:
# Linux (x64)
curl -L -o tailcode https://github.com/kitlangton/tailcode/releases/latest/download/tailcode-linux-x64
chmod +x tailcode
./tailcode
Environment:
-
OS: Arch Linux
-
Terminal: Ghostty
Steps to Reproduce:
Launch TAILCODE.
At the initial "Guided setup for OpenCode over Tailscale" screen, press q to quit.
Move the mouse around the terminal window.
Expected Behavior:
The application should exit cleanly and restore the terminal to its normal state, which includes sending the proper ANSI escape codes to disable mouse reporting (e.g., CSI ? 1000 l or 1003 l).
Actual Behavior:
The terminal prompt returns, but moving the mouse dumps a continuous stream of raw tracking characters (e.g., 35;69M22;71M33;71M...) directly into standard output, leaving the terminal in a dirty state.
Additional Context:
I have attached a screen recording demonstrating the issue. It looks like the TUI library being used is either crashing on exit or missing the teardown hook to reset the terminal's raw mode and mouse tracking before returning control to the shell.
https://github.com/user-attachments/assets/db7311d0-0f17-40e0-b45a-7a1bdd1cb0a4
- Linguagem predominante
- TypeScript
- Estrelas
- 307
- Forks
- 15
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Issues semelhantes
-
DQ assisgnment closing at CRAbertaenhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
equinor/prisma-decision-web#919 ·
Mantenedores costumam responder em até 1 dia
-
[DC] OneLogin sync imports a partial user list when an API request failsTalvez já em andamento @RaphaelFakhri assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
bitwarden/directory-connector#1276 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
home-assistant/installer#324 ·
Mantenedores costumam responder em até 1 dia
-
Mondriaan
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
knaw-huc/textannoviz#733 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia