Terminal flooded with raw mouse tracking escape sequences upon quitting wizard (Ghostty)
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- typescript
- Área
- cli
Línea de trabajo
Reproduce el problema iniciando TAILCODE, saliendo de la pantalla inicial de configuración guiada con q y moviendo el ratón después de que vuelva el prompt. Sigue la ruta de salida y desmontaje del terminal del asistente de TypeScript; la tarea estará terminada cuando el shell vuelva sin que se impriman secuencias de escape de seguimiento del ratón.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Lenguaje dominante
- TypeScript
- Estrellas
- 307
- Forks
- 15
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
getsentry/sentry-conventions#732 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
status:in-linear status:team-assigned team:nodes
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
n8n-io/n8n#41548 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
motiondivision/motion#3955 ·
Los mantenedores suelen responder en 1 día
-
DQ assisgnment closing at CRAbiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
equinor/prisma-decision-web#919 ·
Los mantenedores suelen responder en 1 día
-
自荐 / Suggestion: Prisma ComputeAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 83/100