Arquivo fonte
dashboard/data/project-state.json
O dashboard deve ler diretamente este arquivo como source of truth da V1.
MVP do 7PS funcional e fechado. Z-API descontinuado. UAZAPI operacional. Meta Cloud API em implementação. Próxima iniciativa: lembretes anti-no-show.
Status geral
Base forte
MVP FECHADO. Meta Cloud API + UAZAPI como providers WhatsApp. Z-API descontinuado. UAZAPI implementado e ativo. Meta Cloud API pendente de implementação no n8n.
Progresso médio
93%
Média simples das trilhas
Tarefas fechadas
16/22
Concluídas ou validadas
Matriz validada
9/12
Bloqueios abertos: 0
Próximos passos críticos
Última atualização
29/05/2026, 01:40 UTC
Sempre que uma tarefa relevante ao projeto mudar de estado, este arquivo deve ser atualizado no mesmo ciclo.
Objetivo do MVP
Fluxo central fechado e validado
Escopo MVP
5 telas, bootstrap, agenda, Lembretes pipeline ativa
Próxima ação
UAZAPI já operacional. Meta Cloud API é provider principal.
A regra prática para manter o painel útil sem automação nem banco
Arquivo fonte
O dashboard deve ler diretamente este arquivo como source of truth da V1.
Checklist de atualização
Modelo curto para registrar qualquer atualização relevante do projeto
ID
log-YYYY-MM-DD-slug
Data
ISO-8601 UTC
Tipo
execucao|decisao|implementacao|validacao|estrutura|dashboard
Título
O que mudou em uma frase curta
Resumo
Resumo objetivo do efeito da mudança no projeto
Relacionamentos
task-id, matrix-id ou risk-id opcional
Separação explícita entre o que está especificado, implementado e validado
Automação
Owner: 7ps-n8n
Desvio determinístico para confirmação curta implementado e validado (2026-04-02). 9 nodes adicionados ao workflow principal para recuperar contexto de oferta do histórico persistido e fechar via criar_agendamento sem passar pela Maria. Appointment ce512393 criado em produção (2026-04-15 09:00, Dra Ana Souza, Aplicação de Botox). Residual: validar ponta a ponta real quando buscar_procedimentos resolver corretamente na mensagem 1.
Automação
Owner: 7ps-n8n
Cancelamento e reagendamento já têm evidência operacional relevante no n8n e fazem parte das tools conectadas ao fluxo principal; ainda resta fechar a redação final das regras conversacionais no nível documental.
Dados
Owner: 7ps-supabase
Os eventos críticos e parte dos writes reais já apareceram na operação. O mapa final ainda é desejável como consolidação, mas deixou de ser o principal bloqueio executivo do núcleo de agenda.
Dashboard
Owner: Clawdudo
O state file foi criado, integrado ao dashboard e validado com build local.
Arquitetura
Owner: 7ps-orchestrator
A arquitetura macro e fronteiras estão bem definidas nos docs, mas ainda dependem de materialização e teste no produto real.
Automação
Owner: 7ps-n8n
Segundo retorno consolidado do 7ps-n8n, criar_agendamento já voltou a executar com sucesso, houve criação real de appointment e o agendamento completo passou a ser tratado como validado no escopo atual.
QA
Owner: 7ps-qa
O trecho manual de comparecimento/falta foi considerado validado no escopo atual, com evidência de persistência real no banco para os estados compareceu e faltou.
QA
Owner: 7ps-qa
O QA reconheceu formalmente o fluxo lead → agendamento → comparecimento como funcionalmente aceito no escopo atual, com ressalvas não bloqueantes sobre bootstrap mínimo de dados por clínica e cobertura parcial fora do núcleo.
Automação
Owner: 7ps-n8n
Desvio determinístico implementado: detecta confirmação curta (horário + prof, sem intent keyword), recupera contexto de oferta do n8n_chat_histories, resolve professional_id e procedure_id do JSON de availability, e chama criar_agendamento diretamente. Validado com injeção de histórico: appointment ce512393 criado, status agendado no Supabase.
App
Owner: programador-senior
Select de horários com slots de 30min gerados do business_hours_json. Validação de minimum_advance_hours e maximum_advance_days. Bloqueio de dias sem funcionamento (enabled: false). n8n-architect confirmou: impacto mínimo no n8n — validações server-side mantidas como defesa em profundidade. Commits c7bd142, 28e05c3.
App
Owner: programador-senior
Feature validada por 7ps-qa como PRONTO COM RESSALVAS. Cards grid responsivos, chips dedup por procedure.id, telefone wa.me/tel: fallback, email mailto:, create/edit com splice de vínculos, toggle is_active, busca ilike. 3 ressalvas: transacional sem rollback, RLS não versionado, tooltip misleading. Follow-up técnico em task-18.
Automação
Owner: 7ps-n8n
UAZAPI implementado: sender (3 nodes), webhook configurado, normalizer criado e conectado. Pendente: teste real via WhatsApp + Meta Cloud API como provider principal. Z-API removido.
Leitura resumida das frentes que sustentam o avanço do 7PS
Problema, ICP, objetivo do MVP e limites de escopo estão claros. Restam ajustes finos de comportamento operacional.
A residência da lógica entre Lovable, Supabase, n8n e canal já está bem definida no nível macro.
Entidades, status PT-BR e source of truth estão claros. O mapa final de writes por evento segue útil como consolidação, mas não é mais o principal bloqueio executivo do núcleo de agenda.
UAZAPI implementado como provider WhatsApp. Z-API descontinuado. Workflow activo. Pendente: teste real + Meta Cloud API.
5/5 features MVP completas: Configuracoes.tsx (4 preferências), MinhaClinica timezone Select, Agenda Select horários via business_hours_json + validação antecedência, Leads e Pacientes completos. SQL 4 colunas clinics. App 100%.
O QA já aceitou funcionalmente o fluxo central do MVP no escopo atual. Permanece apenas a organização documental do pacote oficial de aceite e cobertura opcional curta adicional, sem bloquear o núcleo.
A fase documental de aceite e consolidação do núcleo do MVP foi encerrada formalmente. Restam apenas registros institucionais residuais e a documentação da próxima iniciativa.
Quem está fazendo o quê, o que entregou e o que ainda trava
Orquestração e documentação
Tarefa atual
Governança e reconciliação documental do projeto.
Última entrega
Removida referência a 7ps-agent-runtime-ops.md (não existe). Reconciliado project-state.json com decisão 2026-05-20 (MVP fechado).
Próximo passo
Confirmar se 7ps-open-questions.md está sendo alimentado corretamente vs. dispersão em decisions.
Bloqueios
Sem bloqueios relevantes no momento.
Produto e proteção de escopo
Tarefa atual
Validação de escopo MVP de funcionalidades e telas
Última entrega
Escopo MVP fechado: 5 telas essenciais (Agenda, Dashboard, Leads, Auth, Detalhes), bootstrap de dados como setup obrigatório, V2 confirmadamente fora. Documento: 7ps-mvp-scope-validation.md.
Próximo passo
Aguardando programador-senior para implementar agenda completa + bootstrap.
Bloqueios
Sem bloqueios relevantes no momento.
Automação e agente
Tarefa atual
UAZAPI implementado no n8n. Pendente: teste real via WhatsApp + Meta Cloud API como provider principal.
Última entrega
Migração Z-API → UAZAPI concluída no workflow ZTrXQsh1woKwgugD. 3 nodes Enviar texto + download audio atualizados, UAZAPI Normalizer criado e conectado. Meta Cloud API como provider principal em implementação.
Próximo passo
Implementar Meta Cloud API como provider principal no n8n (sender Graph API + webhook Cloud API). Depois: testar failover real entre UAZAPI e Meta.
Bloqueios
Sem bloqueios relevantes no momento.
Dados e integridade
Tarefa atual
Proteger o modelo de dados enquanto as regras do fluxo fecham.
Última entrega
Modelo de entidades, status e regras de integridade do MVP consolidados.
Próximo passo
Validar o mapa de writes críticos por evento.
Bloqueios
Sem bloqueios relevantes no momento.
QA e aceite funcional
Tarefa atual
Aceite funcional do fluxo central concluído; manter apenas eventual cobertura curta adicional se solicitada.
Última entrega
Parecer final confirmou o fluxo lead → agendamento → comparecimento como funcionalmente aceito no escopo atual, com ressalvas não bloqueantes sobre bootstrap mínimo de dados por clínica e cobertura parcial fora do núcleo.
Próximo passo
Sem ação bloqueante no núcleo; só executar evidência curta adicional de faltou se desejado para ampliar cobertura mínima.
Bloqueios
Sem bloqueios relevantes no momento.
App Lovable + Schema + Versionamento
Tarefa atual
MVP App completo — 5/5 features.
Última entrega
5/5 features MVP: Configuracoes.tsx (4 preferências), MinhaClinica timezone Select, Agenda Select horários via business_hours_json + validação antecedência, SQL 4 colunas clinics. Commits c7bd142, 28e05c3.
Próximo passo
Aguardando Z-API ser desbloqueado para validar entrega WhatsApp real.
Bloqueios
Sem bloqueios relevantes no momento.
Tarefas agrupadas por status para leitura rápida e honesta do momento atual
Owner: 7ps-supabase
Owner: 7ps-n8n
Owner: Clawdudo
Owner: 7ps-orchestrator
Owner: 7ps-product
Owner: 7ps-orchestrator
Owner: 7ps-n8n
Owner: 7ps-n8n
Owner: 7ps-orchestrator
Owner: 7ps-qa
Owner: 7ps-orchestrator
Owner: 7ps-orchestrator
Owner: Clawdudo
Owner: Clawdudo
Owner: 7ps-n8n
Owner: 7ps-n8n
Owner: programador-senior
Histórico curto para entender o que mudou sem abrir outros documentos
debug
Estrutura real do payload UAZAPI descoberta: wrap em body{chat{message{owner}}}. Seletor de número extrai body.owner (clínica), não wa_chatid (cliente). Eduardo corrigiu nodes manualmente. Fluxo: Webhook->Identificar Clínica->Buscar Clínica->Seletor->Dados Webhook. phone.trim() ainda pendente.
implementacao
Migração concluída: 3 nodes Enviar texto atualizados para UAZAPI (https://7psdigital.uazapi.com/send/text), download audio atualizado, UAZAPI Normalizer criado e conectado. Webhook UAZAPI configurado para /webhook/clinica com excludeMessages wasSentByApi. Workflow activo. Pendente: teste real + Meta Cloud API.
decisao
Decisão tomada: Meta Cloud API como provider principal (sender Graph API, webhook Cloud API) + UAZAPI como segundo provider em coexistência (backup/fallback). Z-API permanece descontinuado. 7ps-n8n vai implementar ambos os senders, webhooks, normalizadores e credenciais no n8n. Documento: whatsapp-providers-coexistence.md.
implementacao
programador-senior publicou site estático em appmeta.7psdigital.com.br: 3 páginas (Home, Privacy Policy, Terms of Service), SSL Let's Encrypt via Traefik, container nginx:alpine isolado coexistindo com demais serviços. Domínio disponível para Meta Business Console, WhatsApp Business Platform e Pixel URL. Pendente: decisão sobre GitHub Actions para deploy automático.
decisao
7ps-n8n entregou pesquisa e especificação inicial: Meta Cloud API via Coexistence é o novo provider principal. Z-API sai do plano. Próximos passos: implementar sender, webhook e normalizador no n8n, adicionar colunas provider_meta no Supabase, testar antes de desativar Z-API.
validacao
7ps-qa validou: cards responsivos, chips procedimentos, telefone wa.me/tel:, email mailto:, criar/editar com vínculos, toggle, busca, responsividade mobile. 3 ressalvas aceitas: transacional parcial, RLS não versionado localmente, tooltip phone misleading. programador-senioraceitou veredito e registrourseguimiento técnico em follow-up.
implementacao
programador-senior diagnosticou e corrigiu: dashboard já usava queries reais no Supabase; o 'sem dados' vinha do default em Hoje. Corrigido: default em Mês, navegação por setas entre meses, empty state amigável. Commit 3d8976f. Queries reais confirmadas em appointments e leads.
validacao
7ps-n8n confirmou: workflow REMINDER - enviar_confirmacao_24h está implementado e ativo. Trigger schedule 5min, busca pendentes, monta mensagem, envia via Z-API, marca status. 7 registros reais na tabela. Pipeline 100% pronta — único gap é Z-API 403 (instância bloqueada, não código).
validacao
7ps-qa validou: fluxo lead → agendamento → comparecimento especificado ✅ implementado ✅ validado ✅. Evidência real no banco: compareceu 2, faltou 2, agendado 7, cancelado presente. App Lovable funcional. Z-API 403 residual aceito, não bloqueia núcleo. MVP 95% fechado.
decisao
7ps-product decidiu: /configuracoes fora do MVP — redundante com /minha-clinica. Fluxo principal não depende. Bootstrap redundante confirmado. MVP 95% — 7ps-qa para validação final antes de declarar fechado.
decisao
Investigação confirmou: Profissionais ✅ Procedimentos ✅ MinhaClinica ✅ todos funcionais. Bootstrap é redundante — nunca foi necessário. MVP em 95%: apenas /configuracoes como placeholder. Questão aberta: é escopo MVP ou redundante com /minha-clinica? Aguardando decisão de produto.
implementacao
programador-senior validou: Pacientes /pacientes (lista) + /pacientes/:leadId (histórico com JOIN profissionais/procedimentos, dialog Novo Agendamento, cancellation_reason visível). Lovable inicialmente não incluiu cancellation_reason — corrigido via prompt. lead_status ENUM sincronizado com banco real xsglsinwczsstbentdeh em database.ts, Leads.tsx e Pacientes.tsx. App track: 87%→92%. Próximo: Configurações + Bootstrap.
implementacao
programador-senior confirmou: 3/5 features validadas. Pacientes é Placeholder (falta criar histórico funcional). Bootstrap: profissionais+procedimentos+horários ainda não implementados. Prompts Lovable gerados: handoffs/2026-04-03-pacientes-historico-funcional.md e handoffs/2026-04-03-bootstrap-minhaclinica.md. Sequência: Pacientes primeiro.
implementacao
3/5 features concluídas. Agenda: filtros por prof+status e ações rápidas compareceu/faltou 1-toque validados. Leads: botão Agendar com dialog pré-preenchido implementado. Próximo: Pacientes histórico funcional.
implementacao
Cadastro de leads concluído: edição completa com todos os campos (email, cpf, endereço, status), duplicate phone check na edição, máscara CPF. Build ok. Próximo: Agenda filtros + ações rápidas (prompt já gerado). 2/5 features.
implementacao
Schema tipado xsglsinwczsstbentdeh com types/database.ts criado. cancellation_reason adicionada. as any removidos de 6 páginas. Build compila. Script sync criado. 5 features pendentes: Agenda filtros+status, Agenda ações rápidas, Leads botão agendar, Pacientes Placeholder, Bootstrap MinhaClinica. programador-senior retoma na sequência.
implementacao
Supabase diagnostics: banco correto é xsglsinwczsstbentdeh (não mubwwzcqjmbscpphwwhb). cancellation_reason adicionada via psql. src/types/database.ts criado com schema completo (leads, professionals, procedures, appointment_reminders, appointments completo). supabaseClient.ts atualizado. Zero as any em 6 páginas. Build compila sem erros. Versionamento configurado (docs/versioning.md). App track: 62% → 67%.
validacao
9 novos nodes adicionados ao workflow principal ZTrXQsh1woKwgugD. Fluxo: Detectar Confirmação Curta → Recuperar Oferta Anterior (Postgres) → Montar Contexto Confirmação → criar_agendamento (conf) → Resposta Sucesso. Appointment ce512393 criado no Supabase: 2026-04-15 09:00, lead 7bc48c81, procedure 08bc7bbb (Aplicação de Botox), professional dec366d3 (Dra Ana Souza). Automação agora 100% — residual é entrega Z-API (403 bloqueado).
decisao
7ps-product fechou escopo MVP: Agenda (crítica), Dashboard (leitura), Leads (badges + botão agendar), Auth, Detalhes. Bootstrap de profissionais/procedimentos/horários é obrigatório como setup, não feature. V2 fora. programador-senior é próximo para implementar app.
validacao
Maria recebeu bloco MVP de indisponibilidade no workflow principal. Criar/reagendar foram corrigidos para first_valid_slot consistente em min_advance_not_met, closed_day e outside_business_hours. Testes diretos via webhook temporário validaram os retornos reais. O gate pré-Maria foi destravado removendo atendimento_ia=pause do lead QA. Resta apenas validar a Maria consumindo erro real de criar_agendamento sem pedir clarificações extras.
validacao
Switch 6 outputs + 4 response nodes dedicados implementados e validados em ambos workflows. Fix de clamping first_valid_slot aplicado. Testes QA via webhook confirmaram: closed_day, outside_business_hours, min_advance_not_met, max_advance_exceeded funcionando. Próximo passo: prompt da Maria para interpretar os novos campos.
decisao
Eduardo aprovou Opção A: criar response nodes dedicados para os 4 novos reason codes. Diagnóstico: R1-R5 100% nos nodes, Switch só tem slot_conflict, 4 reason codes caiam no default. Workload executado pelo 7ps-n8n.
decisao
7ps-product identificou lacunas no prompt da Maria, mas reconciliação com 7ps-n8n revelou: validação R1-R5 100% nos nodes; Switch só tem caso para slot_conflict; novos reason codes caem no default e não chegam à Maria. A correção correta é nos nodes n8n, não no prompt. Tarefa transferida para 7ps-n8n.
implementacao
Implementação completada: buscar_horarios_disponiveis (R2, R3), criar_agendamento (R1-R5), reagendar_agendamento (R1-R5). Novos reason types: closed_day, outside_business_hours, min_advance_not_met, max_advance_exceeded. Novos campos: next_available_slots, first_valid_slot. Validação via Maria pendente — handoff para 7ps-product.
decisao
5 regras especificadas: horário 09:00-18:00, mínima antecedência 2h, máxima 60 dias, segunda a sábado, conflito FCFS com 3 próximos slots. Implementação no agente n8n em task-15. Documento: 7ps-availability-rules.md.
validacao
Executado em 2026-03-30 19:38-19:52 UTC. Webhook clinica → Maria → tool reagendar → banco atualizado → reminder recalculado validado no banco. Z-API retorna 403 Forbidden na etapa de envio — instância 3EE3568384ED01A423DEC226D26E541A bloqueada. Lógica de negócio: APROVADA. Entrega de mensagem: BLOQUEADA.
decisao
O projeto abriu formalmente a frente de lembretes anti-no-show como próxima etapa objetiva após o fechamento do núcleo do MVP. O próximo movimento correto passa a ser o handoff ao 7ps-n8n para desenhar a menor versão útil.
decisao
O projeto registrou o encerramento formal da fase de aceite funcional e consolidação final do MVP. O núcleo lead → agendamento → comparecimento foi fechado no escopo atual e a próxima iniciativa objetiva passa a ser redução de no-show com lembretes mínimos.
dashboard
O painel foi ajustado para remover pendências residuais visuais de itens já validados, especialmente no aceite funcional central, cancelamento/reagendamento e leitura de QA. A rotina de atualização agora exige reconciliação explícita entre tarefas, trilhas, agentes, riscos e matriz.
validacao
O parecer final do 7ps-qa confirmou o fluxo lead → agendamento → comparecimento como funcionalmente aceito no escopo atual, com evidência em duas clínicas, persistência real no Supabase canônico e apenas ressalvas não bloqueantes de bootstrap mínimo de dados e cobertura parcial fora do núcleo.
validacao
A validação local confirmou o fluxo lead → agendamento → comparecimento ponta a ponta no Supabase canônico, com autenticação real por clínica, coerência de RLS e manutenção dos registros de teste para rastreabilidade. A próxima fase passa a ser QA funcional e pacote oficial de aceite.
validacao
O state file passou a refletir que o trecho manual de comparecimento/falta está validado com evidência de persistência real no banco. O projeto sai de fechamento funcional do núcleo e entra em consolidação final de aceite e governança.
validacao
O dashboard passou a refletir o retorno consolidado de que o agendamento completo já foi implementado e validado no n8n, com criação real de appointment. O foco executivo agora fica em formalizar a disponibilidade mínima e fechar comparecimento/falta.
dashboard
O state file passou a refletir melhor o avanço real em automação e QA: cancelamento e reagendamento têm evidência operacional, enquanto disponibilidade mínima, agendamento completo e comparecimento/falta seguem como gaps centrais para fechar o MVP.
estrutura
O projeto passou a ter um agente explícito para controlar fase atual, sequência, dependências, handoffs, progresso e próximos passos.
governanca
O state file agora inclui checklist de atualização, template de activity log e uma matriz explícita de especificado, implementado e validado.
estrutura
Foi criado um arquivo único de estado para o dashboard, com governança, trilhas, agentes, tarefas, riscos e histórico recente.
dashboard
Visual refinado, dados alinhados ao estado atual do 7PS e stack atualizada para Next 16.2.0 + React 19.2.0.
decisão
A V1 foi travada sem banco, sem n8n e sem edição complexa para evitar virar projeto paralelo.
Os pontos que ainda ameaçam clareza, execução ou ritmo do MVP
Owner: 7ps-orchestrator
Status: Mitigado
Próximo passo: Encerrado após consolidación de estado. Manter vigilância em novas iniciativas.
Owner: 7ps-n8n
Status: Mitigando
Próximo passo: Formalizar a regra mínima de disponibilidade do MVP para remover a ambiguidade residual.
Owner: 7ps-orchestrator
Status: Mitigado
Próximo passo: Dashboard mantido enxuto. Nova frente Meta Cloud API não adiciona complexidade ao dashboard operacional.
Owner: 7ps-n8n
Status: Mitigado
Próximo passo: Encerrado como bloqueio técnico do núcleo; manter apenas rastreabilidade das evidências e seguir para aceite funcional.