Repository navigation
Conversation
is_valid_legal_process levantava ValueError quando o número limpo não tinha 20 dígitos ou continha letras, porque os campos TR e OOOO eram convertidos com int() sem validação prévia. Também aceitava como válido um número com dígitos não ASCII, como "٠", que str.isdigit e int aceitam. Agora a função retorna False para qualquer entrada que não seja uma string com exatamente 20 dígitos ASCII depois de remover os símbolos. format_legal_process passa a usar a mesma verificação e retorna None para dígitos não ASCII. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #794 +/- ##
=======================================
Coverage 99.09% 99.10%
=======================================
Files 26 26
Lines 775 781 +6
=======================================
+ Hits 768 774 +6
Misses 7 7 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Descrição
is_valid_legal_processlevantavaValueErrorquando o número limpo não tinha 20 dígitos ou continha letras, e aceitava como válido um número com dígitos não ASCII (ex.: "٠"). Este PR faz a função retornarFalsenesses casos, como os outros validadores da biblioteca.Mudanças Propostas
_is_twenty_digits, que verifica se a string tem exatamente 20 dígitos ASCII (re.fullmatch(r"\d{20}", ..., flags=re.ASCII)).str.isdigitnão basta porque aceita caracteres como "²" e "٣".is_valid_legal_processretornaFalsepara entradas que não são string e para strings que, sem os símbolos, não têm 20 dígitos ASCII, antes de converter os campos comint().format_legal_processusa a mesma verificação e retornaNonepara dígitos não ASCII.maine passam com a correção.Checklist de Revisão
Declaração de Uso de IA (OBRIGATÓRIA)
Usei o Claude Code (Anthropic) para investigar o bug, escrever a correção e os testes. Revisei o diff e conferi os resultados:
python -m unittest discover tests(178 testes passando),ruff format --check .eruff check .com a versão dopyproject.toml.Comentários Adicionais (opcional)
O PR #743 tratava parte disso, mas foi fechado sem issue associada; este segue o fluxo do CONTRIBUTING, com issue atribuída.
Issue Relacionada
Closes #793
🤖 Generated with Claude Code