[ADR-0013] Orquestração Multi-Agente (Swarm) e Sessões Compartilhadas | Wiki
Documentação de engenharia e especificações técnicas da Gleam-BR.
[ADR-0013] Orquestração Multi-Agente (Swarm) e Sessões Compartilhadas
- *Status:* Proposto
- *Data:* 17 de Maio, 2026
*Contexto:*
Conforme a complexidade dos problemas resolvidos pelo gleambr_ai aumenta, depender de um único LLM (com sua janela de contexto e viés inerentes) torna-se limitante. Para problemas complexos de software, fluxos de trabalho humanos envolvem validação cruzada (ex: um desenvolvedor escreve, um QA testa, um Arquiteto revisa). Atualmente, a nossa arquitetura possui uma relação 1:1 entre a Sessão de Chat e o Provedor LLM.
*Decisão:*
Implementaremos a capacidade de *Multi-Agent Swarm (Debate)* utilizando o padrão "Blackboard" (Quadro Negro) suportado pela concorrência nativa OTP.
-
*Desacoplamento de Sessão:* O estado da conversa (O "Contexto") será extraído do
session.gleame promovido para um Ator central isolado, chamadocontext_board.gleam. -
*Abas Paralelas na TUI:* A interface Ratatui permitirá abrir "Abas", onde cada aba é um Ator
session.gleamdistinto (ex: Aba 1 = Claude 3.5 Sonnet, Aba 2 = GPT-4o). Todas as abas assinam (subscribe) as mensagens docontext_board. -
*O Modo Debate (Round Table):* Criaremos um fluxo orquestrado onde:
* A IA "A" (Desenvolvedora) recebe o prompt inicial e gera o código. O código é salvo no
context_board. * A IA "B" (Revisora, configurada com um System Prompt extremamente crítico) é acionada automaticamente após a IA "A" terminar, lendo o código do contexto e emitindo sua crítica. * A IA "A" recebe a crítica e tenta corrigir as falhas. * O sistema permite um número X de ciclos (loops de debate) antes de solicitar a aprovação humana (HITL) final na TUI.
*Consequências:*
- *Positivas:* Qualidade e precisão das respostas absurdamente superior a uma interação única; tira total proveito do ecossistema Erlang (cada IA rodando paralelamente e transmitindo streaming sem bloquear a outra).
- *Negativas:* Custo financeiro (consumo de tokens) multiplicado pelo número de IAs participantes no debate; aumento da complexidade de roteamento de eventos na UI (direcionar os eventos Server-Sent Events corretos para as abas corretas da TUI).