novidadesv4 oxicore

Novidades » Julho 2026

Início › Julho de 2026

Julho abriu a série de entregas. O ADM ganhou os Dashboards v2 e a tela de Projetos foi refeita em cima da taxonomia STEP. ADM e Plataforma de Dados passaram a compartilhar o cadastro de clientes. O Showcase ficou enxuto, e o arquivo de conversas de WhatsApp foi do zero à produção em uma semana.

O que mudou para você

  • oxiadmDashboards v2

    Séries no tempo, ARPU, ciclo de vida e qualidade por squad. Gráficos interativos com clique para filtrar. Abas Performance Interna (ranking de GPs e squads) e Custo Estrutura (folha por lotação, só Admin), com drill-down até projeto e pessoa.

    Na prática: A unidade inteira numa tela, e cada número abre para mostrar de onde veio.

  • oxiadmProjetos organizados pelo STEP

    Etapas configuráveis, Kanban por categoria (Saber, Ter, Executar, Potencializar), valor total por coluna, fase macro e filtro favorito por usuário.

    Na prática: Cada projeto na etapa certa e o dinheiro visível em cada coluna.

  • oxiadmCusto de squad de verdade

    Rateio real de custo com ócio, coordenadores e indiretos, custo de time por logo, e churn medido só na régua Executar.

    Na prática: Margem por squad sai com o custo completo, não só o das horas alocadas.

  • oxidataUm cadastro só entre ADM e Plataforma de Dados

    Clientes casados por CNPJ, papéis GP e GT vindos da alocação, coordenador entre os responsáveis, empresa ativa/inativa e dash interno de performance por squad. Filtros por squad e GP na lista de empresas.

    Na prática: Ninguém digita cliente duas vezes, e o dado de projeto que aparece no oxidata é o do ADM.

  • oxishowShowcase lê tudo do Oxidata

    Núcleo enxuto, sem IA, ads, feedback e gamificação. Clientes e métricas do intervalo vêm prontos do Oxidata, com o mesmo login.

    Na prática: Relatório de check-in sem redigitar métrica nenhuma.

  • oxiwhatsNasce o arquivo de conversas

    Captura via Z-API com mídia guardada, transcrição automática de áudio, busca por texto completo, servidor MCP para agentes de IA e login Google restrito ao domínio da V4.

    Na prática: As conversas dos grupos de cliente ficam pesquisáveis, áudio incluído.

  • oxiviewDeck trocado sem quebrar o link

    Substituir o arquivo de uma apresentação mantendo o link de compartilhamento, renomear e apagar pastas, baixar o deck como um único arquivo.

    Na prática: O link que o cliente já recebeu continua valendo depois da revisão.

O que veio em agosto de 2026

Detalhamento por sistema

Item a item, com link para a mudança no código. Clique num sistema para filtrar.

Projetos: filtros, abas por categoria STEP e alternância Tabela/Kanban.
Projetos: filtros, abas por categoria STEP e alternância Tabela/Kanban.

Índice

Oxicore ADM Platform

oxiadm · admin.v4oxicore.app.br ↗ · 18 novidades · 3 correções

Julho abriu a série de PRs do ADM com os Dashboards v2, a integração com a Plataforma de Dados e a reforma da tela de Projetos: etapas configuráveis, Kanban por categoria e taxonomia STEP.

1. Réguas por categoria STEP — churn só no Executar Novidade

Dashboards & métricas · 21/07/2026 · PR 24 ↗

O gráfico "Churn mensal por squad" mostrava 100% de churn no Jarvis - Saber em Mai/26 — um squad que só entrega projetos Saber (escopo fechado) e tinha 1 cliente na base. Churn é KPI de recorrência (Executar); Saber e Ter precisam de réguas próprias. Decisões do Gabriel registradas na ADR-032.

Aba Status: réguas por categoria STEP, churn só na régua Executar.
Aba Status: réguas por categoria STEP, churn só na régua Executar.

2. Valor total por coluna no Kanban Novidade

Projetos & Kanban · 21/07/2026 · PR 25 ↗

Cada coluna do Kanban de /projects já mostrava a quantidade de projetos. Agora mostra também o valor total da coluna em R$, logo abaixo da contagem — nas abas de tier (Saber/Ter/Executar/Potencializar) e na Visão geral.

3. Aba Custo Estrutura — folha por lotação (admin-only) Novidade

Dashboards & métricas · 21/07/2026 · PR 26 ↗

O nível executivo precisa da visão de estrutura de custo com pessoas: quanto custa cada squad, a área comercial e o overhead, com drill-down até o investidor (nome + remuneração). Acesso restrito ao papel mais alto (admin).

4. Drill-down clicável — projetos da receita e time do custo Novidade

Dashboards & métricas · 21/07/2026 · PR 27 ↗

Pedido da gestão: nos cards da aba Squads, poder clicar para ver quais projetos estão contabilizando a receita total do squad e qual time está compondo o custo.

5. Custo Time por logo + overhead separado (v2) Novidade

Dashboards & métricas · 16/07/2026 · PR 23 ↗

Feedback da gestão sobre a v1 em produção (print Spartans/Templários): o custo do squad deve ser o valor total de M.O. do time, coordenador embutido, e só o overhead é rateio.

6. Fase macro (medir+filtrar) + filtro favorito por usuário/aba Novidade

Projetos & Kanban · 15/07/2026 · PR 22 ↗

Duas coisas em /projects, pedidas pelo Gabriel:

7. Rateio real de custo — ócio, coordenadores e indiretos Novidade

Dashboards & métricas · 13/07/2026 · PR 11 ↗

A aba Squads · Custo × Receita calculava M.O. como salário × %alocado, o que fazia o ócio sumir (tempo não alocado não era cobrado de ninguém), deixava coordenadores de fora do custo dos squads, e só tinha uma gerência fixa (R$11.000). Este PR faz o custo por squad refletir o custo real, conforme pedido da gestão.

8. Aba Performance Interna — ranking de GPs e squads (coordenadores) Novidade

Dashboards & métricas · 13/07/2026 · PR 19 ↗

Nova aba Performance no dashboard (/dashboard/performance) com ranking de GPs e de squads por período, para medir quem performou melhor.

9. Conversao de cambio USD/EUR->BRL nos somatorios de contratos Novidade

Dashboards & métricas · 13/07/2026 · PR 20 ↗

Fase 15 completa (ADR-031) — card EKyte #9834002. Os somatórios financeiros do painel (MRR ativo, carteira, receita, ARPU, LTV e o gráfico de receita por squad — "gráfico da Jarvis") passam a converter contratos em USD/EUR para BRL antes de somar, por uma taxa de câmbio mensal rastreável.

10. Coordenador vê squads + transparência de leitura Novidade

Acesso & permissões · 11/07/2026 · PR 14 ↗

> Base: feat/squads-custo-rateio-real (PR #11). Mergear o #11 primeiro; depois este rebaseia sozinho para main. O diff aqui mostra só as mudanças de permissões.

11. Taxonomia STEP na categoria + reforma UX de /projects (Fase 14) Novidade

Projetos & Kanban · 09/07/2026 · PR 10 ↗

Card EKyte #9834001. Fecha o plano docs/plan/fase-14-taxonomia-step.md em 3 commits sequenciais (uma fatia cada), sem quebrar governança/DQS/aviso prévio/contratos externos (integração, MCP, status-summary).

12. Fase 13: Etapas de projeto configuráveis + Kanban por categoria (ADR-027) Novidade

Projetos & Kanban · 09/07/2026 · PR 9 ↗

Implementa a fase-13 completa (3 fatias) do plano docs/plan/fase-13-etapas-projeto-configuraveis.md, formalizada em ADR-027.

13. Gráficos interativos: tooltip rico + hover + clique-para-filtrar Novidade

Dashboards & métricas · 08/07/2026 · PR 5 ↗

Torna todos os gráficos dos dashboards "vivos", mantendo os SVGs caseiros (dark-first, tokens do DS) — sem adicionar Recharts.

14. Alocação: papel único estruturado + active_projects_count na integração Novidade

Alocações & times · 08/07/2026 · PR 6 ↗

Dois ajustes pequenos (sem mudança de schema).

15. Integração: coordenador nos owners + recorrência ativa Novidade

Alocações & times · 08/07/2026 · PR 7 ↗

Dois sinais novos no GET /api/v1/integration/clients para o dash interno da Plataforma de Dados (somente leitura, sem schema).

16. Dashboards v2 — séries temporais, ARPU, ciclo de vida e qualidade por squad Novidade

Dashboards & métricas · 07/07/2026 · PR 1 ↗

Reconstrução das seis abas do dashboard executivo, mantendo tudo que existia e adicionando leitura de período, mix de receita e ciclo de vida do cliente.

17. Endpoint de integração: governança de clientes para a Plataforma de Dados Novidade

Integrações & API · 07/07/2026 · PR 2 ↗

Integração ADM ↔ Plataforma de Dados (dashboard.v4oxicore.app.br) usando CNPJ como chave. O ADM é a fonte da governança de clientes; a plataforma de dados vai sincronizar este payload para vincular tenants por CNPJ, montar a fila de onboarding de novos clientes e identificar inativos.

18. Papel estruturado GP/GT na alocação + dupla no endpoint de integração Novidade

Alocações & times · 07/07/2026 · PR 4 ↗

Para o ranking de duplas GP+GT do dash interno da Plataforma de Dados (v4oxidata), a alocação ganha um papel estruturado:

19. Converter valor próprio de projeto USD→BRL (Squads + Equipe) Correção

Dashboards & métricas · 21/07/2026 · PR 28 ↗

No drill-down de receita da aba Squads, clientes em dólar apareciam com o valor cru exibido como R$ (ex.: Jax Truck Works R$ 998, H1 Remodeling LLC R$ 650, Goodnut R$ 1.005). Causa: projetos com valor próprio (projects.valor) não passavam pela conversão cambial — só o fallback via contrato (splitContractRevenue)…

20. Churn status-first — aviso prévio vencido churna, retenção reverte, one-time finaliza Correção

Dashboards & métricas · 15/07/2026 · PR 21 ↗

A regra de negócio de churn do oxiadm é status-first: quando o cliente pede para sair iniciamos FCAs de retenção, e a negociação pode devolver o contrato a active sem respeitar/limpar as datas antigas. Datas vencidas sozinhas nunca podem disparar churn. Além disso, one-time que termina é finalização do período…

21. Rota de integração fora do gate de sessão do middleware Correção

Integrações & API · 07/07/2026 · PR 3 ↗

O middleware devolve 401 JSON para todo /api/ sem sessão Supabase — a rota /api/v1/integration/clients (PR #2), que tem auth própria por x-api-key (timing-safe vs INTEGRATIONAPI_KEY), nunca chegava a executar.

Plataforma de Dados

oxidata · v4oxidata.vercel.app ↗ · 10 novidades · 2 correções

22. Filtros de Squad e Gestor de Projetos na lista de empresas Novidade

Dashboards & métricas · 27/07/2026 · PR 18 ↗

Adiciona dois filtros client-side à lista de empresas da Home (/), no componente TenantsOverviewTable:

24. Gráfico de performance interna por squad (Investimento × Receita) Novidade

Dashboards & métricas · 13/07/2026 · PR 16 ↗

Adiciona um gráfico ao dash de Performance Interna (/dashboard/admin/performance), que hoje só tinha tabelas.

25. Integração Showcase + grupo Check-in no sidebar Novidade

Integrações & API · 10/07/2026 · PR 11 ↗

Integração servidor-a-servidor para o novo app oxicore-showcase (relatórios de check-in de reunião), que usa esta plataforma como fonte de verdade de governança, cadastro de clientes e métricas.

26. Separar clientes sem projeto ativo no ADM da cobertura Novidade

Clientes & cadastro · 08/07/2026 · PR 5 ↗

Ajuste pedido: clientes sem projeto ativo no ADM não devem poluir a contagem de "clientes que ainda precisam estar conectados".

27. Empresa ativa/inativa + filtrar sem-projeto-ativo por padrão no dash interno Novidade

Clientes & cadastro · 08/07/2026 · PR 6 ↗

Dois ajustes pedidos.

28. Dash interno: coordenador fora das duplas + filtro por recorrência ativa Novidade

Alocações & times · 08/07/2026 · PR 8 ↗

Par do ADM v4oxicore/oxicore-adm-platform#7 (mergeado). (1) Ranking de duplas GP+GT ignora coordenadores (iscoordinator = appuser role=gerente no ADM), que representam o squad. (2) Filtro padrão do Performance passa a exigir recorrência ativa: só-pontual/nenhum recorrente fica oculto por padrão; recorrente+pontual…

29. Ranking de duplas só com GP+GT reais (função na alocação manda) Novidade

Dashboards & métricas · 08/07/2026 · PR 9 ↗

Refinamento do dash interno conforme decidido: a função na alocação é a fonte da verdade para o ranking de duplas.

30. Integração de cadastros com a Oxicore ADM Platform (CNPJ como chave) Novidade

Integrações & API · 07/07/2026 · PR 2 ↗

O ADM (admin.v4oxicore.app.br) é o cadastro-mestre que rege a governança de clientes. Este PR integra os cadastros das duas plataformas usando CNPJ como chave, seguindo as regras do repo (Server Actions + audit log, migration manual idempotente, DATA_DICTIONARY/SPEC/CHANGELOG/READMEs atualizados).

31. Integração ADM v2 — vínculos sem CNPJ, N/A e Dash Interno de Performance Novidade

Integrações & API · 07/07/2026 · PR 4 ↗

Evolução da integração ADM (PR #2) a partir do uso real + novo dash de gestão. Par do PR do ADM v4oxicore/oxicore-adm-platform#4 (papel GP/GT estruturado — já em produção).

32. Estágio Leads usa waterfall canônico (CRM>ads, ADR-013) Correção

Dados & ETL · 21/07/2026 · PR 17 ↗

S1 do plano corrigir-leads-funil-e-reconciliar-investimento.

33. Isentar /api/adm-integration do gate de sessão do middleware Correção

Integrações & API · 07/07/2026 · PR 3 ↗

A rota servidor-a-servidor POST /api/adm-integration/bootstrap (auth própria por x-api-key, PR #2) era redirecionada para /login pelo middleware antes de executar. Exceção adicionada em isPublicPath com comentário apontando o README da rota. tsc ✅.

WhatsApp Inbox (arquivo de conversas)

oxiwhats · whatsapp.v4oxicore.app.br ↗ · 6 novidades · 1 correções

34. Z-API ingestion webhook with R2 media upload and dedup (fase 02) Novidade

Integrações & API · 20/07/2026 · commit 7598a0d ↗

Rota POST /api/webhooks/zapi: valida token, resolve/cria canal (balde unassigned sem descartar mensagem, ADR-0007), dedup idempotente por externalmessageid, baixa mídia da Z-API e sobe pro R2 antes de responder, grava message com type/direction/body/media/raw/mediastatus, enfileira job de transcrição só para áudio em…

35. Audio transcription cron, media purge and DLQ alerting (fase 03) Novidade

Decks & conteúdo · 20/07/2026 · commit 9b38c46 ↗

Rota POST /api/cron/process-jobs: claim/lock atomico de jobs pending (UPDATE ... FOR UPDATE SKIP LOCKED numa unica query, sem corrida entre execucoes concorrentes do cron), transcricao de audio via OpenRouter (lib/openrouter.ts, modelo multimodal trocavel por OPENROUTERAUDIOMODEL), grava messages.transcription +…

36. Sobe app em produção, worker de cron e ajustes de canal (fase 06) Novidade

Plataforma & infra · 20/07/2026 · commit b103d8a ↗

App em produção na Vercel (whatsapp.v4oxicore.app.br) e Worker de relay para os Cloudflare Cron Triggers (packages/cron-worker/, ADR-0012), sem lógica de negócio própria. Validado ponta a ponta com tráfego real de uma instância Z-API: texto, imagem, áudio (transcrito) e documento capturados; dedup, DLQ forçada, purga,…

37. Full-text search, MCP server and REST support endpoints (fase 04) Novidade

Integrações & API · 20/07/2026 · commit b5264a9 ↗

Servidor MCP (Streamable HTTP) em app/mcp/route.ts, montado com mcp-handler (adapter oficial da Vercel para Next.js sobre @modelcontextprotocol/sdk) em vez de portar manualmente o esqueleto do oxicore-comunicacao - mesmo protocolo, menos codigo de transporte para manter (ver nota no ADR-0009). Sete tools read-only:…

38. Wire conversation viewer and channel registry to real data (fase 05) Novidade

Atendimento & inbox · 20/07/2026 · commit bc0b4cd ↗

Replace the Fase 00 mock data with real REST-backed screens: conversation viewer (channel list + thread with date navigation, all messagetype renderers, lazy signed-URL media, reaction-to-target linking) and channel registration (real link/isinternal endpoints, unassigned queue). Adds GET /api/v1/channels/:id/messages…

39. Google OAuth login restricted to v4company.com (fase 01) Novidade

Acesso & permissões · 20/07/2026 · commit e0dc8ef ↗

Better Auth com login via Google, sem e-mail/senha. Restrição de domínio em duas camadas: claim hd do provider + databaseHooks.user.create.before (defesa em profundidade — ver ADR-0011). Tela de login (app/login) no vocabulário da referência docs/design/referencia/app.html (11.1 · login). Rota autenticada (/ e…

40. Renderiza legenda de documento (PDF) na thread Correção

Atendimento & inbox · 20/07/2026 · commit 80bec6b ↗

message.body (legenda) já vinha certo do backend (fix anterior desta fase), mas MessageBubble.tsx só usava como fallback do título quando faltava filename — nunca desenhava como legenda, ao contrário de imagem/vídeo. Achado pelo usuário conferindo a UI de produção depois do fix de captura-ingestao.md.

Oxicore Showcase (check-in)

oxishow · showcase.v4oxicore.app.br ↗ · 4 novidades · 1 correções

41. Núcleo enxuto — remoção de IA/Ads/feedback/gamificação + schema de drop Novidade

Plataforma & infra · 10/07/2026 · PR 1 ↗

Reduz o fork ao núcleo do sistema de check-in: hub de clientes, detalhe do cliente, builder de reunião, apresentação (+ links públicos /view/), export PDF/Google Slides, notificações + fluxo de aprovação, admin/teams/squads/compare.

42. Clientes do Oxidata + prefill de métricas do intervalo Novidade

Integrações & API · 10/07/2026 · PR 3 ↗

Liga o showcase aos dados do Oxidata: o cadastro de clientes vira espelho dos tenants e o builder ganha "Importar do Oxidata", que pré-preenche o relatório com os agregados do intervalo selecionado — mantendo tudo editável (decisão aprovada: prefill + edição manual).

43. Auth Oxidata + dados/prefill + branding (restante da stack #2-#4) Novidade

Acesso & permissões · 10/07/2026 · PR 5 ↗

Reabre o restante da stack após o fechamento automático de #2/#4 (bases deletadas no merge de #1/#3). Contém: Google OAuth + whitelist do Oxidata (#2), sync de clientes + prefill de métricas (#3) e branding/README (#4), já com o fix de parse defensivo das edge functions e types.ts regenerado.

44. 100% read-only do Oxidata — sem preenchimento redundante Novidade

Integrações & API · 10/07/2026 · PR 7 ↗

Pedido do Gabriel (10/07): usuários/equipes/squads/clientes já são governados no oxiadm→oxidata; manter campos editáveis aqui = dois lugares para atualizar = risco de desatualização.

45. Rewrite SPA na Vercel — rotas client-side caíam em 404 Correção

Plataforma & infra · 10/07/2026 · PR 6 ↗

Rotas navegadas direto pela URL caíam em 404 na Vercel; o rewrite de SPA devolve o app em qualquer rota.

Slide Viewer

oxiview · view.v4oxicore.app.br ↗ · 3 novidades · 0 correções

47. Adicionar ação Substituir também no card da listagem Novidade

Decks & conteúdo · 06/07/2026 · commit ad4fcdb ↗

Além da toolbar do viewer, o DeckCard agora expõe um ícone ⟳ no hover (ao lado de baixar/excluir) que abre o mesmo ReplaceFileDialog. DeckListClient passa onReplace -> router.refresh().

48. Rename/delete folders + download deck as .html Novidade

Decks & conteúdo · 02/07/2026 · commit 903319d ↗

Pastas podem ser renomeadas e apagadas, e qualquer deck pode ser baixado como arquivo .html único.