Oi, como vai?
O seu projeto de validação de CPF ficou excelente e muito bem organizado. Dá para perceber o cuidado que você teve tanto com a estrutura do código quanto com a experiência do usuário. A separação em funções deixou o programa limpo, reutilizável e fácil de manter, além de demonstrar uma ótima compreensão sobre modularização em Python.
O uso da biblioteca re para remover caracteres não numéricos foi uma ótima escolha, assim como a implementação do algoritmo de cálculo dos dígitos verificadores utilizando sum() e enumerate(). Outro ponto muito interessante foi o tratamento de CPFs inválidos com todos os números iguais, algo que muitos esquecem de validar. Além disso, limitar o número de tentativas e utilizar sys.exit() trouxe mais controle e profissionalismo para a aplicação.
Também gostei bastante da preocupação com a legibilidade do código através das docstrings e constantes, como o SEPARADOR, pois isso aproxima bastante o projeto de boas práticas utilizadas no mercado.
Pensando na excelente estrutura que você desenvolveu, uma possibilidade interessante de aprimoramento seria transformar o projeto em um pequeno sistema de validação de documentos brasileiros, permitindo também validar CNPJ ou até aplicar máscaras automaticamente durante a digitação. Isso deixaria a aplicação ainda mais completa e ampliaria bastante as possibilidades do seu código.
Parabéns pelo excelente trabalho e por compartilhar uma solução tão completa e bem estruturada com a comunidade. Seu código demonstra muito capricho, preocupação com boas práticas e domínio crescente da linguagem Python. Continue participando do fórum e evoluindo cada vez mais nos seus projetos!