Novidades » Setembro 2026
Início › Setembro de 2026
Setembro foi o mês de tirar dúvida da frente de quem cadastra e de quem atende. O ADM passou a classificar o cliente sozinho a partir do faturamento, o Dashboard ganhou a leitura de conversão que a liderança pedia, a Variável ficou explicada dentro do próprio sistema, e o CRM ganhou um modo enxuto para quem só quer atender.
O que mudou para você
- oxiadmCadastro de cliente decide o Tier sozinho
Quem cadastra informa o faturamento anual e escolhe o segmento numa lista fechada. O Tier (Tiny, Small, Medium…) é calculado pelo sistema, e as faixas ficam visíveis ao lado do campo.
Na prática: Acabou o "R$ 2 milhões é o quê?" na hora de cadastrar, e os relatórios por Tier passam a ser confiáveis porque todo mundo classifica do mesmo jeito.
- oxiadmDashboard responde por que a venda não fechou
A aba Conversão de ICP mostra a conversão por Tier, o motivo da não conversão e quanto tempo leva para fechar. Saber cancelado, Churn M0 e reembolso saem da conta.
Na prática: A liderança vê onde o funil trava e em qual porte de cliente vale insistir, sem montar planilha à parte.
- oxiadmVariável explicada dentro do sistema
Nova aba Política mostra quem faz o quê no ciclo da variável e a regra padrão de pagamento e recebimento. Aprovar e rejeitar lançamento ficou restrito ao Admin.
Na prática: Quem recebe variável entende a regra sem perguntar, e a aprovação tem um dono só.
- oxiadmMenos cliques repetidos em Projetos e Alocações
A tela de Projetos lembra aba, filtros, busca e a visualização Tabela/Kanban entre visitas. Trocar o time de vários projetos de uma vez virou uma ação só. O workspace do eKyte é digitado uma vez por cliente.
Na prática: Volta pra tela do jeito que deixou. Remanejamento de squad que levava uma tarde leva minutos.
- CRMCRM ganha o modo simples
A tela passou a ter dois tamanhos. Quem atende começa no menor, só com a lista de conversas, a conversa e a ficha. O resto fica a um clique.
Na prática: Atendente não precisa escolher entre nove menus para responder um cliente.
- oxiwhatsAlerta quando as conversas param de chegar
Um vigia checa de hora em hora, em horário comercial, se o arquivo de conversas continua recebendo mensagens. Mais de 3 horas em silêncio dispara e-mail.
Na prática: Em agosto a captura ficou 11 dias parada sem ninguém perceber. Isso não se repete.
- oxidataNúmeros de Google Ads completos
Campanhas Performance Max e campanhas pausadas voltaram a entrar na carga de dados.
Na prática: O investimento em mídia que aparece nos relatórios do cliente é o investimento inteiro.
Próximas atualizações
- oxidataSaúde da Carteira em versão definitiva, juntando NPS, metas, fase do projeto e sinais das conversas num modelo único por cliente.
- oxishowShowcase com infraestrutura própria, saindo do modo provisório.
- CRMAmbiente de testes do CRM de volta, para cada release passar pelo portão automatizado antes de ir para produção.
Detalhamento por sistema
Item a item, com link para a mudança no código. Clique num sistema para filtrar.

Índice
oxiadm
- 1. Lembrar aba, Tabela/Kanban, filtros e busca entre visitas
- 2. Conversão de ICP por Tier, motivo da não conversão e ciclo de fechamento
- 3. Aba Política — quem faz o quê
- 4. Cliente novo nasce com segmento, e o comercial informa o faturamento
- 5. Política ganha a regra padrão de pagamento e recebimento
- 6. Saber cancelado, M0 e reembolso saem da coorte de conversão
- 7. Faixa definida por outra medida (ADR-036 emenda 1e)
- 8. Medida de referência visível no cadastro e excluir modelo
- 9. Tier cai do faturamento e segmento vira taxonomia fechada
- 10. Fechamento mensal — o passado é congelado, não recalculado
- 11. O workspace é do cliente, e digitado uma vez só
- 12. Troca de time em massa
- 13. Só o Admin aprova e rejeita lançamento
- 14. POST /clients devolvia o cliente antes de ser classificado
- 15. Cancelado agrupa em M0 no card Fora da taxa
- 16. Custo MO só com alocações vigentes + conta aberta no card
- 17. Faixas do Tier à vista de quem digita o faturamento
- 18. Squad do projeto deixa de restringir quem pode ser alocado
- 19. Admin pode trocar o e-mail do investidor
- 20. Reclassificar segmento não pode rebaixar cadastro bom
- 21. PATCH grava faturamento_anual com o tipo certo
- 22. A trava de reclassificação estava grossa demais
- 23. Editar cliente carregava faturamento e subsegmento vazios
- 24. Trava da estação 06 lia a coluna velha do card
- 25. Remarcar competência sem recalcular
Oxicore ADM Platform
Setembro foi o mês do cadastro inteligente no ADM: o Tier passa a ser derivado do faturamento, o segmento vira uma taxonomia fechada e o comercial informa o faturamento logo na entrada. No Dashboard, a conversão de ICP ganhou leitura por Tier, e a Variável recebeu a aba Política.
1. Lembrar aba, Tabela/Kanban, filtros e busca entre visitas Novidade
Em /projects, escolher Kanban, aplicar filtros e abrir um projeto para editar devolvia a tela no estado inicial na volta — Tabela, aba "Visão geral", sem filtro. O mesmo no F5. Aba, Tabela/Kanban, filtros e busca eram useState sem persistência nenhuma.

2. Conversão de ICP por Tier, motivo da não conversão e ciclo de fechamento Novidade
A aba Conversão de ICP passa a responder as perguntas da liderança em vez de só dar a taxa:

3. Aba Política — quem faz o quê Novidade
Nova aba Política no menu Variável (/variavel/politica), aberta a todo papel logado, para o time clicar e ler quem faz o quê:
4. Cliente novo nasce com segmento, e o comercial informa o faturamento Novidade
A 0065 tirou Tier e Segmento da mão de quem cadastra — mas a classificação só acontecia quando alguém chamava POST /api/v1/integration/enrich-clients à mão. Fui conferir depois do backfill: não existe gatilho no cadastro nem cron. Ou seja, cliente novo continuava nascendo sem segmento e sem Tier, e em alguns meses a…
5. Política ganha a regra padrão de pagamento e recebimento Novidade
Segunda seção na aba Política (/variavel/politica): "Pagamento e recebimento — regra padrão", explícita como padrão para todo cliente e modelo, sem exceção negociada.
6. Saber cancelado, M0 e reembolso saem da coorte de conversão Novidade
Decisão do Fragoso (11/09): Saber Cancelado (o pagamento combinado não aconteceu), M0 (etapa "Churn m0" — assinou e nunca começou) e Reembolso (etapa "Reembolso" — entregue e devolvido) não medem a venda do contrato seguinte.
7. Faixa definida por outra medida (ADR-036 emenda 1e) Novidade
Um cliente tem acordo em que a % muda conforme o faturamento total dele, mas a unidade é comissionada só sobre o faturamento do canal que ela gera. O módulo Variável amarrava as duas coisas (ADR-036 §1b: "um número lançado, uma base") — a única saída era escolher entre a faixa certa sobre a base errada (7% de tudo) ou…
8. Medida de referência visível no cadastro e excluir modelo Novidade
No primeiro uso real da PR #78, o campo "Faixa definida por outra medida" não foi encontrado: ele só aparecia depois de marcar "A taxa varia por faixa da medida". E a lista de modelos não tinha como excluir um modelo criado errado — a Server Action existia, sem botão.
9. Tier cai do faturamento e segmento vira taxonomia fechada Novidade
Os dois campos eram escolha manual num formulário. Campo de escolha manual não fica preenchido.

10. Fechamento mensal — o passado é congelado, não recalculado Novidade
O dash de Squads responde "como está este mês" e projeta até 12 meses à frente. Não responde "melhorei em relação a agosto?" — que é a pergunta que diz se um remanejamento funcionou.

11. O workspace é do cliente, e digitado uma vez só Novidade
O mesmo número era digitado duas vezes.
12. Troca de time em massa Novidade
A tela de Alocação de Times já respondia "onde a pessoa está" e "quem assume este posto". Mas a troca de time real não é um posto — é uma carteira. Passar quinze projetos do Léo para o Marcos custava quinze diálogos, e quem para no oitavo deixa metade do squad remanejado: estado pior do que não ter começado.
13. Só o Admin aprova e rejeita lançamento Correção
Decisão da unidade: o Coordenador não aprova mais lançamento de variável. Quem negocia a variável com o cliente e acompanha o time que a recebe não assina o repasse desse time, esteja ou não na divisão. Alinha o código à política publicada em /variavel/politica (PR #88), que já dizia "Admin ou Financeiro".
14. POST /clients devolvia o cliente antes de ser classificado Correção
Achado validando a #90 em produção, não pelo gate.
15. Cancelado agrupa em M0 no card Fora da taxa Correção
Cancelado e M0 são o mesmo evento para a conversão (o Saber não rodou); o oxiadm já leva todo Saber cancelado para a etapa Churn m0, então o balde 'cancelado' nascia sempre zerado. Agora tudo agrupa em M0; reembolso aparece só se houver (só no histórico anterior ao controle). Textos reforçam que a taxa considera…
16. Custo MO só com alocações vigentes + conta aberta no card Correção
🤖 Generated with Claude Code
17. Faixas do Tier à vista de quem digita o faturamento Correção
Reportado pelo Gabriel: o time começou a cadastrar e travou na dúvida "R$ 2 milhões é o quê?".
18. Squad do projeto deixa de restringir quem pode ser alocado Correção
Na página do projeto, o seletor de Adicionar alocação (e o de Substituir) filtrava os investidores por primarysquadid = squad do projeto. Era uma restrição só de interface — não há trava correspondente no banco nem nas actions — e ela impedia registrar o que acontece o tempo todo: alguém de outro squad cobrindo,…
19. Admin pode trocar o e-mail do investidor Correção
Colaborador cadastrado antes de ter o @v4company.com fica com o e-mail pessoal/provisório na ficha — e não havia caminho nenhum para corrigir depois. O bloqueio era em três camadas:
20. Reclassificar segmento não pode rebaixar cadastro bom Correção
Achado no dry-run em produção, antes de gravar qualquer coisa.
21. PATCH grava faturamento_anual com o tipo certo Correção
Buraco deixado pela #81. faturamento_anual é numeric no Postgres e o driver do Drizzle representa numeric como string; o Zod recebe number porque é o que o formulário e a API mandam.
22. A trava de reclassificação estava grossa demais Correção
Ajuste sobre a #83, achado ao preparar a normalização da carteira.
23. Editar cliente carregava faturamento e subsegmento vazios Correção
Perda de dado silenciosa. A tela /clients/[id]/edit não passava faturamentoanual nem subsegmento em defaultValues. O formulário abria com os dois em branco e, ao salvar qualquer outra coisa, mandava faturamentoanual: null — apagando o valor no banco e, junto, o Tier que é derivado dele.
24. Trava da estação 06 lia a coluna velha do card Correção
Depois da #72, o card parava na estação 06 mesmo com o workspace salvo — banner "Antes de avançar, preencha o id do workspace no Ekyte" com o campo preenchido na tela.
25. Remarcar competência sem recalcular Correção
O fechamento mensal (#71) subiu com um único caminho de escrita: closeSquadMonth, que sempre re-deriva os números dos dados de hoje.
Oxicore CRM (WhatsApp)
O CRM ganhou o modo simples: a tela passa a ter dois tamanhos e quem atende começa no menor, com o que realmente usa à mão.
26. Fase 34: a tela ganha dois tamanhos, e quem atende começa no menor Novidade
A queixa veio da operação e não é de defeito: a tela está carregada, e escolher para onde ir passou a ser trabalho. Contando o que um atendente vê hoje — nove entradas no menu mais Plataforma e Configurações, doze seções em Configurações, quatro controles de filtro na lista de conversas e quatro botões antes do campo…
Plataforma de Dados
27. Performance Max e campanha pausada voltam para raw_google_ads (ADR-022) Correção
Duas perdas silenciosas de dado no connector Google Ads. Nenhuma das duas levantava erro: query válida, HTTP 200, etl_runs com status='success', badge verde no dashboard — e dinheiro faltando na conta do cliente.
WhatsApp Inbox (arquivo de conversas)
28. Watchdog de silêncio da ingestão Novidade
Em 21/08 16:26 (BRT) a captura parou e ninguém percebeu por 11 dias — 25 grupos ativos, ~150 msgs/dia, tudo perdido (a Z-API não entrega histórico retroativo). O oxicore-crm foi apontado para a mesma instância Z-API e chamou update-every-webhooks, que aponta todos os callbacks para uma URL só, sobrescrevendo o "Ao…