Feito com Chinaski

Revisões e Revisão

O Chinaski mantém histórico editorial em três camadas: rascunhos autos salvos para quem digita, snapshots completos para cada versão salva de um item, e um fluxo de aprovação que move rascunhos através de revisão. Esta página explica cada camada e o ciclo "retornar para revisão" que fecha o laço.

Respostas rápidas

  • O que acontece quando salvo? Um snapshot completo da page, post ou document é capturado antes de sua alteração ser gravada, o histórico está sempre pelo menos um passo atrás da sua edição atual.
  • Enquanto ainda estou digitando? Sua edição em progresso autosavela como um rascunho por usuário, mantido separado do conteúdo salvo e dos rascunhos de outros usuários. Descartá-lo restaura a versão salva.
  • O que acontece quando uma revisão é "retornada"? O item pendente volta para o editor com uma razão opcional (registrada e enviada por e-mail), e ele pode revisar e resseguir.

Revisões

Cada page, post e document mantém seu próprio trilho de revisões:

  • Visão de lista - mais recentes primeiro, com um sumário no nível de campo e um marcador de quais campos mudaram em comparação à revisão seguinte. Quando a lista excede o limite visível, a lista o diz.
  • Diffs - compare qualquer revisão com o conteúdo vivo atual, ou duas revisões entre si.
  • Restaurar - pages e posts podem ser revertidos a qualquer revisão selecionada; a restauração em si é auditada.

Cada entidade mantém um histórico limitado (as entradas mais recentes por item são mantidas; as muito antigas rolam para fora), de modo que o histórico não possa crescer sem limite.

Rascunhos (autosave)

Enquanto você edita, seu formulário autosavela como um rascunho que pertence a você, uma chave de rascunho combina seu ID de usuário com o item, de modo que dois editores trabalhando na mesma page tenham cada um seu próprio estado de autosave e não possam sobrescrever as teclas inacabadas uns dos outros. Você pode descartar seu rascunho explicitamente; ele também nunca sobrescreve a página commitada automaticamente.

O fluxo de revisão

Quando Require approval (Settings → Workflow) está ativado, o conteúdo de não-admins passa por um ciclo de revisão com quatro estados:

Draft → Pending review → Approved (published)

com Rejected como o estado de retorno.

  • Submit for review - um editor envia o item para cima; ele passa para revisão pendente (isso também é o que acontece automaticamente quando a aprovação está ativada e um editor clica "publish"). O e-mail de notificação de revisão configurado recebe uma mensagem com o título, o nome do submetedor, e um link direto para revisá-lo.
  • Approve - um admin aprova: o item é imediatamente publicado e um build é despachado; qualquer data de agendamento futura restante é limpa para que a page aprovada efetivamente entre no ar. O criador do conteúdo recebe um e-mail de aprovação se sua conta tiver um endereço, e a notificação é auditada.
  • Reject (retornar para revisão) - um admin rejeita com uma razão opcional. O item retorna ao seu editor com o status "rejected", a razão é registrada no log de auditoria, e o criador é notificado por e-mail. Ele pode então editar e resseguir.
  • Um item rejeitado ou em rascunho pode ser reenviado quantas vezes for necessário; as reaprovações são todas decisões frescas.

Duas coisas a saber na prática

  • Notificações por e-mail precisam de SMTP (Settings → Email) e são puladas completamente em modo air-gap, o fluxo ainda funciona; a entrega das mensagens é o que falta. Todo o resto (status, entradas de auditoria, confirmações flash) continua funcionando.
  • Aprovar publica e reconstrói. Aprovar não é um rubro sobre um estado de rascunho anterior: ele vira o item para publicado e dispara o build do site para aquele conteúdo.

Reutilização de revisões em todos os lugares

Outros tipos de conteúdo reutilizam a mesma maquinaria: blocks e stacks mantêm seus próprios trilhos de revisão com a mesma interface de diff-e-restaurar, itens de mídia fazem snapshot a cada salvamento, e cada ação de restauração é auditada com o nome do autor.

Leia este site em