persona_db/generators/gen_00_pessoa.py
gen_00_pessoa — gera a persona base (tabela pessoa, domínio 00).
Owned by Agent 10. Produz dicionários deterministicamente a partir de um seed mestre; todos os atributos são derivados dos engines (socio, health, geography, genetics, criminal) e dos seeds.
Contrato de saída (chaves do dict persona) — consumido por gen_01, gen_02 e pelos demais generators:
id, nome_completo, nome_social, data_nascimento (ISO str), sexo,
nacionalidade, cidade_nascimento, uf_nascimento, classe_social,
estado_civil, esta_vivo, data_obito,
education, setor_empregado, ancestry, ancestry_pcts,
cor_olhos, cor_cabelo, pele, mao_dominante, tipo_sanguineo, fator_rh,
altura, peso, criminal (dict do CriminalEngine), cidade_residencia
:::info Fonte
Módulo persona_db.generators.gen_00_pessoa — 370 linhas · 0 classe(s) · 5 função(ões) pública(s). Ver no GitHub
:::
Constantes e tabelas de módulo
| Nome | Anotação | Valor |
|---|---|---|
DEFAULT_TODAY | — | date(2026, 1, 1) |
generate | — | generate_personas |
Funções
simulation_today()
def simulation_today() -> date
persona_db/generators/gen_00_pessoa.py:69
sample_age()
def sample_age(rng: SeededRNG) -> int
Idade inteira varrida da pirâmide etária fictícia.
persona_db/generators/gen_00_pessoa.py:92
build_persona()
def build_persona(idx: int, rng: SeededRNG, today: date, ancestor_class: str | None=None) -> dict
Constrói uma persona completa (dict de contrato).
persona_db/generators/gen_00_pessoa.py:208
generate_personas()
def generate_personas(n: int, seed: int=7, today: date | None=None) -> list[dict]
Gera n personas completas a partir do seed mestre.
persona_db/generators/gen_00_pessoa.py:318
as_pessoa_row()
def as_pessoa_row(p: dict) -> dict
Projeta o dict da persona para o formato da tabela pessoa (e validadores).