Resolva relacionamentos por chave natural
Sistemas de origem referenciam a outra ponta de um relacionamento por aquilo que têm — um identificador fiscal, um número de conta — não por um identificador da plataforma. Esta página é como isso vira um vínculo governado.
Antes de começar
- Ambos os tipos de entidade definidos, e um tipo de relacionamento os ligando.
- O atributo que guarda a chave natural definido no tipo de destino.
- A permissão
relationship-resolution-rule.create.
1. Defina uma regra de resolução
Regras de resolução são definidas sobre um tipo de relacionamento, que fixa a direção e a cardinalidade do que elas podem criar.
Uma regra diz: para este tipo de relacionamento, desta origem, a chave neste campo identifica o destino por aquele atributo.
Escolha uma chave que seja genuinamente identificadora. Uma regra apoiada em algo não único produz ambiguidade em todo registro em vez de vínculos.
2. Ingira a evidência
Carregue registros que carregam a referência. A afirmação de cada origem é registrada como uma asserção por direito próprio, antes de qualquer vínculo ser feito.
Essa separação é o que faz carregamento fora de ordem funcionar: a asserção registra o que a origem disse, possa ou não a plataforma agir sobre isso ainda.
3. Entenda os estados
| Estado | Significado | Ação |
|---|---|---|
| Pendente | O destino ainda não foi encontrado | Aguarde — é reprocessada conforme dados chegam |
| Resolvida | Existe uma aresta canônica | Nenhuma |
| Ambígua | A chave correspondeu a mais de um candidato | Uma pessoa decide |
| Conflitante | O alvo foi resolvido, mas a aresta não pôde ser criada — quase sempre uma regra de cardinalidade bloqueou | Uma pessoa decide |
Nada é chutado. Uma asserção que não pode ser resolvida sem ambiguidade espera em vez de escolher um candidato.
4. Resolva ambiguidades
Asserções aguardando um steward. Nada aqui foi adivinhado — cada uma é evidência que casou com mais de um candidato, ou com nenhum.
Asserções ambíguas entram na fila de um curador, que escolhe o destino correto ou rejeita a asserção.
Ambiguidade recorrente numa regra é um sinal sobre a regra, não sobre os dados: a chave não é tão identificadora quanto se supôs. Corrija a regra em vez de decidir a mesma classe de caso repetidamente à mão.
5. Retroalimente após uma regra tardia
Ativar uma regra depois que evidências já foram ingeridas dispara uma retroalimentação, para que asserções registradas antes de a regra existir sejam avaliadas contra ela.
Evidência nunca é descartada por ter chegado antes da sua regra.
6. Trate sucessões
Quando um fato muda — um ativo vendido, um vínculo empregatício encerrado — a janela do relacionamento anterior fecha e uma nova abre. O histórico permanece intacto, e perguntar quem detinha o relacionamento numa data passada devolve a resposta certa.
A seguir
Última verificação no commit d3c2586b (2026-08-03)