Controle de versões
Acompanhe cada alteração em uma simulação RodSim. O PetroBench salva snapshot sempre que você executa, restaura, duplica ou importa. Compare versões, restaure estados anteriores e limpe versões antigas.
O histórico de versões está disponível apenas no pacote Enterprise.
Toda simulação RodSim tem histórico de versões integrado. O PetroBench salva snapshot quando algo significativo acontece (run, duplicate, import) e cada versão é totalmente restaurável.
Como Versões São Criadas
O PetroBench cria versão automaticamente. Duas categorias, sete gatilhos.
| Categoria | Gatilho | Quando dispara |
|---|---|---|
| Base Case | Create | Primeira vez que a simulação é criada |
| Import | Importada de arquivo RodStar ou SRod | |
| Sync | Sincronizada de integração externa | |
| Auto | Run | Após simulação static ou dynamic terminar |
| Duplicate | Ao duplicar a simulação | |
| Restore | Ao restaurar versão anterior | |
| Migration | Sistema migrou schema da simulação |
Versões Base Case marcam estado original da simulação. Versões Auto têm limite e são limpas ao longo do tempo.
1. Abrir Version History
- Abra a simulação
- Clique no ícone Version History na barra superior direita
- A sheet de histórico desliza da direita
Cada versão mostra:
- Version number (v1, v2, ...)
- Trigger badge (Simulation Run, Duplicated, Restore)
- Date and time, quem disparou
- Inline diff do que mudou desde a versão anterior (por exemplo, 17 changes since v2) com valores antigos riscados em vermelho e novos em verde
- Botão Add note para rotular a versão
- Botão Restore (em toda versão exceto a atual)
- Tag verde Current na versão mais recente
2. Adicionar Nota
Notas transformam versão gerada automaticamente em versão rotulada, protegida da limpeza e fácil de encontrar depois.
- Clique em Add note sob qualquer versão
- Digite o rótulo (por exemplo, "Version 3 Note" ou "Before rod redesign")
- Clique no check verde para salvar
Para alterar rótulo depois, passe o mouse na versão e clique em Edit note.
Adicione nota a qualquer versão que queira manter. A limpeza nunca remove versão rotulada.
3. Comparar Versões
Dois fluxos.
3.1 Comparar Versão com Atual
Fluxo padrão com uma versão selecionada (ou zero, quando escolhe a mais recente).
- Abra a sheet de histórico
- Clique em Compare with current no rodapé
A view Compare mostra duas colunas. A faixa de abas no topo agrupa mudanças por seção com contagens:
| Aba | Mostra |
|---|---|
| All | Todo campo alterado na simulação |
| Simulation Preferences | Targets, damping, step length |
| Well Data | Propriedades de fluido, specs da bomba, pumping unit |
| Tubing Data | PSN depth, anchor, coluna de tubing |
| Rod Data | Coluna taper de hastes |
| IPR Data | Dados de teste de reservatório |
O toggle no canto superior direito (Changes only) oculta campos idênticos para ver só diferenças.
3.2 Comparar Duas Versões
- Na sheet de histórico, marque checkboxes em duas versões
- Clique em Compare with current (o rótulo do botão passa a comparar as duas)
O layout de diff é o mesmo. Use setas chevron no canto superior direito da view Compare para percorrer versões sem sair da página.
4. Restaurar Versão
Na view Compare, clique Restore to v[N] no canto inferior direito. Na lista de histórico, clique Restore em qualquer versão.
O diálogo confirma:
Restore to v2? This will revert the simulation to the selected version. A backup of the current state will be saved automatically before restoring.
Clique Restore. O PetroBench:
- Salva estado atual como nova versão (rollback também reversível)
- Substitui entradas da simulação pelo snapshot
- Adiciona nova versão com gatilho Restore e rótulo "Restored from v[N]"
Não é possível restaurar enquanto simulação dynamic estiver em execução. Aguarde terminar.
Se restore for bloqueado, a sheet mostra "This version cannot be restored" com o motivo.
5. Limpar Versões Antigas
Limpeza restrita a app roles Admin. Engineers podem criar e restaurar versões, mas não excluí-las.
Versões Auto Run acumulam rápido. Use Cleanup para reduzir sem perder as importantes.
- Na sheet de histórico, clique Cleanup
- Escolha escopo:
| Opção | O que é excluído |
|---|---|
| Delete all old versions | Toda versão auto sem rótulo exceto a mais recente |
| Older than 7 days | Versões auto com mais de 7 dias |
| Older than 30 days | Versões auto com mais de 30 dias |
| Older than 90 days | Versões auto com mais de 90 dias |
O popup informa quantas serão removidas: "2 unlabeled version(s) eligible for cleanup. Labeled versions and the latest version are always preserved."
O seletor Filter by trigger no topo do mesmo popup permite restringir a tipos de gatilho (só Run, só Duplicate, etc.) antes de executar limpeza.
6. Atalhos do Rodapé
O rodapé da sheet de histórico tem mais controles ao lado de Cleanup:
- Save version: snapshot manual do estado atual. Aparece quando há mudanças ainda não capturadas em versão.
- Reset: dropdown (após existir versão Base Case) com dois restores de um clique:
- Reset to Base Case (v[N]): reverte ao estado original da simulação
- Restore Previous (v[N]): reverte à versão imediatamente anterior à atual
Ambos seguem o mesmo fluxo backup-then-replace de um Restore normal.
Contagem X of Y versions fica à esquerda. Quando há mais versões que as carregadas, botão Load more no fim da lista traz a próxima página.
Permissões
Ações de versão verificam permissões de role:
| Ação | Permissão necessária |
|---|---|
| View history | View simulation |
| Compare | View simulation |
| Edit note | Edit simulation |
| Restore | Edit simulation |
| Delete / Cleanup | Apenas role Admin |
Sem permissão para uma ação, o botão permanece visível mas desabilitado com tooltip explicando o motivo.