Chiudere gli oracoli residui dell'esistenza di cross-org + cap
Risultati di revisione avversaria MLOS-W-01/03/04: - la busta di lista vuota normalizzata 404 ora riecheggia le chiavi di identità della richiesta *************...
MediaObjTransit.date created inserito=false così DB predefinito lo riempie
Il costruttore non ha mai impostato dataCreated; Hibernate bound NULL e violato il vincolo NON NULL, rottura addMembersToSession (e quindi il social lead-accept...
Prevenzione atomica prima della creazione di piombo — prevenire i cavi in piscina orfani
social.lead.new può essere elaborato contemporaneamente (old + new Security Pod di servizio entrambi tenere un abbonamento core-NATS durante un RollingUpdate → ...
Non licenziare il nuovo popup su rinfresco / quando non disponibile
myStatus from AvailabilityContext defaults to 'AVAILABLE' fino a due fetches asincroni (/user-info quindi /members/me/availability) risolvono, quindi su un brow...
Smalto di revisione sottoscrittura (i18n, a11y, contrasto, enum umanizza)
Applicare i risultati delle recensioni: localizzare congelati/sì/no + aria-label umanizzati, umanizzare enum pills, fase title-case parity (titolo condivisoCase...
Guardia inquilina chiusa a falce su waivers/validations di sottoscrizione
Recensione trovata che la guardia org era un no-op sul caso comune della lista vuota per il da-id waivers/validations legge (che il servizio MLOS non org-filter...
Aggiungi percorso proxy mancante /api/security/lead-imports; predefinito per Importare modelli
- La base GET/POST /api/security/lead-imports non aveva alcun Prossimo proxy route.ts (solo sub-paths ha fatto), quindi Passato Importa fetch (e l'importazione ...
Cancello FFA accettabilità su sospensione disponibile-sommario + disponibile
disponibile-sommario ora risolve l'assegnazione del membro e salta il prodotto quando sospeso BEFORE il free-for-all cortocircuito, e disponibile() cancelli di ...
Sospensione blocca attualmente l'accettazione (accettare + accettare + FFA)
findApplicableAllotments filtrato 'AND la.isActive = true', quindi ottenereMostSpecificAllotment ha restituito un ribasso ACTIVE meno specifico (o niente) quand...
Implementazione POST /api/bulktext/send interno SMS transazionale
SicurezzaServizio BulkTextSmsClient (password-recupero + Impostazioni account SMS) E' sempre stato arrestato. ma il controller non è mai stato costruito, così o...
Invia leadId come stringa quando si crea un commento
parseInt() arrotondato ids passato JS MAX SAFE INTEGER, quindi il backend ha cercato un vantaggio inesistente e ha restituito 404, surfacing come 'Failed a crea...
Accettare leadId come stringa per crearePost per preservare la precisione CRDB id
I ID di piombo sono valori CRDB unici rowid() che superano JS MAX SAFE INTEGER. Il frontend ora invia leadId come stringa; parse sia String che numerico forme c...
Risolvere i nomi dei membri su /leads/credits + link al loro account
La colonna e il filtro dei membri hanno mostrato id grezzi perché la mappa dei nomi è stata costruita da /api/security/members, il cui CockroachDB Long ids seri...
Fare EditableCard onEdit opzionale in modo da riassegnare gating type-checks
La carta di assegnazione passa `canReassignManually ? startEditAssegnazione: non definita` a EditableCard.on Modifica, ma suEdit è stato digitato `() => void` (...
Pulsante bianco/glow per i Leads blink (theme-agnostic vs green branding)
Stato occupato su Start Import + log di debug di goccia
- disattivare Start Import / Indietro e mostrare un girante + 'Importare...' mentre l'importazione POST è in volo, impedendo le presentazioni duplicate su file ...
Correttezza, scala & PII indurimento in LeadImportController
- dedup tramite query LeadRepository, invece di trovareAll() su tutti gli inquilini (era un OOM/DoS + rischio di esposizione cross-tenant, re-run per 1000-row b...
Domanda di importazione dedup + org-guard membro / assegnazione del prodotto-vendor
- No, no. , proiezione-solo ricerca duplicata per l'importatore manuale (sostituisce un per-batch trovareAll() che ha idratato ogni piombo attraverso tutti gli ...
Pin marcatoForReassignmentBy FK a INT8 (non ereditato di default)
Senza colonnaDefinizione, Hibernate copie member.id (INT8 DEFAULT Unique rowid()), così CockroachDB ha riempito le righe di cavi esistenti con ids membri fasull...
Interrompere l'icona di aggiornamento lampeggiando attraverso il loop di controllo infinito
Una volta che un dominio è stato confermato SSL, checkDns incondizionatamente costruito un nuovo oggetto di dominio anche quando sslConfirmed era già vero. Il n...
Ritorno 422 (non 500) quando il membro non ha casella di posta
elencoPiù vecchi e altri endpoint leggiti hanno lanciato IllegalStateException da MailContext.toMailCredentials() quando un membro non aveva credenziali IMAP fo...
Non prendere org con un id di precisione
LabelManager derivato orgIdStr da getOrgIdString() (precision-safe) con un fallback a String (organization.id). Organization.id è un numero JS e in silenzio tro...
Impostare la regione del sito + utilizzare nodo-local MinIO per pod
- Aggiungi kamo.minio.region (MINIO REGION, default us-west-ca-s-1) così SigV4 le firme corrispondono alla regione del sito del server; fissa lo sfondo caricame...
Segna le richieste con la regione del sito configurabile
MinIO ora fa rispettare MINIO SITE REGION (us-west-ca-s-1) nel SigV4 campo di autorizzazione dal momento che la replica del sito è stata abilitata. Il cliente e...
Goccia immagini di sfondo che 404 invece di mostrare un telaio rotto
Tracciare carichi di immagini di sfondo falliti e filtrarli dalla giostra Swiper, così un tema incompleto (ad esempio optionone, il cui bg/2.webp non è mai stat...
Non restituire mai 401 da proxy (era logging utenti fuori su enter-as); degradare a vuoto
Proxy inietta X-Member-Id da sessione (me endpoint 400'd, quindi banner di prova non ha mai avuto dati)
Mostra banner di prova sulla homepage di benvenuto (app/page.tsx) top-right, non solo NavTop
Mostra banner di prova per qualsiasi TEAM MEMBER (sistema/team/admin), diminuzione della dipendenza da dio
Porta homepage banner di prova al personale (membri del team/admins/sistema), nascondino dai membri normali
Il segnale del banner di prova è org-level (tutti i membri di un org di prova), non basato sul sedile
L'abbonamento a pagamento cancella la scadenza del processo (prove dei supersedi a pagamento)
Termine di prova (prova completa dei supersedi)
Nel percorso di aggiornamento di abbonamento esistente di provisionCompSubscription, set trialExpiresAt a null in modo che un org di prova in precedenza è promo...
Recuperare i diritti di avvio sincronizzazione su DB transitorio indisponibilità per evitare CrashLoopBackOff
Persist background reorder via endpoint commit (nessuna perdita di dati)
Salva ora stadi nuovi upload in arrivo, quindi commette l'ordine completo desiderato (existing-by-srcIndex o newby-token) così le immagini esistenti riordinate ...
Arrestare la perdita di immagine di sfondo di cross-org; riordine sicuro + secchio di stadiazione
Riordinare solo i nuovi file ricaricati al loro nuovo indice, riordinando immagini esistenti e lasciando l'immagineBgCount rivendicare slot non popolate; provis...
Ritorno 404 per un org mancante invece di 200 con corpo vuoto
getOrganizationById ha restituito un nudo null, che la primavera serializzata a HTTP 200 con un corpo vuoto; i clienti che chiamano risposta.json() poi gettato ...
Mappa mancante org (404 o corpo vuoto) a carico nullo
Coppia con il cambio SecurityService che ora restituisce 404 per una scomparsa Org invece di 200-con-vuoto-corpo. I chiamanti non controllano l'org, quindi sia ...
Lascia che l'Utente di sistema risolva qualsiasi modello applicato di org
Il cancello cross-org ha restituito 403 quando orgId!= sessione org e il chiamante non ha avuto una riga membro nel bersaglio. L'utente di sistema su piattaform...
Smettere errori spuriosi inondando la console
- org/[id] proxy: backend restituisce 200 con un corpo vuoto per null org; risposta.json() ha lanciato 'Inaspettato fine di JSON input' -> spurious 500. Parse d...
Risolvere il titolo della scheda org in generareMetadata per arrestare il titolo flip
Static metadata.title reso 'Kamo' lato server; Successivo riassettato dopo idratazione, overriding DynamicMetaLoader's client update and flipping the tab dal no...
Tenere le righe fino a quando Me stesso membro id risolve
ag-grid rende la rigaData sotto la sovrapposizione di carico, quindi gating solo il puntello di carico ancora lampeggiato tutti i cavi mentre getMemberId() era ...
Filtro predefinito a Me stesso su carico, nascondere la barra di mercato per il mercato unico, spostare la barra degli strumenti
- Agente di defaultFilter a MYSELF a init + griglia di cancello sul carico dell'utenteInfo in modo da non lampeggiare più - Mercato unico: auto-selezionarlo ...
URI-encode WOPISrc + trust all api.* WOPI host (multi-tenant)
L'apertura di un documento per un inquilino non-kamocrm ha fallito con 'ospite WOPI non autorizzato'. Docs's alias groups solo fidato api.kamocrm.com (il Docs-d...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.