Servire cartelle e etichette intelligenti come messaggi, non come righe di indice

FixEmailService
Spegnimento
30 agosto 2026 alle ore 20:22 UTC
Autore
Kamo
Impegno
7daab4b

Entrambi gli endpoint hanno risposto a e-mail metadata.search index e consegnato il client che il tavolo tiene. Una cartella intelligente ha restituito SearchIndexEntity — messageUid, daEmail, isRead — dove l'elenco dei messaggi rende EmailMessage: uid, da, visto. Un'etichetta era peggio, messaggi label di ritorno uniscono le righe, che portano un membro, un cartella, un UID e un ID etichetta e nessun soggetto, mittente o data affatto. Né poteva hanno dipinto una fila. L'etichetta endpoint non aveva nessun caller, quindi niente lo ha mai detto. IndicizzatoEnvelopes ora detiene l'unica mappatura, sollevato da IndexedMessageListService dove era privato alla lista delle cartelle. Prende la cartella dalla riga piuttosto che dal chiamante: un elenco di cartelle conosce la propria cartella, una cartella intelligente enfaticamente non — i suoi risultati abbracciano ogni cartella che il membro ha indicizzato, e ogni azione che il client offre su una riga indirizza il messaggio per cartella + UID. Ci sono due fallimenti silenziosi. Un campo di condizione non riconosciuto è stato saltato piuttosto che ha rifiutato, così un typo in "da email" ha trasformato "mail dal mio contabile" in tutti la mia posta e ha segnalato il successo — l'unico modo in cui un filtro non deve mai fallire. E POST con nessuna condizione serializzata null nella colonna come i quattro caratteri "null", che parses come JSON, fallisce come una lista di condizioni, e si trasforma ogni lettura successiva di questo cartella in un errore tracciabile a nulla. Entrambi sono 400 ora, come è una query la cui le condizioni salvate non possono essere lette; quelle erano 500, e nessuno di loro è colpa nostra. Verificato: mvn test, 464 pass (459 prima, 5 nuovi per la mappatura).

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo