Impostare Host/X-Forwarded-Host così APIService risolve il corretto org
APIService sovrascrive X-Forwarded-Host con request.getServerName(), che legge dall'intestazione Host. Senza un intestazione Host esplicita il servizio interno ...
Correct EmailService URL port in configmap (4203 -> 80)
EmailService K8s service exposes port 80, not 4203. Verification emails were timing out on every registration attempt.
Bypass JPA org lookup to avoid Hibernate cascade flush error
**************** triggers **************** which causes a Hibernate auto-flush. That flush fails because Organization.features was previously replaced with a pl...
Mutate presenta la collezione in loco per evitare cascade orfano Errore di ritorno
Calling org.setFeatures (newList) sostituisce il persistente tracciato dall'ibernato raccolta, causando JpaSystemException quando qualsiasi query attiva automat...
Use getReferenceById to avoid cascade orphanRemoval flush error on registration
Loading Organization via findById inside @Transactional caused Hibernate to detect the features collection was de-referenced during auto-flush, throwing JpaSyst...
Invia la verifica utilizzando e-mail non userId, avanti X-Forwarded-Host
SecurityService /register /resend-verification si aspetta e-mail nel corpo, non userId (che la risposta di errore di login non include mai). Anche in avanti X-F...
Add dao.repositories to JPA scan so EmailTemplateRepository is found
Same pattern as KamoInitializerService — explicit basePackages overrides default scanning and must include every package that has repositories.
Passare il corpo di errore a monte tramite proxy di sicurezza invece di un messaggio generico
Precedentemente restituito {error: "Upstream error"} su non-2xx, perdendo il reale messaggio di errore da SecurityService. Ora inoltra il codice di stato e il c...
Align registration field names and response shape with frontend contract
Frontend sends nameFirst/nameLast but controller read firstName/lastName, causing 400 "First name is required". Success response now returns {status, userId, al...
Prevenire stale ageReqType cache da mostrare il controllo dell'età in modo non corretto
- Org route: ridurre Redis TTL da 24h a 5min e aggiungere etàReqTypeMember al rilevamento delle macchie in modo che i campi di sicurezza rimangano freschi dopo ...
Add SecurityService and dao.repositories to EnableJpaRepositories scan
UserPhoneLookupRepository in recovery package was not picked up because EnableJpaRepositories only listed dao.repos and commerce. Added the SecurityService base...
Imposta il titolo della scheda del browser su 'Register - {org name}'
DynamicMetaLoader ora chiama utilizzare il documento ThemeConfig e aggiornamenti. titolo a 'Register - {org.title}' una volta che l'org carica. Fallback statico...
Risolvere gli errori TS dai passaggi utilizzati prima della dichiarazione e del cast in stile Capcha
Muovetevi! useMemos sopra l'usoEffetti che dipende da loro; importare CSSVariables tipo e usarlo per lo stile Capcha-widget prop.
Add dao.repositories to EnableJpaRepositories scan
EmailTemplateRepository lives under dao.repositories.email, not dao.repos, so it was not picked up as a Spring bean.
Aggiungere DEFAULT falso alla definizione della colonna email verified
Lo schema migratorio di Hibernate genera ALTER TABLE senza un default, fallire sui tavoli con righe esistenti. colonnaDefinizione lo costringe a includere i fal...
Corretto Pulitura dell'ascoltatore Capcha e reset stato verificato sull'uscita del passo
Resolve duplicate emailTemplateServiceClient bean conflict
**************** and **************** were identical @Components with the same default bean name, causing **************** at startup. Delete the duplicate in r...
Bump kamo-shared-library to 1.4.0
Docker Stage 1 builds kamo-shared-library main (now 1.4.0) and installs it to the local .m2; the service pom still referenced 1.0.0 which Maven could not find, ...
Applicare la correttezza e l'implementazione SP6 correzioni di qualità
C1: utilizzare NEXT PUBLIC H*** SITE KEY env var invece di segnaposto hardcoded C2: cambiare RegisterResponse.userId e tutti i param API dal numero alla stringa...
Address 4 code-review findings in registration and login paths
- Hide raw exception message in /register 500 path; log instead - Fail-closed (503) on email-verified DB check failure in login - verifyEmailToken throws if use...
Append Z to dateCommitted so JS parses it as UTC
LocalDateTime.toString() produces no timezone designator, causing JavaScript's new Date() to treat the UTC value as local time and display timestamps 7-8 hours ...
Convert PT midnight cutoff to UTC for today-count query
Commits are stored in UTC but the cutoff was a naive LocalDateTime in PT, causing yesterday-evening PT commits (00:00–06:59 UTC) to be counted as today.
Rinominare mailboxId→id e providerStatus→status nella risposta della mailbox
Allineare i nomi dei campi con le aspettative di frontend per gli elenchi delle caselle di posta dei membri.
Sostituisci tutte le istanze logo CSS-filter con SVG bianco
Navigazione, SubNavigazione, Footer, SubFoooter e Preloader tutti utilizzati lo stesso filtro rotto luminosità-0 invert pattern. Sostituito con logo-full-white....
Utilizzare il logo SVG bianco nel piè di pagina invece del filtro CSS
Stessa correzione del nav — filtro CSS su img all'interno dello sfondo-filtro è inaffidabile su iOS Safari.
Protezione colore-schema con !importante contro il tema CSS override
DynamicMetaLoader può iniettare CSS remoto che vince la cascata. Aggiunta !importante assicura il colore-schema: il buio non può mai essere superato da fogli di...
Escludere i collegamenti footer e nav da TouchOptimized min-height
TouchOptimized stava impostando minHeight:44px su tutti gli elementi <a> più brevi 44px, compresi i collegamenti nav footer (~20px alto). Questo ha funzionato d...
Utilizzare il logo SVG bianco pre-rendered invece del filtro CSS
Il filtro CSS su img all'interno dello sfondo-filtro non è affidabile su iOS Safari. Generare logo-full-white.svg con tutti i file impostati su #ffffffff e cari...
Lock Tailwind variante modalità dark a base di classe, mai OS media query
Tailwind v4 defaults dark: utilità per rispondere a prefers-color-scheme (preferenze OS). L'override @variant garantisce il buio: le classi si attivano solo qua...
Utilizzare lo stile del filtro in linea sul link del logo per un rendering bianco affidabile
Le classi di filtro a vento su elementi img sono incoerenti tra i browser mobili. Lo stile inline sull'elemento di ancoraggio garantisce luminosità(0) invert(1)...
Force dark color-scheme in modo che il browser non applica mai la modalità di rendering della luce
Cambiare da 'solo luce' a 'dark' in globals.css, generareViewport, e il stile elemento html — questo impedisce al browser di rendere SVGs e UI nativo in modalit...
Evitare il logo da rendering dietro la riga nav su mobile
L'involucro div con il filtro CSS ha creato un nuovo contesto di impilamento in conflitto con lo sfondo-filtro dell'intestazione sui browser mobili, facendo dip...
Risolvere la barra di scorrimento e la clip mobile su JumpToBar e PreviewBanner
- Aggiungi overflowY: nascosto al contenitore interno JumpToBar per evitare la barra di scorrimento verticale - Consentire il contenuto di PreviewBanner per avv...
Sostituire spazio-y-4 con il gap flex in linea su liste di collegamento piè di pagina
Tailwind space-y-4 utilizza:where() (specificity 0) che corre con CSS carico su rinfresco duro causando spaziatura verticale inconsistente. In linea stili sono ...
Set Traefik externalTrafficPolicy=Local to preserve client IP
With the default "Cluster" policy, kube-proxy SNATs external traffic to the node IP before forwarding to Traefik. That caused Traefik to see the node IP as the ...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
