aaif-goose / aaif-goose/vscode-goose
perf(webview): uncontrolled composer input + per-session draft persistence
- Linguagem predominante
- TypeScript
- Estrelas
- 43
- Forks
- 20
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
Extracted from #39. Today every keystroke dispatches through the global useChat reducer and persists a single global draft via the state bridge, re-rendering the whole chat tree.
Make InputArea own its value locally (onSend(content, chips) replaces value/onChange), and persist drafts per session via the existing bridge getState/setState (debounced, swapped on session switch, with legacy single-draft fallback). Ride-alongs from #39: useFilePicker React 19 ref-typing fix and the textarea autosize style-thrash fix.
**Size**: M | **Depends on**: nothing (touches useChat's sendMessage signature, so sequence around #61) | **Tier**: 2
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
Look at the InputArea component and the global useChat reducer. The work involves making InputArea manage its own local state, changing the sendMessage signature, and implementing per-session draft persistence using the existing bridge getState/setState. Check the legacy single-draft fallback and the ride-along fixes for useFilePicker and textarea autosize. Testing will require verifying that drafts are correctly saved and swapped on session switch without re-rendering the whole chat tree.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- react
- Domínio
- frontend, performance
- Tipo de issue
- Refatoração
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100