Skip to content

fix(types): support SimplesNacionalDto events and ignore extra fields on BaseModel - #26

Merged
joseanoxp merged 1 commit into
mainfrom
fix/simples-events-and-relaxed-extra
Oct 21, 2026
Merged

joseanoxp merged 1 commit into
mainfrom
fix/simples-events-and-relaxed-extra

Conversation

@joseanoxp

Copy link
Copy Markdown
Owner

Summary

  • altera extra="forbid" para extra="ignore" no BaseModel de resposta para garantir tolerância e resiliência a extensões aditivas da API da CNPJá;
  • introduz SimplesNacionalDto, SimplesEventDto e enum SimplesEventRegime para tipar eventos futuros do Simples/IBS/CBS (events);
  • atualiza OfficeCompanyDto.simples e SimplesDto.simples para utilizar SimplesNacionalDto;
  • adiciona testes cobrindo o payload real do Banco do Brasil (events: []), eventos populados e descarte gracioso de campos extras não mapeados.

Root cause

A API da CNPJá atualizou o endpoint /office/:taxId para incluir o novo campo events dentro de company.simples. Com extra="forbid", qualquer adição da API externa causava ValidationError nos clientes consumidores (ex.: monitor-certidoes).

Test Plan

  • task qa (lock check, ruff check, ruff format check, mypy strict, 144 testes com 96% de cobertura, pre-commit hooks)

@joseanoxp
joseanoxp merged commit 09044ad into main Oct 21, 2026
1 check passed
@joseanoxp
joseanoxp deleted the fix/simples-events-and-relaxed-extra branch October 21, 2026 12:37
@github-actions github-actions Bot mentioned this pull request Oct 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant