github / github/copilot-cli

Streaming long Markdown links repeatedly reflow tables

Abierto
#4,347 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

area:terminal-rendering
Lenguaje dominante
Shell
Estrellas
11.2k
Forks
1.9k
Merge medio
14 h 16 min
PR fusionados (30 d)
6

Descripción

Describe the bug

While a response is streaming, inline Markdown links inside tables cause repeated table re-layout and visually disruptive jumping.

For a Markdown link such as [foo](https://very-long-url...) inside a table, the URL arrives character by character. Each character appears to trigger another table layout/render pass using the incomplete raw Markdown. The columns continuously resize and wrap; once the closing ) arrives, the whole link collapses to its visible text (foo) and the table jumps again.

This makes tables containing several long links very slow and visually unstable even though the final rendered table may look correct.

Affected version

GitHub Copilot CLI 1.0.77.

Steps to reproduce the behavior
  1. Start GitHub Copilot CLI in interactive mode.

  2. Enter this prompt:

    Render a Markdown table with several rows. Each row must contain an inline Markdown link whose destination URL is at least 150 characters long.

  3. Watch the table while the response streams.

  4. Observe columns repeatedly resizing and wrapping while each link destination arrives.

  5. Observe another layout jump when each completed link collapses to its visible text.

Expected behavior

Streaming incomplete Markdown should not cause a full table re-layout on every character. Table columns should remain visually stable while link destinations stream, then render using the visible link text when complete.

Additional context

The video uses a trivial example. The effect becomes much more disruptive with additional columns and rows. The demo also rendered unusually quickly; normal rendering is approximately 0.3-0.5 times this speed.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza en la ruta de renderizado de tablas Markdown en streaming de interactive-mode y reproduce el problema con enlaces inline largos en varias filas de la tabla. Rastrea las pasadas de layout repetidas a medida que llegan los caracteres de la URL; el trabajo estará terminado cuando los enlaces incompletos ya no desencadenen remaquetaciones completas y disruptivas de la tabla, mientras que los enlaces completados se rendericen usando su texto visible.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
markdown, shell
Área
cli, performance
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
58/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.