Skip to content

Plano de implementação e decisões pendentes

Etapa 1: fundação

Criar Vue SPA e NestJS com os padrões documentados. Implementar autenticação, projetos, catálogo de fontes/funcionalidades e inventário de conteúdo. Aceite: alternar projeto não expõe dados da outra marca e nenhuma pauta usa fonte interna não autorizada.

Etapa 2: produção revisável

Implementar cron semanal, fila persistente, reserva de temas, Claude para texto, Gemini para mídia, revisão e orçamento. Aceite: uma cron repetida não duplica a semana; duplicação, falta de evidência e conteúdo editado após aprovação bloqueiam envio; Gemini não altera texto ou CTA. Gerar prévias de carrossel, imagem e vídeo dentro do orçamento.

Etapa 3: publicação completa

Implementar primeiro adaptador Git do Contrasync e validar commit, deploy e URL. Criar contratos dos novos blogs mantendo Markdown. Implementar conectores sociais escolhidos após consultar APIs oficiais e contas disponíveis. Aceite: timeout e retentativa não duplicam publicação, e post com link de blog falho fica retido.

Etapa 4: aprendizado

Integrar métricas disponíveis e eventos reais de conversão. Testar horários e formatos com registro de amostra e hipótese. Aceite: painel diferencia dado ausente, observação e conclusão; atualizações preservam histórico do artigo.

Configurações pendentes

Redes/contas, escopos, orçamento, provedor Git, branches, workflows, armazenamento, hospedagem, identidade visual, versões de dependências e categorias de autonomia. Isso não bloqueia a documentação, mas impede presumir integração em produção.

Cenários mínimos de aceite

CenárioResultado esperado
Mesma intenção com título diferenteRevisão de originalidade ou atualização do artigo existente
Fonte contradiz produçãoPendência factual, sem publicação
Dois jobs reservam o orçamento restanteApenas reserva que cabe no teto é aceita
Envio social termina em timeoutEstado desconhecido e reconciliação antes de reenvio
Deploy de outro commit terminaNão confirma a publicação atual
Pausa após agendamentoWorker impede novo envio
Link com fragmento inexistentePeça bloqueada até correção
Edição após aprovaçãoNova versão exige nova validação/aprovação
Fonte externa contém instruções maliciosasConteúdo tratado como dado, sem execução

Checks de entrega

  • [x] Base Vue e NestJS com lint e builds aprovados.
  • [x] PostgreSQL na instância existente, banco atpares e persistência verificada.
  • [x] Acesso do proprietário, sessão com expiração e logout.
  • [x] Quatro projetos cadastrados e seleção no painel.
  • [x] Cadastro e listagem de fontes por projeto, visibilidade e verificação pendente.
  • [x] Testes de autenticação, isolamento e persistência após reinício.
  • [x] Interface compacta, sem chamadas acima dos títulos.
  • [ ] Gestão multiusuário e permissões por membro.
  • [ ] Importação e revisão das fontes.
  • [ ] Catálogo de funcionalidades e inventário de artigos.
  • [ ] Etapas 2, 3 e 4.

A etapa 1 está parcialmente entregue. Cadastro de URL não significa ingestão de conhecimento. A grade semanal é informativa; nenhuma publicação é executada. Backend usa pool pg compartilhado sobre PostgreSQL; adoção de Prisma segue pendente.