- Spegnimento
- 22 luglio 2026 alle ore 17:31 UTC
- Autore
- kamo
- Impegno
- f31c03c
/leads/view/{id} morto con "Cannot read properties of null (lettura 'Nome preferito'). LeadDTO.toDTO() costruisce solo primarioContatto all'interno `if (lead.getName() != null)`, quindi una pista senza Nome riga arriva come «PrimaryContact: null` — ma tipi/leads.ts lo hanno dichiarato non applicabile, quindi compilatore non ha mai chiesto a nessuno di controllare. Stessa bugia su firstName/lastName/email (nullable individualmente, e il percorso di reazione annulla e-mail / telefoni indietro su un contatto che esiste), telefoni e lingue (ciascuno costruito sotto il proprio nulla controllare), e contatti, che i endpoint di piombo non popolano affatto. Dire la verità nel tipo trasformato tsc nella ricerca: ha trovato tre siti, Non uno. L'intestazione, il binario di sintesi e'... catena opzionale fermando un luppolo corto, che avrebbe gettato il momento l'intestazione è stata fissata — e l'intestazione Mi chiamo aiuto. Il ramo ADDRESS del renderer su misura aveva la stessa forma da un direzione diversa: il valore memorizzato non viene digitato, quindi `JSON.parse(valore ||| "{}")` restituito null per un "null" memorizzato e ha buttato fuoriright su testo libero legacy, quindi `.street` è stato letto fuori esso non protetto. I suoi fratelli DROPDOWN e RADIO erano già avvolto in prova / presa; questo non era, e renderField() è chiamato nudo all'interno JSX senza limite di errore, così sia gettato vuoto la pagina. Normalizzazione ai due confini piuttosto che ad ogni sito di chiamata: mapLeadResponse per fetches, e il percorso di seme di websocket. Solo la strada del seme — la fusione sotto salta deliberatamente in entrata nulls così un parziale LEAD UPDATED non vuoto campi intatti, e la normalizzazione prima avrebbe girato `primaryContact: null` in un oggetto vuoto che sovrascrive un buon contatto, svuotando il nome su ogni cambiamento di stato. Un nome mancante ora rende un trattino.