Texto canônico de UUID
Converta um UUID canônico em minúsculas em dezesseis bytes sem inferir versão ou identidade.
import re
UUID_TEXT = re.compile(r"[0-9a-f]{8}(?:-[0-9a-f]{4}){3}-[0-9a-f]{12}")
def uuid_bytes(text):
if not isinstance(text, str) or not UUID_TEXT.fullmatch(text):
raise ValueError("canonical lowercase UUID required")
return bytes.fromhex(text.replace("-", ""))Revise antes de aplicar
Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
Modelos
Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.
Projeto
Confira zeros e letras hexadecimais, rejeitando maiúsculas, chaves, hífens deslocados e espaços externos.
import re
UUID_TEXT = re.compile(r"[0-9a-f]{8}(?:-[0-9a-f]{4}){3}-[0-9a-f]{12}")
def uuid_bytes(text):
if not isinstance(text, str) or not UUID_TEXT.fullmatch(text):
raise ValueError("canonical lowercase UUID required")
return bytes.fromhex(text.replace("-", ""))Defina a representação de identificadores no limite da aplicação
IdSaffron oferece um ambiente de programação com IA para Windows para examinar as pequenas funções de fronteira que conectam partes maiores de uma aplicação. Quando o tratamento de identificadores precisar mudar, descreva quais representações são aceitas e o que o código posterior espera. Peça ao modelo que inspecione juntos o validador, a etapa de conversão e o chamador pertinente, para que uma normalização aparentemente inofensiva não amplie silenciosamente o contrato de entrada.
Uma tarefa baseada em uuid_text.py pode revisar a aceitação de texto UUID canônico em minúsculas antes de convertê-lo em bytes. Traga exemplos que diferem em maiúsculas e minúsculas, separadores ou espaços ao redor e declare quais devem ser rejeitados. Discuta se a normalização pertence à etapa anterior à validação ou se o chamador deve fornecer a forma canônica. Essas decisões tornam a edição proposta específica o bastante para ser revisada diante do código.
Após a revisão, execute testes do projeto que confiram tanto os bytes resultantes quanto as representações rejeitadas. Examine como a aplicação informa identificadores inválidos, incluindo caminhos que antes presumiam que a conversão não poderia falhar. IdSaffron se conecta a endpoints suportados compatíveis com OpenAI ou da Anthropic, com credenciais quando exigidas. Opções de modelos sem restrições dependem do endpoint escolhido; restrições, ferramentas disponíveis e capacidade de contexto continuam sendo propriedades desse modelo e servidor. Os exemplos de aceitação dão à conversa de programação uma referência estável entre revisões.
Limites de identificadores que merecem uma resposta explícita
A função auxiliar também deve aceitar identificadores em maiúsculas?
Decida com base no contrato da aplicação, em vez de adicionar automaticamente um comportamento permissivo. Se os chamadores exigem texto canônico em minúsculas, aceitar outras formas pode ocultar inconsistências anteriores. Se houver intenção de normalizar, especifique onde e teste a representação resultante.
Um identificador válido prova que um registro existe?
Não. A validação de formato estabelece apenas que a representação fornecida atende à estrutura esperada. Existência e autorização pertencem a verificações separadas da aplicação; revise o consumidor antes de tratar uma conversão bem-sucedida como permissão para acessar um registro.
Por que conferir os bytes além do texto aceito?
A aceitação por si só não prova que a conversão produz o valor esperado pelo consumidor. Inclua pares conhecidos de texto e bytes e verifique o tratamento posterior, especialmente se a edição proposta alterar limites de serialização ou armazenamento usados em outras partes do projeto.
E se os chamadores já removerem espaços ao redor?
Inspecione esse comportamento antes de duplicá-lo. Defina se esta função auxiliar recebe entrada normalizada ou realiza a normalização. Explicitar essa responsabilidade facilita entender as regras de rejeição e evita tratamentos inconsistentes em diferentes caminhos de chamada.
IdSaffron · Atualizado 2026-10-25