Pular para o conteúdo principal

persona_db/generators/gen_05_carreira.py

gen_05_carreira — domínio 05: empresas, cargos, contratos, salários e carreira.

Implementa TASK-045 de TODO.MD:

  • Entrada no mercado de trabalho coerente com idade e escolaridade (>= 18 anos para contratos CLT/PJ/público, >= 14 anos para estágio/aprendiz).
  • Influência familiar no setor e na empresa (nepotismo via SocioeconomicEngine) em ordem topológica geracional.
  • Salários mensais calibrados via SocioeconomicEngine.salary com piso no salário mínimo histórico vigente (MIN_WAGE_HISTORY).
  • Holerites com descontos progressivos de INSS e IRRF, benefícios, férias, avaliações de desempenho, promoções, demissões, licenças médicas, sindicatos e rede de colegas de trabalho.

:::info Fonte Módulo persona_db.generators.gen_05_carreira — 495 linhas · 0 classe(s) · 2 função(ões) pública(s). Ver no GitHub :::

Constantes e tabelas de módulo​

NomeAnotaçãoValor
SAME_PARENT_SECTOR_PROB—0.32
FAMILY_COMPANY_PROB—0.18
MIN_WAGE_BY_YEARdict[int, float]{int(r['year']): float(r['min_wage']) for r in MIN_WAGE_HISTORY}

Funções​

min_wage_for_year()​

def min_wage_for_year(year: int) -> float

Retorna o salário mínimo vigente para o ano informado.

persona_db/generators/gen_05_carreira.py:67

generate()​

def generate(personas: list[dict[str, Any]], seed: int=7, today: date | None=None) -> dict[str, list[dict[str, Any]]]

Gera todas as tabelas do domínio 05 (Carreira & Trabalho).

persona_db/generators/gen_05_carreira.py:144