[Bug]: Turning off "Working section" silently switches Active list to creation-time sorting and ignores latest replies

Abierto Apto para principiantes
#37,275 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

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

Línea de trabajo

El código relevante está en apps/web; busca sidebarWorkingShelfEnabled, boringSidebarEnabled, activeTimeOrdered y activeOrderKey para encontrar las ramas de ordenación de Active-list descritas en el issue. Sigue dónde se lee sidebarThreadSortOrder y dónde se renderiza la descripción de la sección Working. Reproduce deshabilitando la sección Working y confirmando que un hilo antiguo con una respuesta reciente permanece enterrado. Hecho significa que deshabilitar esa configuración ya no elimina la ordenación por recencia.

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. Open Settings → General → Sidebar and disable Working section (sidebarWorkingShelfEnabled: false), while keeping Settings → Labs → Boring sidebar disabled (boringSidebarEnabled: false).
  2. Keep an older active thread (for example, created ~1 day ago) alongside several newer active threads created later.
  3. Send a new prompt in that older thread and wait for the reply to finish (Done).
Expected behavior

An active thread that just received a new user message / completed reply should move up to the top of the Active list (or have an independent setting to sort Active threads by latest activity), unless the user explicitly switches to manual ordering.

At minimum, disabling Working section should not silently switch the Active list from recency sorting to creation-time sorting.

Actual behavior

The older thread updates its status badge to Done, but remains buried in its original createdAt position below all threads created after it.

From inspecting the bundled client logic:

  • When workingShelfEnabled is true (and boringSidebarEnabled is false), the Active list is sorted by Math.max(createdAt, unsettledAt, latestRun.requestedAt, latestRun.completedAt, returnedAt).
  • When both workingShelfEnabled and boringSidebarEnabled are false, the Active list unconditionally switches to activeTimeOrdered = false and sorts by activeOrderKey (if manually dragged) or Math.max(createdAt, unsettledAt) — ignoring updatedAt, latestRun.requestedAt, latestRun.completedAt, and sidebarThreadSortOrder (which is currently persisted in client-settings.json as "updated_at" by default, has no UI control, and is only used for fallback thread selection on archive/delete/project switch).
  • The UI description for Working section does not warn that turning it off disables recency sorting for Active threads.
Impact

Minor bug or occasional failure

Version or commit

0.1.10-nightly.20261115.4736 (commit 7379f1969b0f)

Environment

macOS 27.3 (Build 26C5035r), T3 Code (Nightly) Desktop

Workaround

Re-enable Settings → General → Sidebar → Working section (sidebarWorkingShelfEnabled: true), or enable Boring sidebar in Settings → Labs.

Lenguaje dominante
TypeScript
Estrellas
24.8k
Forks
6.4k
Merge medio
3 h 40 min
PR fusionados (30 d)
543

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.