Testo UUID canonico
Converti un UUID canonico minuscolo in sedici byte senza dedurne versione o identità.
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("-", ""))Controlla prima di applicare
Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.
Modelli
Configura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.
Progetto
Verifica zeri e lettere esadecimali, rifiutando maiuscole, parentesi graffe, trattini spostati e spazi esterni.
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("-", ""))Concorda la rappresentazione degli identificativi al confine dell’applicazione
IdSaffron offre un ambiente di programmazione con IA per Windows in cui esaminare le piccole funzioni di confine che collegano parti più grandi di un’applicazione. Quando deve cambiare la gestione degli identificativi, descrivi quali rappresentazioni sono accettate e cosa si aspetta il codice a valle. Chiedi al modello di esaminare insieme validatore, conversione e chiamante pertinente, affinché una normalizzazione apparentemente innocua non ampli silenziosamente il contratto di input.
Un’attività basata su uuid_text.py potrebbe esaminare l’accettazione di testo UUID canonico minuscolo prima della conversione in byte. Porta esempi che differiscano per maiuscole, separatori o spazi circostanti e indica quali vadano rifiutati. Discuti se la normalizzazione debba precedere la validazione o se il chiamante debba fornire la forma canonica. Queste decisioni rendono la modifica proposta abbastanza specifica da poterla valutare rispetto al codice.
Dopo la revisione, esegui test del progetto che verifichino sia i byte risultanti sia le rappresentazioni rifiutate. Esamina come l’applicazione segnala identificativi non validi, inclusi i percorsi che prima presumevano che la conversione non potesse fallire. IdSaffron si collega a endpoint supportati compatibili con OpenAI o di Anthropic, con credenziali quando richieste. Le opzioni di modelli senza restrizioni dipendono dall’endpoint scelto; restrizioni, strumenti disponibili e capacità di contesto restano proprietà di quel modello e server. Gli esempi di accettazione danno alla conversazione sul codice un riferimento stabile fra le revisioni.
Confini degli identificativi che richiedono una risposta esplicita
La funzione deve accettare anche identificativi maiuscoli?
Decidi in base al contratto dell’applicazione anziché aggiungere automaticamente un comportamento permissivo. Se i chiamanti richiedono testo canonico minuscolo, accettare altre forme può nascondere incoerenze a monte. Se è prevista normalizzazione, specifica dove avviene e verifica la rappresentazione risultante.
Un identificativo valido dimostra che un record esiste?
No. La validazione del formato stabilisce solo che la rappresentazione fornita rispetta la struttura attesa. Esistenza e autorizzazione appartengono a verifiche applicative separate: esamina chi usa il risultato prima di considerare una conversione riuscita come permesso di accesso a un record.
Perché verificare i byte oltre al testo accettato?
La sola accettazione non prova che la conversione produca il valore atteso dall’utilizzatore. Includi coppie note di testo e byte e verifica la gestione a valle, soprattutto se la modifica cambia confini di serializzazione o memorizzazione usati altrove nel progetto.
E se i chiamanti eliminano già gli spazi circostanti?
Esamina quel comportamento prima di duplicarlo. Concorda se la funzione riceva input normalizzato o esegua essa stessa la normalizzazione. Esplicitare la responsabilità rende più comprensibili le regole di rifiuto ed evita trattamenti incoerenti fra diversi percorsi di chiamata.
IdSaffron · Aggiornato 2026-10-25