Skip to main content

Contexto compartilhado (event.data)

Todos os passos de uma mesma execução compartilham um único objeto de contexto. O motor mescla:
  • Objetos aninhados alinhados às linhas do BD: entity, transaction, investigation, kyc, alert (e às vezes alerts[]).
  • IDs planos por compatibilidade: entityId, investigationId, alertId, kycValidationId, etc.
  • Metadados da regra quando o gatilho é rule_triggered: rule.id, rule.name, rule.score, etc.
  • Enriquecimento e risco: enrichment, riskMatrix, scores atualizados em entity e campos planos.
  • Standby: com execução pausada, executionId e callbackToken para links de continuar/cancelar.
Condições posteriores veem o que ações anteriores já alteraram na mesma execução.

Refresh ao retomar standby

Ao retomar após standby, o motor mescla o snapshot salvo com payload opcional, executa refreshContextForResume (recarrega entidade, transação, investigação e KYC do BD) e preserva caminhos importantes escritos antes (scores, IDs, etc.). Se o usuário concluiu o KYC no provedor enquanto o fluxo aguardava, os passos seguintes podem ver o KYC atualizado sem novo disparo: ainda é a mesma execução.

KYC: dois padrões

PadrãoO que acontece
A — Mesma execução (standby)ex.: create_kyc_validation → espera → usuário clica em Continuar via continueUrl. Ao retomar, o contexto é atualizado a partir do BD.
B — Nova automação no resultadoAo emitir kyc_approved, kyc_rejected ou kyc_validation_finished, outras automações com esses gatilhos iniciam uma nova execução.
Ambos podem ser combinados: fluxo com standby para envio do link e políticas separadas disparadas no resultado final.

Quando o standby realmente pausa

É necessário:
  1. Configurar waitAfterStep (ou equivalente no grafo), e
  2. Que a execução passe por runAutomationById e exista linha em automation_executions (executionId, callbackToken).
Caminhos típicos: POST /automations/:id/run (com manual_execution), regras, scheduler (scheduled), fluxo de criação de entidade, etc. Caminhos somente reativos (alert_created, investigation_*, muitos eventos KYC) usam processEvent sem execução durável: a espera não pausa; o fluxo termina de uma vez.

Continuar, cancelar e URLs em templates

Com executionId e callbackToken, os templates podem expor continueUrl e cancelUrl. Referência da API: Continuar execução, Cancelar execução, Execuções em espera, Contexto da execução.

Execuções agendadas

Automações scheduled costumam receber contexto de entidade restrito. Reinício de processo pode pular janelas: trate como limitação operacional salvo recuperação documentada no deploy.
Manutenção: comportamento de standby em automation-engine e rotas relacionadas.