Salta l'aggiornamento del modello di sicurezza quando il ruolo blocca le modifiche di sicurezza
Leggi i diritti di sessione come elenco o legacy CSV per gli endpoint membri
KSessionService e SecurityRoleController memorizzano i diritti come List RoleRightType. MemberSecurityController lanciato a String e diviso su virgola, causando...
Verifica-dns controlla ogni etichetta KnownAliases; skip deprecated app/media in optional
Allineare KnownAliases con DNS e auto-cert (add mail, play, app, segno; drop app, media)
Evitare transazioni-poisoning DDL e indurire le gare multi-pod
Il precedente self-heal ha messo DDL all'interno di un @Transactional syncAll(). Quando un ALTER TABLE ADD CONSTRAINT licenziato su un vincolo esistente (caso n...
Rendere RoleRightsSyncService completamente self-healing su ogni boot
Aggiungere o rimuovere un RoleRightType non deve mai più richiedere la corsa KamoInitializerService. syncAll() ora esegue tre fasi su ogni startup: 1. I vincol...
Rimuovi getType() chiamate da OrganizationController dopo Organizzazione Tipo di rimozione
Rettifica della guardiaIncompletoTraduzioni contro l'arresto del contesto di primavera
Impostare orgOriginal sulla registrazione ed esporre èOriginalOrg in mynetworks
Estrai RoleRightsSyncService e aggiungi endpoint di sincronizzazione
- RoleRightsSyncService: centralizza la logica di sincronizzazione dei diritti di ruolo sia per OrgRole E poi... tabelle; avvio e on-demand - DataLoader: delega...
Aggiungi PATCH /membership-type endpoint per la promozione/demotion dei membri
Utilizzare getOrganizationByIdWithFeatures in AppAvailability Intercettatore
Resolves LazyInitializationException on /api/security/leads e tutti altri percorsi CRM/POS-gated. L'intercettatore ha chiamato org.getFeatures() dopo la transaz...
Risolvere la scheda Membri che mostra vuoto a causa di Hibernate TYPE() problema di base-class
Hibernate's TYPE(m) =:type JPQL filter restituisce 0 risultati quando il limite parametro è la classe Membro di base (eredità JOINED). Questo colpisce il membri...
Abilitare Hibernate SQL logging per diagnosticare i membri query di ritorno 0
Temporaneamente abilitato org.hibernate.SQL=DEBUG per vedere cosa SQL il TYPE() La query JPQL genera per l'endpoint dei membri-subscribers.
Aggiungi registrazione diagnostica per ottenereMembersAndSubscribers endpoint
Logs orgId, conteggio dei risultati di query e per-member isStato attivo per aiutare diagnosticare perché la scheda Membri mostra l'elenco vuoto.
Allow god-mode users to provision ownerless orgs; prefer FQDNs in domain resolution
Add @Transactional to provision-theme for lazy domain loading; remove hardcoded domain from provision request
Add PATCH /org/{id}/colors endpoint to safely update only color palette fields
Add theme provisioning — NATS publisher, provision-theme endpoint, logo upload
Use memberID session key and include creatorType in creatable branch-types response
Add GET /branch-types/creatable and /{id}/usages endpoints
/creatable returns branch types filtered by the caller's creator-type (OWNERS/TEAM_MEMBERS/MEMBERS) via AppliedModelEnforcementService. /{id}/usages returns th...
Use correct session key 'memberID' instead of 'MID'
KSessionService stores member ID under key 'memberID' but both **************** and OrganizationController were reading session.get("MID") which always returned...
Exclude master model from models list; add debug log to child-org creation check
SecurityModelController now filters out the org's master model (identified by org.getMasterModelID()) from the /api/security/models response — it is managed exc...
Read session rights as List<String> names, not CSV of integer IDs
Session rights are stored as a JSON array of RoleRightType name strings. Both **************** and OrganizationController were casting them to String (causing C...
Add GET /branch-types/creatable endpoint with creator-type filtering
Returns only the branch types the calling member is permitted to create a child org under, based on their OWNERS/TEAM_MEMBERS/MEMBERS classification against the...
Gate /network child-org creation by right + member-type applicability
Wires the applied-security-model child-org creation gate end-to-end: - SecurityModelController + MasterModelController round-trip the three new apply-to flag...
Ricostruisci per l'aggiornamento di kamo-shared-library (appConfig upsert-only fix)
Tira l'indurito ******************************************************************************** che non cancella più le righe appConfig i cui tipi di servizio ...
Applied-model is the read-time source of truth for feature availability
Closes the "stale DB leaks a disabled feature" gap by gating every surface that touches OrgFeature / ServiceType through the applied security model. - ********...
Radice di superficie per il guasto MasterModelController GET
Quando GET /api/security/master-model 500s, registra la traccia completa dello stack stderr (captured by kubectl logs) e includere il messaggio root-cause su il...
Wire applied-model enforcement across every controller
Every non-role setting on the applied security model is now enforced at the exact controller boundary it governs, and the scalar settings round-trip cleanly thr...
Enforce system-role assignment and auto-admin for team-member owners
MemberSecurityController now enforces the three assignment invariants defined in the brainstorm spec: - saveMemberSecurity: before persisting the caller's requ...
Master-model + applied-model endpoints and template-aware org seeding
Adds the controllers that surface the new branch-type security flow: - /api/security/master-model (GET/PUT) manages the current org's master model; only writ...
Add org-scoping, password length validation, and code quality improvements to PasswordChangeController
Add @Transactional to DataLoader.run to fix LazyInitializationException on startup
Use JPA entity traversal for grant-all detection (covers dept/job roles)
Supplement session rights with all known rights for grant-all roles
Filter null rights in buildAppliedRightsWithSources; upgrade shared-lib to 1.5.0
Use core NATS pub/sub for email-verified SSE fan-out
Replaces in-memory ConcurrentHashMap broadcast with NATS core pub/sub so all pods receive verification events regardless of which pod handled the token. Falls b...
Add SSE endpoint for real-time email verification + improve welcome email logging
Add resetCode to password reset email, add emailVerifyByCode endpoint, send WELCOME_MEMBER after email verification
Use avatarType field + JDBC for photo URL generation to handle Hibernate proxies
**************** previously used instanceof AvatarPhoto to determine avatar type and cast to read fileExtension. When Hibernate returns a base-class proxy (e.g....
Pass human-readable expiry time to email verification template
Add humanizeMinutes() helper that formats minutes as days/hours/minutes (e.g. "1 day" for 1440 min). Pass as {{expiryText}} to match updated canonical template ...
Add code-based email verification path to /verify-email endpoint
The endpoint now handles both token (link click) and userId+code (manual 6-digit entry). Token path unchanged; code path hashes the supplied code and matches ag...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.