Evento de Borda de Compensação(Compensation Boundary Event)
Anexa um tratador de compensação a uma atividade: se a compensação for acionada depois, o tratador vinculado desfaz o trabalho concluído desta atividade. Círculo duplo com setas de retrocesso.
A Borda de Compensação (Compensation Boundary Event) é diferente das outras bordas: ela não reage enquanto a atividade roda — ela registra a receita de desfazer para depois que a atividade concluiu. A associação pontilhada a liga a uma atividade de compensação dedicada (com o marcador de retrocesso) que executa o desfazer quando um Lançamento/Fim de Compensação dispara.
Quando usar e evitar
Quando usar
Em toda atividade cujos efeitos possam precisar de desfazer de negócio depois (reservas, cobranças, lançamentos).
Em sagas e transações, para declarar a operação inversa de cada passo.
Quando o desfazer difere por atividade — cada uma ganha seu tratador.
Quando NÃO usar
Para tratar falhas durante a atividade — isso é Borda de Erro.
Quando o trabalho não tem inversa significativa — compensação não a inventa.
Em atividades que nunca concluem antes do ponto de rollback — não há o que desfazer.
Exemplo de negócio
Declarando como desfazer a reserva do hotel

Abra este exemplo no editor de processos da HEFLO e explore o diagrama por dentro.
Abrir no editor HEFLO →Passo a passo
- Reservar hotel conclui normalmente; sua Borda de Compensação (destacada) + tratador associado Cancelar reserva do hotel declaram o desfazer.
- Mais tarde, o pagamento é recusado e a compensação é lançada.
- O motor invoca o tratador — a reserva é cancelada mesmo com a tarefa concluída há tempos.
Diferenças
Borda de Compensação vs. outras bordas
As demais bordas vigiam uma atividade em execução. A borda de compensação dorme durante a execução e só importa após a conclusão, quando a compensação é acionada. Além disso, usa associação (pontilhada) ao tratador, não fluxo de sequência.
FAQ
O que marca a atividade tratadora?
Ela é definida como isForCompensation e desenhada com o marcador de retrocesso; não pode ser alcançada por fluxo de sequência normal — apenas pela compensação.
O tratador enxerga os dados da atividade original?
Sim — os motores fornecem o contexto da atividade concluída para o desfazer ser preciso (ex.: o id da reserva).