Dare il percorso workspace lo stesso lavoro post-login come il percorso host
Due lacune riscontrate rileggendo la coda di login originale contro quella nuova, prima di abilitare il raccoglitore. L'endpoint form-encoded /login ha costrui...
Lascia che il guscio prenda il suo org dalla sessione, non l'host
il layout radice di kamo-internal legge l'intestazione di Host, strisce "interne". fetches /org/domain/ <that>. Su un ospite che serve un inquilino che è lo ste...
Lasciate un membro entrare senza un host che nomina il loro org
Aggiunge la seconda metà della divisione: un segnale in cui non nomina nessuna organizzazione autentica l'utente, quindi chiede quale spazio di lavoro. POST /ap...
Separare il controllo delle credenziali da org autorizzazione
L'accesso è stato due domande fuse in una sola domanda. "Sono queste credenziali buono" viene risposto dalla riga degli utenti -- la password vive lì, quindi er...
Smettere di richiedere la verifica DNS per accedere
OrgHostResolver.resolveByDomain filtrato su od.is dns verified = TRUE, quindi una riga di dominio che esisteva ma non aveva finito di verificare risolto niente ...
Collegare le tracce di stack alla loro linea di registro, e fissare i livelli ho sbagliato
printStackTrace() scrive direttamente a stderr, così 186 di loro sopravvissero la stampa ha spazzato intatto — ancora incondizionato, ancora non attribuito, e o...
Finire di togliere SecurityService da System.out/err
Le restanti 853 chiamate println attraverso 43 file, nessuno dei quali potrebbe essere spento: println non ha livello, quindi ognuno di loro stampato su ogni co...
Assumere la verifica CNAME fuori System.out
Con la sessione e il rumore di Hibernate andato questo era il più grande ricorrenti fonte sinistra nel registro pod: ogni ricerca CNAME ha disegnato una scatola...
Prendere la sessione di ricerca fuori System.out, e il suo *** id con esso
Dopo che il commit precedente ha rimosso i blocchi di metriche di sessione Hibernate e Il tracciamento per-richiesta di MemberController è stato dell'88% di que...
Interrompere il registro dei pod ruotando più velocemente di quanto possa essere letto
Circa 4.600 linee in quattro minuti, quindi la finestra di ritenzione era un paio di minuti: inseguire un problema di certificato su 2026-08-22 l'uscita della s...
Verify-dns risponde per il presente, non per una bandiera memorizzata
Il punto finale ha saltato la prova completamente quando ssl confirmed era già vero, sul ragionamento che sotto la regola di tutti gli ospiti potrebbe essere st...
Re-verificare i domini già contrassegnati SSL-confirmed, e guarirli
trovareAwaitingVerification filtri confermati domini fuori dal design, quindi una volta ssl confirmed non ha mai visto più quel dominio. Quello era bene mentre ...
Fare la configurazione org post-commit realmente scrivere, e guarire gli org che ha perso
Un metodo @Transactional chiamato da ***************************************************************************************************************************...
Conferma SSL solo quando ogni host org ha il proprio certificato
I certificati sono coniati uno per FQDN -- un singolo dnsName ciascuno, quindi la foglia CN corrisponde al nome host del browser connesso a -- e auto-cert funzi...
Servire il frame media noi stessi, con Range
Ogni foto resa come immagine rotta. L'URL indicato a MediaService's Ho preso una procura di immagini generiche. perché ha parlato HTTP Range. Non è: è il proxy ...
Telaio e media endpoint, e seminare i nuovi diritti
Solo se stesso, e imposto nella QUERY. Ogni lettura e scrittura risolve il membro della sessione e ogni chiamata del repository prende quello id, compreso la ri...
Stamp last login così "Last Login" smette di leggere Mai
Nulla in SecurityService ha mai scritto utenti.last login. La scrittura vissuta nel servizio di autenticazione in pensione e non è stato trasportato quando aute...
Ripristinare lo stato endpoint il frontend è stato inquinante
sondaggio kamo-internal GET /api/security/session/god-mode una volta sul monte e ogni Sessanta anni dopo. Quel punto finale è stato rimosso in 9c70cb7 insieme a...
Ricostruire contro il kamo-shared-library 48cde37
Raccoglie MANAGE ORG MASTER NOTE, il diritto che custodisce "La nostra nota principale". SecurityService è ciò che enumera RoleRightType per il ruolo, il livel...
Getta il seme universale; il widget della timecard segue MANAGE TIMECARDS
UNIVERSALLY SEEDED RIGHTS viene rimosso completamente. Esisteva solo perché la scheda temporale widget non aveva diritto di ereditare da, e ora ne ha uno — quin...
Seed the mail and lead widgets, e aggiungere un seme universale per la timecard uno
I widget di posta e di piombo seguono i loro diritti di dati esattamente come quelli del calendario fanno — ACCESS MAIL e VIEW LEADS — in modo che un titolare n...
Seed i widget del calendario a tutti coloro che possono già leggere il calendario
Entrambi i widget mostrano un membro esattamente ciò che /calendar li mostra già, quindi un calendario lettore non acquisisce dati che non potrebbero raggiunger...
Annunciare il roster membro con il suo verdetto politica di chat
SecurityService serve il roster la chat UI è costruito da, quindi deve rispondere con gli stessi verdetti MediaService fa rispettare -- uno condiviso evaluator,...
Chiedi a EmailService di ricaricare un'e-mail passata
Implementa la libreria condivisa LeadEmailBackfillTrigger, così ticchettio "Associate Passato E-Mails w/ Lead" su un salva piombo raggiunge l'unico servizio che...
Accettare una prenotazione sollevata per un altro agente
# E ora gli onori di BehalfOfMemberId # ceduto su EDIT OPPORTUNITIES — il diritto che i cancelli gestiscono le opportunità elenco riservato, e già il diritto ne...
Pubblicare la dichiarazione di Hibernate conta a Prometheus
/actuator/prometheus ha già portato jdbc * e hikaricp * ma nessun hibernate *, perché Spring Boot 3 solo auto-configura quelle metriche quando E' sulla pista di...
Delegato AvatarObjectPaths alla libreria condivisa
MediaService ora nomina anche oggetti avatar — l'elenco delle chat di supporto mostra il la foto del richiedente, e un richiedente di supporto è nell'organizzaz...
Ritorna il conteggio giornaliero di ogni membro per prodotto
Manage-Credits mostra Max Daily Spend ma nulla di quanto viene utilizzato, così un manager non poteva dire se un membro era un vantaggio dal loro cappello o ave...
Smettere di tagliare i corpi delle note a 500 caratteri nella timeline
La scheda Tutte le comunicazioni di un piombo ha reso una nota attraverso LeadCommunicationMapper, che ha bloccato il corpo a 500 caratteri — senza Ellipsis e n...
Il rapporto porta a disposizione per prodotti senza allocazione
/manage ha costruito la sua intera risposta attraverso la looping su assegni, chiamando conteggioAssignablePool una volta per fila. Ma la griglia Manage-Credits...
Smettere di scansione ogni mercato x prodotto dopo la risposta è noto
/leads/disponibile-sommario restituisce tre cose — haaccettabile, haAcceptableCredit e un prodotto di esempio — ma visitato ogni mercato x coppia di prodotti in...
Mint a System User session per il biglietto aperto di un agente di supporto
entra-come guadagna un secondo motivo per dire sì. SystemUserEntryPolicy trasforma il chiamante *** nei fatti il SupportSystemAccessResolver condiviso prende, e...
Conta nel database invece di idratare ogni commit
GET /changelog/public/stats caricato tutti i registri di commit 16,571 come entità e li ha alti in un loop Java per produrre due piccole mappe e un totale. Non ...
Una sonda opt-in che esegue SQL della griglia, non solo il suo HQL
/leads è andato giù il 2026-08-20 con 'missivo FROM-clause voce per la tabella a2 1' e nessun test catturato, perché nessuno di loro potrebbe: la biblioteca com...
Page the grid endpoint and take the PHI audit write off the request thread
GET /api/security/leads ha restituito ogni vantaggio nell'organizzazione. Ora prende pagina / dimensione / assortimento più i filtri che la griglia utilizza in ...
Regolare ogni backlog payload come viene elaborato
processBacklog ha rispecchiato i due difetti del lavoro programmato: ha mutato il carico utile stati in memoria e li ha salvati in un lotto alla fine, e ha salv...
Mai fallire una presentazione perché il suo aggiornamento contatore ha perso una gara
storePayload non urta più il contatore ricevuto del punto finale; la ricezione controller ora chiama recordReceipt separatamente, nella propria transazione, e i...
Ricostruire contro il kamo-shared-library 811db57
Raccoglie il creato Correzione di carico che sposta il riconteggio di disponibilità della piscina dopoCommissione. Prima di esso, una lettura-dopo-scrittura nel...
Mappa azienda Nome in modo che un foglio di calcolo possa portare il nome commerciale
setDirectFieldOnCreateRequest non aveva alcuna azienda Nome caso, quindi il campo era irraggiungibile dalla procedura guidata di importazione manuale anche se C...
Accettare i campi di registrazione* di sconto, mantenere quelli mrt* che funzionano
Il sito del registro ora invia scontoVisitorGuid / discountCode. Entrambi i nomi sono leggere, nuovo prima, perché i due servizi si dispiegano indipendentemente...
Pubblica la registrazione e la creazione di org per i visitatori in pista
Il sito del registro ora inoltra la GUID del visitatore di marketing e il codice di tracciamento in l'organismo di richiesta — non un intestazione, perché il pr...
Enforce is fake, e chiudi i buchi che lasciano un segnale incustodito in
Due metà di un incidente. Un account registrato, verificato un indirizzo a un usa e getta provider, ha preso una sessione di auto-login e ha creato cinque organ...
Lasciate che un membro abbandoni la propria adesione
La pagina di rete ha offerto "Unsubscribe" da quando è stato scritto. Ha aperto una finestra di dialogo di conferma e poi ha detto che la funzione sarebbe stata...
Rendere accessibile l'aggiornamento DNS della scansione di verifica
DomainVerification Watcher ha fatto un salto. E' solo una risposta. non è mai ritornata "verificata". AllVerified era quindi falso su ogni spazzare, così il gua...
Ripristinare i media come alias DNS richiesto in modo che la sua scheda possa verificare
media. auto-cert e il catalogo /setup/dns studio, ma è stato abbandonato da KnownAliases in 76e968f e elencato come deprecato in verificaDns. Entrambi i loop qu...
Smettere di segnalare una colonna mancante come tabella mancante
Quattro controller ogni riscritto QUALSIASI messaggio contenente "non esiste" in "La tabella base X non esiste. Si prega di eseguire KamoInitializerApp per crea...
Eliminare il non autenticato /api/security/roles/test stub
Una sonda di raggiungibilità che ha restituito "SecurityRoleController test endpoint è lavorare" a chiunque. Nulla lo chiama — nessun riferimento in qualsiasi s...
Chiudere due endpoint non autenticati raggiungibili da internet
SecurityService è qualsiasiRequest().permitAll() con @EnableMethodSecurity assente, quindi ogni @PreAuthorize è inerte e il pubblico è il default; /api/security...
Per-member SSO credenziali e un preflight che spiega guasti
Linux è gated su una disposizione abilitata piuttosto che Dio, e servito con il Le credenziali del membro. Il collegamento è omesso dal token interamente quando...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.