--- name: Cronograma de Posts - Fluxo Definitivo de Status description: Fluxo correto dos status do cronograma e posts - aceito NÃO é publicado, publicado só após aprovar conteúdo type: project --- ## Fluxo de Status (DEFINITIVO - 2026-04-04) ### STATUS DO CRONOGRAMA (tabela `cronogramas`): - `rascunho` → recém criado pelo admin - `enviado` → enviado para cliente via WhatsApp - `aprovado` → cliente aprovou o planejamento - `rejeitado` → cliente rejeitou com comentário (campo `aprovacao_comentario`) ### STATUS DOS POSTS (tabela `social_posts.status`): 1. **rascunho** - cronograma criado mas NÃO aprovado pelo cliente 2. **aceito** - cliente APROVOU o planejamento (NÃO é publicado ainda! Falta conteúdo final) 3. **agendado** - cliente aprovou a POSTAGEM (arte/vídeo) → pronto para publicar na data 4. **publicado** - publicado na rede social 5. **erro** - erro na publicação ### APROVAÇÃO DA POSTAGEM (tabela `social_posts.aprovacao_status`): - `nao_requer` - não precisa de aprovação - `pendente` - conteúdo enviado, aguardando cliente aprovar - `aprovado` - cliente aprovou a postagem → status vai para 'agendado' - `rejeitado` - cliente recusou com motivo (`aprovacao_comentario`) → status NÃO muda ### REGRA FUNDAMENTAL: - **Aceito ≠ Publicado** (aceito = planejamento aprovado, falta o conteúdo final) - **Agendado = postagem aprovada** (será publicada na data/hora) - **Publicado = só quando realmente publicado** na rede social - **Recusa da postagem**: status NÃO muda (fica 'aceito'), só aprovacao_status='rejeitado' - **Ao enviar para aprovação**: status NÃO muda (fica 'aceito'), só aprovacao_status='pendente' ### FLUXO COMPLETO: ``` Admin cria cronograma → status='rascunho' Admin envia para cliente → cronograma.status='enviado' Cliente aprova planejamento → cronograma.status='aprovado', posts.status='aceito' Admin insere conteúdo (arte/vídeo) → salva sem mudar status Admin envia para aprovação → aprovacao_status='pendente' (status fica 'aceito') Cliente aprova postagem → aprovacao_status='aprovado', status='agendado' Cliente recusa postagem → aprovacao_status='rejeitado' (status fica 'aceito') Equipe corrige e reenvia → aprovacao_status='pendente' novamente Na data/hora → status='publicado' ``` ### ÁREA DO CLIENTE - FLUXO: 1. Cliente vê alerta ROXO → aprova PLANEJAMENTO (cronograma) 2. Equipe prepara artes/vídeos 3. Cliente vê alerta AMARELO → aprova cada POSTAGEM individual 4. Se recusar → equipe edita e reenvia (é reaprovação de POSTAGEM, não de planejamento) 5. Postagem aprovada → publicada na data/hora agendada