[Bug]: Waiting strip shows no timer for a Claude background command, because the task id does not match the turn item

Abierto Apto para principiantes
#28,899 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@voltcrash ya está trabajando en esto.

Desde el 2/11/2026.

  • #29591 de @voltcrash — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
68/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
react, typescript
Área
frontend

Línea de trabajo

Empieza en apps/web/src/components/chat/ThreadActivityBanners.tsx, donde la búsqueda compara (candidate.nativeItemRef?.nativeId || candidate.id) con task.taskId y por eso no encuentra ningún elemento para el id de la shell en segundo plano. Revisa cómo se relacionan el taskId del proveedor y el nativeItemRef.nativeId del elemento del turno en los comandos Bash en segundo plano. Después haz que el banner resuelva el elemento correspondiente para que startedAtMs quede establecido. Está terminado cuando la franja de espera muestre un temporizador de tiempo transcurrido en vivo para un único comando en segundo plano pendiente.

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

Descripción

Before submitting
  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.
Area

apps/web

Steps to reproduce
  1. In a Claude thread, have the agent start one long command with Bash run_in_background.
  2. Let the turn end, so the thread waits on that command.
  3. Look at the waiting strip.
Expected behavior

A live elapsed time next to the task, because backgroundWorkNowItem renders one when a single task is pending.

Actual behavior

No timer. The strip shows only the label and Stop.

Impact

Minor bug or occasional failure

Version or commit

0.1.7-nightly.20261101.4035

Environment

macOS (darwin 25.6.0), desktop app, Claude Opus 5.5

Logs or stack traces

Likely cause, from this thread's state while the command ran:

  • The pending task on the provider thread has taskId: "butrq2gr1", the background shell id.
  • The running command_execution turn item has startedAt set, with nativeItemRef.nativeId: "toolu_01N8rbvPjwHPTudjfA4XJ2Gs", the tool call id.
  • ThreadActivityBanners.tsx finds the item with (candidate.nativeItemRef?.nativeId || candidate.id) === task.taskId. The two ids differ, so item is undefined and startedAtMs is null.

No turn item in the thread has butrq2gr1 as its native id. I read the state and the source. I did not run a patched build.

Screenshots, recordings, or supporting files

Waiting strip with a background command and no timer

Workaround

None. The agent has to be asked how long the command has run.

Related: #28897 asks for a timer per task when several run, and #15584 covers the wider background work details.

Written with Claude Opus 5.5 in T3 Code.

Lenguaje dominante
TypeScript
Estrellas
24.8k
Forks
6.4k
Merge medio
13 h 48 min
PR fusionados (30 d)
208

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

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.

Más de pingdotgg/t3code

Todos los issues de pingdotgg/t3code

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.