persona_db/validators/val_social.py
val_social — validador de consistência social e relacional (TASK-075).
Regras verificadas:
- Nenhum casamento ativo simultaneamente com outro casamento ativo da mesma pessoa.
- Filhos (
filho) com pai e mãe biológicos distintos e no máximo um registro porpessoa_id_filho. - Ausência de auto-referência (
pessoa_id_a != pessoa_id_b) emrelacionamento,casamento,uniao_estavel,amizadeeinimizade_ficticia. - Guarda compartilhada (
guarda_compartilhada) referenciando registro existente emfilho. - Pensão alimentícia (
pensao_alimenticia) referenciando relação parental válida. - Simetria estrita de
amizade: se A é amigo de B, B é amigo de A.
:::info Fonte
Módulo persona_db.validators.val_social — 134 linhas · 0 classe(s) · 1 função(ões) pública(s). Ver no GitHub
:::
Constantes e tabelas de módulo
| Nome | Anotação | Valor |
|---|---|---|
Violation | — | dict[str, Any] |
Funções
validate_social()
def validate_social(dataset: dict[str, list[dict[str, Any]]], today: date | None=None) -> list[Violation]
Executa todas as verificações de consistência social e relacional.