Use PATCH /org/{id}/colors for branding save to avoid nullable boolean constraint failure
Add PATCH /org/{id}/colors endpoint to safely update only color palette fields
Correct MEDIASERVICE_URL port from 443 to 80 for contact form
ClusterIP service only exposes port 80; using 443 with http caused a ConnectTimeoutError on every contact form submission.
Add org settings section (timezone, age req, content flags, description, alias); remove Preview/AddDomain buttons
Redesign LabelManager — inline section editing, fix broken save, read-only default
Rewrites LabelManager.tsx with per-section read/edit pattern. Fixes the broken save button (validateForm blocked saves because contact/company fields were never...
Add KamoMail domain validator to block cross-tenant email addresses
Introduces KamoMailDomainValidator component that checks, at service layer, whether the submitted email domain matches the org's verified default domain when Ka...
Enforce KamoMail domain restriction on mailbox, alias, and shared mailbox creation
When KamoMail is the email provider, members can only create mailboxes, aliases, and shared mailboxes using the org's verified default domain. Enforcement at th...
Read logoFullExt from config.json; fix site.webmanifest path to favicon subdirectory
Org theme provisioning — WebSocket hook, provision panel, LabelManager wiring, DNS trigger, bg resize, ThemeConfig context
Add theme provisioning — NATS publisher, provision-theme endpoint, logo upload
Add logoFullExt field to Organization entity; add listObjects to MinIOStorageService
Hide security model sentence for Members, fix badge overlap on branch type cards
Use memberID session key and include creatorType in creatable branch-types response
Add findByBranchTypeID derived query to OrganizationRepository
Supports the new /branch-types/{id}/usages endpoint in SecurityService for checking whether a branch type has active child orgs before deletion.
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...
Guard branch type deletion against active org usages
Before removing a branch type chip, the frontend now calls **************** If any orgs exist it shows an informational dialog listing them and instructs the ad...
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...
Live support ticket badge on NavTop — SupportCountContext subscribes to NATS via STOMP, badge shows pending count
Live pending support ticket count via NATS — notify org owner on new tickets, add pending-count REST endpoint
Set org owner usernameAlias on creation and fix website-contact member alias
Add pending count field to SupportAgentNotificationDTO and count query to SupportTicketRepository
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...
Stop double-toggle on age range checkboxes in BranchSetupManager
Box onClick and Checkbox onChange both fired on each click, toggling twice and leaving state unchanged. Stop propagation on FormControlLabel so only one handler...
Use MUI v7 Grid size prop in StackingOrdersManager
MUI v7 Grid2 replaced xs/sm/md with the size object prop.
Remove deprecated MUI Grid item prop in StackingOrdersManager
MUI Grid v2 dropped the item prop; use size props directly on Grid.
Add domain name field to org creation wizard
Adds a required domain field to the Basics step with automatic www. stripping. Validated, included in API payload, and shown in the review step.
Add API modification callout to kamo-api-reference page
Shown only on /kamo-api-reference, prompts users to submit API change requests via /requests or reach out via /contact.
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...
Replace OrganizationType wizard step with branchType/SecurityModel selection
- Replace OrgTypeStep (OrganizationType + Configuration dropdowns) with BranchTypeStep that fetches **************** — the new endpoint returns only branch ...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Rebuild for kamo-shared-library update (CREATE_CHILD_ORG right + apply-to flags)
Pulls the new RoleRightType.CREATE_CHILD_ORG (id 131), the three apply-to flags on ChildOrgSecurityModel, the two 13-arg service overloads, and the AppliedModel...
Like what you see shipping?
Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.