- Spegnimento
- 27 agosto 2026 alle ore 20:27 UTC
- Autore
- Kamo
- Impegno
- 7f2d383
Triage era silenzioso. Qualcuno ha presentato un rapporto e poi ha dovuto continuare ad aprire la scheda per scoprire se qualcuno l'avesse guardato — che è lo stesso che non è stato detto. applicareStatus ora legge lo stato della riga tenuta prima della scrittura e mani entrambi metà al notificante, perché la lettera del reporter è circa la mossa: detto solo dove è atterrato, non possono dire un anticipo da un'inversione. Tutto il necessario della lettera viene risolto mentre la transazione è ancora aperta — l'indirizzo, il nome e il fuso orario del reporter, e il dominio dell'org si bloccano le associazioni — e l'invio avviene dopo che commette. Le due metà non possono essere swapped: tenere una transazione aperta attraverso un viaggio rotondo HTTP pins un database connessione per la sua durata, e su questo database una lettura dopo una scrittura all'interno di uno la transazione può annullare tutto in modo definitivo. Niente nel percorso post-commit scrive al database, che è ciò che lo mantiene chiaro della trappola dove un metodo @Transactional chiamato da afterCommit silenziosamente scarta tutto ciò che scrive. Nessuna e-mail per uno stato impostato sul valore già tenuto, per un rapporto senza reporter, o quando il reporter è la persona che lo ha spostato — una piattaforma l'amministratore può archiviare un rapporto e poi triage esso, e raccontare loro circa il loro proprio clic è come un flusso di notifica insegna alle persone a ignorarlo. Un fuori bordo membro non è scritto per entrambi, attraverso lo stesso predicato il messaggio mancato Le comunicazioni usano. Un invio fallito è registrato e abbandonato piuttosto che retried. A differenza di una chat mancata non c'è un registro dietro questo, perché il rapporto stesso è il durevole record: lo stato è sullo schermo nel momento in cui il reporter guarda.