- Navios
- 26 de agosto de 2026 às 08:52 UTC
- Autor
- kamo
- Enviar
- 1db50f2
- ChatSwitcherColumn: mova a preferência de colapso definir actualizador colapsado no próprio manipulador de cliques. O updater foi impuro (ele disparou uma busca como efeito colateral), que Reagir StrictMode dupla-invoca para verificar exatamente isso, então cada botão enviado dois idêntico PUTs no dev; um lançamento síncrono do fetch também pode ter abortou a atualização do estado. «Next» é agora calculado a partir de «colapso» e O PUT dispara uma vez, fora do updater. - ChatSwitcherColumn: a região expandida é agora `role="region"` (a div simples não tem papel ARIA, por isso o seu rótulo aria era invisível para tecnologia assistiva), e ambos os botões de alternância carregam `aria-expandida'. - ChatSwitcherColumn: INICIAL BUCKET é agora `Parcial<Record<string, Balde>>` em vez de um total `Record`, então um toolId não mapeado é um erro de tipo para ignorar em vez de um 'Bucket' escrito silenciosamente. - ToolWindowShell: a área de conteúdo flexDirection é agora a explícita `switcher? 'row': 'colunn'' em vez de uma 'row' incondicional de quem a correção dependeu do envoltório div da criança qualquer disposição da mesma forma. - Novo ToolWindowShell.test.tsx: o shell só foi exercitado através de ToolDock.test.tsx zomba dele, então seu próprio código de layout (o flip acima, e seu `{isMax && switcher}` gate) nunca tinha realmente Correr num teste. - Novo registro/tools.test.ts: afirma a bandeira contra o REAL toolPlatform map, exatamente as cinco ferramentas de conversação. ToolDock.test.tsx deliberadamente prende o mecanismo AND-gate contra um mapa sintético, assim nada mais iria pegar chatSwitcher sendo deixado de um dos cinco (ou acrescentado a um sexto) por acidente.