Chat (Inbox)
Status: 🔴 Quebrado (em manutenção — débito ativo) Code: backend/app/modules/chat UI: frontend/src/app/(admin)/[slug]/admin/chat Última revisão deste doc: 2026-05-13 por Felipe + Claude
1. Identidade
O que faz (uma frase)
Inbox unificada de mensagens cross-canal (WhatsApp + Instagram + email) — atendimento humano centralizado quando agentes IA escalam pro humano.
Por que existe
Atendimento manual precisa um lugar único: hoje WhatsApp tem inbox próprio, IG tem outro, email outro. Chat unifica os 3 num lugar só.
Status atual
🔴 Quebrado — quebrou recentemente (memória do que originou esta documentação: "consertar Conselho → quebra chat → corrige chat mexendo no WhatsApp → quebra Conselho"). Débito ativo. Não usar até o fix.
2. O que precisa ser feito
- Identificar regressão — última versão que funcionava em git.
- Decidir arquitetura — chat agrega de outros módulos (read-only) ou tem tabelas próprias?
- Refator com testes antes de re-deploy.
- Documentar contrato — antes de mexer em whatsapp/instagram pra suportar chat, definir o que chat precisa sem que canal mude.
3. Princípio cravado
Não mexer em WhatsApp/Instagram pra "consertar" Chat.
Se Chat precisa de algo dos canais, Chat se adapta. Canais estáveis não devem mudar pra atender módulo em manutenção. Esse é o princípio de "módulo estável não muda pra atender módulo em fluxo" que motivou este manual.
4. Arquitetura interna
Arquivos
routes.py— 2 endpoints.
Tabelas
0 ou poucas (read-only proxy, semelhante a Community).
5. API / Endpoints (2)
Verificar routes.py atual. Endpoints atualmente expostos podem ter regressões.
6. Próximos passos
- Audit do que está quebrado (logs + reprodução).
- Decisão arquitetural:
chaté facade ou módulo próprio? - Refactor com testes.
- Atualizar este doc com formato canônico (12 seções) quando estabilizar.
7. Histórico
- 2026-05-13 — Status
🔴 Quebradocravado. Débito ativo. Manual criado documentando estado.