Mabadiliko ya Tabianchi

Kuona nini sisi ni kujenga katika muda halisi. Kila kipengele, kurekebisha, na kuboresha kusafirishwa kwenye jukwaa.

17,866
Mabadiliko ya Jumla
4,581
Features ya
4,513
Wa
32
Miradi ya Miradi
Filter ya Mradi
Miradi yote17,866AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService348InitializerService299KBService74KlusterServices539MCPGatewayService43MediaService460RAGService61SecurityService1,519TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,554kamo-login318kamo-marketing584kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,320kamo-signer-monorepo50kamolos102
Filter ya aina
Aina zoteBuild24CI522Chore670Docs226Feature4,581Fix4,513Other6,781Performance136Refactor273Revert23Style48Test68Upgrade1
April 20, 2026
Fixkamo-shared-library

**************** uses instanceof for MEMBER type

Hibernate TYPE(m) = :type returns 0 results when bound to the base Member class in JOINED inheritance. For MEMBER type, fetch all and filter with !(m instanceof...

Kamo·4mo ago
FixSecurityService

Resolve Members tab showing empty due to Hibernate TYPE() base-class issue

Hibernate's TYPE(m) = :type JPQL filter returns 0 results when the bound parameter is the base Member class (JOINED inheritance). This affects the members-subsc...

Kamo·4mo ago
OtherSecurityService

Enable Hibernate SQL logging to diagnose members query returning 0

Temporarily enabled org.hibernate.SQL=DEBUG to see what SQL the TYPE() JPQL query generates for the members-subscribers endpoint.

Kamo·4mo ago
Featurekamo-internal

Show visitor flag, country, and IP in ticket header

- Add visitorIpAddress, visitorCountryCode, visitorCountryName to SupportTicketDTO type - Render flag emoji + country name + IP address row in TicketHeader for ...

kamo·4mo ago
Featurekamo-shared-library

Add visitor geo fields to SupportTicketDTO

Kamo·4mo ago
FeatureMediaService

Show visitor flag and location in support ticket header

- Inject PublicChatVisitorRepository and GeoLiteLocationRepository into SupportTicketService - Populate visitorIpAddress, visitorCountryCode, visitorCountryName...

Kamo·4mo ago
OtherSecurityService

Add diagnostic logging to getMembersAndSubscribers endpoint

Logs orgId, query result count, and per-member isActive status to help diagnose why Members tab shows empty list.

Kamo·4mo ago
FixMediaService

Tag visitor messages as VISITOR_MESSAGE type, add senderName to GET messages

- PublicChatService: set messageType=VISITOR_MESSAGE so frontend can distinguish visitor echoes from agent responses on the STOMP topic - MediaController.getM...

Kamo·4mo ago
Fixkamo-internal

Treat VISITOR_MESSAGE type as always-from-them in TicketChat

Visitor messages published via PublicChatService carry messageType=VISITOR_MESSAGE. Explicitly mark these as author='them' regardless of memberId so they always...

kamo·4mo ago
Fixkamo-marketing

Skip VISITOR_MESSAGE echoes in LiveSupportPanel STOMP handler

Visitor messages are now tagged messageType=VISITOR_MESSAGE by the backend. Skip these in the STOMP subscription so the visitor's own messages don't re-appear o...

Kamo·4mo ago
Featurekamo-marketing

Replace native WebSocket with STOMP/SockJS in LiveSupportPanel

- Add @stomp/stompjs and sockjs-client packages - Connect to media.{domain}/ws/public-chat via SockJS+STOMP instead of raw WebSocket to api.{domain} which was...

Kamo·4mo ago
FeatureMediaService

Fix end-to-end public chat real-time via STOMP/NATS

- Remove internalAuth requirement from PublicChatWebSocketInterceptor so visitors can connect directly using only their sessionToken - Include visitor display...

Kamo·4mo ago
FixEmailService

Wire up status filter and auto-seed required templates on list

- EmailTemplateController.list() now accepts ?status= param and filters using the existing findByOrgIdAndStatus repository query - Auto-seeds required templat...

Kamo·4mo ago
Featurekamo-internal

Auto-open support ticket popup on NEW_TICKET NATS notification

When a new support ticket arrives, the backend now sends a NEW_TICKET STOMP message in addition to PENDING_COUNT. The SupportCountContext handles it by dispatch...

kamo·4mo ago
FixMediaService

Three support/chat issues — NATS relay, auto-popup, topic fallback

1. Switch SupportNotificationService and SupportStompRelayController from JetStream to core NATS — the CHAT_MESSAGES stream only covers chat.> so JetStrea...

Kamo·4mo ago
FixMediaService

Write contact form description as chat message on public ticket creation

The description was only stored on the ticket entity and never appeared in the chat window. Added writeTextMessage() helper and call it after the system event s...

Kamo·4mo ago
Fixkamo-internal

Separate ticket number/badges row from title in TicketHeader

Title was sharing a nowrap flex row with the ticket number and two badges, causing it to be cut off. Now ticket number and badges occupy their own compact row, ...

kamo·4mo ago
Featurekamo-marketing

Add /contact-confirmed page with animated hero, timeline, and CTAs

Replace inline success message on contact form with a dedicated premium confirmation page: animated SVG checkmark with particle burst, 'What Happens Next' 3-ste...

Kamo·4mo ago
Fixkamo-internal

Handle tickets key in support ticket list response

MediaService returns { tickets: [...], totalElements } but the frontend only checked for data.content, causing the list to always render empty.

kamo·4mo ago
Fixkamo-marketing

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.

Kamo·4mo ago
Featurekamo-internal

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...

kamo·4mo ago
Chorekamo-internal

Add .dockerignore to reduce build context

kamo·4mo ago
FeatureEmailService

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...

Kamo·4mo ago
Featurekamo-internal

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...

kamo·4mo ago
FeatureConversionService

Add image resize and favicon generation endpoints

Kamo·4mo ago
FeatureInitializerService

Add migration runner for logo_full_ext column on orgs

Kamo·4mo ago
Featurekamo-shared-library

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.

Kamo·4mo ago
FeatureSecurityService

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...

Kamo·4mo ago
Featurekamo-internal

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...

kamo·4mo ago
FixSecurityService

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...

Kamo·4mo ago

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei