Contexto
Hoje o SessionItem (src/renderer/src/components/sidebar/SessionItem.tsx) já renderiza um StatusDot (8px) à esquerda do nome, com variantes working, idle, awaiting, pending, error (esta última via overlay de notification). Isso cobre o status do agente Claude/Code.
Foi proposto adicionar um segundo badge à direita do nome para refletir status mais granular (working / idle / failed / detached). Implementação foi tentada (PR #56, fechada) mas durante o spec o Specifier identificou:
SessionStatus no domain model só tem 'idle' | 'working' — failed e detached NÃO existem (precisaria DB migration v6 + IPC + main-process state setters).
- Já existe um dot à esquerda — adicionar outro à direita gera 2 indicadores competindo, o usuário não sabe qual interpretar.
Decisão
Não adicionar segundo badge. Em vez disso, decidir o que o badge único existente comunica e ajustar variantes/cores se necessário.
Open questions pra resolver antes de qualquer dev work
- O badge atual deve mudar de cor pra refletir mais estados? Quais (
working, idle, mais algum)?
- O conceito de "detached" (PTY desconectado) faz sentido como status visual no sidebar, ou é informação que vive em outro lugar (ex: tooltip, indicator no header)?
- "Failed" — quando uma sessão Claude/agente errou — deve ter estado próprio ou continua usando o overlay
notification:error que já existe?
Referências
Out of scope (não fazer aqui)
- Adicionar segundo dot
- DB migration v6 só pra cor
- Tocar
session-manager.ts lifecycle
Contexto
Hoje o
SessionItem(src/renderer/src/components/sidebar/SessionItem.tsx) já renderiza umStatusDot(8px) à esquerda do nome, com variantesworking,idle,awaiting,pending,error(esta última via overlay de notification). Isso cobre o status do agente Claude/Code.Foi proposto adicionar um segundo badge à direita do nome para refletir status mais granular (
working / idle / failed / detached). Implementação foi tentada (PR #56, fechada) mas durante o spec o Specifier identificou:SessionStatusno domain model só tem'idle' | 'working'—failededetachedNÃO existem (precisaria DB migration v6 + IPC + main-process state setters).Decisão
Não adicionar segundo badge. Em vez disso, decidir o que o badge único existente comunica e ajustar variantes/cores se necessário.
Open questions pra resolver antes de qualquer dev work
working,idle, mais algum)?notification:errorque já existe?Referências
src/renderer/src/components/sidebar/SessionItem.tsxSessionStatusemsrc/shared/ipc.tsOut of scope (não fazer aqui)
session-manager.tslifecycle