- Spegnimento
- 12 agosto 2026 alle ore 22:16 UTC
- Autore
- Kamo
- Impegno
- 2746ad0
Due difetti indipendenti nelle Chat si nutrono, entrambi invisibili dal lato Java. Il nativo chat / supporto / domande sociali aliased colonne in camelCase senza Citando loro. Le righe ritornano come una mappa chiave di alias; Hibernate prende quelle Le chiavi del server. segnalato, e YugabyteDB piega un identificatore non quotato per caso inferiore. TupleMetadata poi guarda l'alias in una mappa caso-SENSITIVE, manca, e TupleBackedMap di primavera inghiotte l'Eccezione dell'Argumento Illegal e risponde nullo. Quindi map.get("ticketId") è stato nullo senza eccezioni, nessuna linea di log e nulla Avviso. Una fila di sostegno senza biglietto non può essere aperta affatto — un supporto la conversazione è indirizzata per biglietto, non per sessione — così ogni riga in Chat -> Il supporto era inerte. LastActivityAt è morto allo stesso modo, silenziosamente costando la fusione Supporto conteggio illecito assunto che in una sessione di supporto il visitatore e il agente condividere un membro id. Questo è vero solo del widget web-chat pubblico, dove un visitatore anonimo non ha alcun record e scrive sotto l'org membro del sistema. È falso per un biglietto in-app — e la caduta ha giustificato, contare ogni messaggio nella sessione compreso il proprio, significava archiviare un supporto richiesta mettere un distintivo non letto sull'indicatore di chat del richiedente: creazione scrive un Evento di sistema CREATED autorizzato dal richiedente, routing scrive ASSIGNED, e entrambi erano contati contro di loro per una conversazione a cui nessuno aveva ancora risposto. L'ambiguità è ora rilevata con precisione (una sessione a catena pubblica, vista dalla membro è scritto sotto) invece di assunto per ogni sessione di supporto. Inoltre: le conversazioni di supporto sono elencate dall'appartenenza a sessione piuttosto che da incarico, perché un biglietto può essere lavorato da più di un agente — il precedente assegnare rimane attraverso una consegna, e un agente può unirsi dalla coda — e keyed su assegnazione la conversazione è scomparsa da tutti, ma la corrente Assegnae. E trovareSupportSessionsToAutoOpen supporta il durevole riaperto disco chat già avuto, quindi una risposta atterra anche per qualcuno che ha chiuso la finestra.