Live Change Log

See what we're building, in real-time. Every feature, fix, and improvement shipped across the platform.

17,916
Total Changes
4,605
Features
4,536
Fixes
32
Projects
Filter by project
All Projects17,916AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService371InitializerService300KBService74KlusterServices545MCPGatewayService43MediaService460RAGService61SecurityService1,519TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,573kamo-login318kamo-marketing584kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,321kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI523Chore670Docs226Feature4,605Fix4,536Other6,781Performance136Refactor274Revert23Style48Test69Upgrade1
March 30, 2026
Otherkamo-analytics

Merge pull request #3606 from fauzora/fix/tracker-single-init

fix(tracker): prevent multiple initialization when script injected more than once

Mike Cao·5mo ago
Fixkamo-meet

Redesign close pages to match welcome page styling

- Background slideshow with fade/scale animation (8s interval) - 15% primary color overlay + gradient atmosphere overlay - Glass morphism card (rgba(255,255,255...

Kamo·5mo ago
Fixkamo-meet

Branded close pages and correct avatar URL construction

- Close pages (close.html, close2.html) now use org background image, logo, favicon, and glassmorphism styling matching the welcome page - Changed close messa...

Kamo·5mo ago
FixSecurityService

Store full avatar relative path in session instead of bare file hash

The login SQL now also fetches avatar_type and file_extension from avatar_photos so the session stores a complete relative path like **************** or *******...

Kamo·5mo ago
FeatureMediaService

Include org static background images in meet virtual backgrounds

Fetch backgroundImageCount from the org's theme config.json and generate URLs for /img/bg/{n}.webp so org-level static backgrounds appear alongside meet-specifi...

Kamo·5mo ago
Fixkamo-meet

Double org logo watermark size and force white text in embed dialog

- Double watermark base dimensions (71x32 → 142x64) in _variables.scss - Double .leftwatermark max constraints (140x70 → 280x140) in _base.scss - Force white co...

Kamo·5mo ago
Featurekamo-meet

Derive display name from first/last name and construct avatar URL from session

Use memberFirstName and memberLastName from *** session to build proper display names instead of falling back to usernameAlias. Construct full avatar URL from t...

Kamo·5mo ago
FeatureSecurityService

Add first name, last name, and avatar hash to *** session

Include memberFirstName, memberLastName, and memberAvatarUrl in Redis session data so cross-domain services like KamoMeet can display proper user identity witho...

Kamo·5mo ago
Fixkamo-internal

Handle meetReturn redirect to send users back to meeting after login

- Detect meetReturn query param on home page (from KamoMeet auth redirect) - Generate OTK and redirect authenticated users back to meet with token - Use session...

kamo·5mo ago
FixMediaService

Resolve org theme backgrounds not appearing in meet virtual backgrounds

- Add domain-based theme URL resolution for internal K8s service-to-service calls - getPublicBackgrounds now accepts optional domain param to derive correct the...

Kamo·5mo ago
Fixkamo-meet

Resolve OTK auth failure and login redirect issues in KamoMeet

- Fix Redis key lookup in validate-otk (was missing *** prefix, causing all OTK validations to fail) - Map SecurityService session field names correctly (member...

Kamo·5mo ago
FixMediaService

Upload meet backgrounds to public MinIO bucket with hash-based naming

Was uploading to private 'imaging-meet-recordings' bucket via **************** which caused: - MinIO region mismatch errors on the primary node - Connection tim...

Kamo·5mo ago
Fixkamo-meet

Replace Meet's native login dialog with org portal redirect for KamoMeet auth

KamoMeet uses OTK → JWT authentication exclusively. When Meet's auth middleware would normally show a username/password login dialog, redirect to the org's inte...

Kamo·5mo ago
March 29, 2026
Fixkamo-internal

Remove client-side OTK from multipart upload, add upload debug logging

The client was generating a wasted OTK before upload (the Next.js route generates its own server-side OTK for the backend). Removed the client OTK to simplify t...

kamo·5mo ago
Otherkamo-internal

Add logging to meet backgrounds POST handler

kamo·5mo ago
FixMediaService

Return serialization-safe Maps instead of raw JPA entities in MeetConfigController

All config/background endpoints were returning raw JPA entities with @ManyToOne(fetch=LAZY) Organization references. Jackson failed to serialize the Hibernate p...

Kamo·5mo ago
Fixkamo-meet

Remove stock Meet virtual backgrounds, use only org-level backgrounds

- Removed hardcoded IMAGES array from constants.ts (7 stock Meet backgrounds) - VirtualBackgrounds component now uses dynamic branding backgrounds directly wi...

Kamo·5mo ago
Fixkamo-internal

Simplify NavTop display name lookup and correct MediaService URL scheme

- Remove usernameAlias lookup from getDisplayName, use member record directly - Fix MediaService K8s URL from https:8443 to http:80

kamo·5mo ago
Fixkamo-meet

Serve virtual backgrounds through Meet's native dynamic branding system

Added /api/branding endpoint that returns org backgrounds in Meet's expected format. Set dynamicBrandingUrl in config so Meet fetches backgrounds natively on st...

Kamo·5mo ago
Fixkamo-internal

Use forwardToApi for meet background uploads instead of manual fetch

The manual fetch with FormData forwarding was breaking multipart boundaries. Now reconstructs FormData and uses forwardToApi which handles headers correctly.

kamo·5mo ago
Fixkamo-shared-library

Use subquery to find org theme backgrounds by user membership instead of direct member join

The previous INNER JOIN on tb.member excluded backgrounds where member was NULL, which is most user-level backgrounds. Now uses a subquery through User→Member→O...

Kamo·5mo ago
Featurekamo-meet

Integrate org-level settings into Meet config and branding

Sidecar fetches OrgMeetConfig from backend and maps all settings: - Audio/video mute defaults - Lobby/waiting room mode - Guest access and display name requirem...

Kamo·5mo ago
FeatureMediaService

Add public config and backgrounds endpoints for sidecar consumption

GET /api/meet/public-config?domain= returns org meet config by domain. GET **************** returns combined virtual backgrounds. Both endpoints are unauthentic...

Kamo·5mo ago
FixMediaService

Remove duplicate endpoints from MeetController, add org-themes to MeetConfigController

MeetConfigController already handled config/background endpoints. The duplicate endpoints in MeetController caused ambiguous mapping. Added org-theme background...

Kamo·5mo ago
FeatureMediaService

Add config CRUD, background management, and org-theme endpoints

All endpoints enforce MANAGE_MEET_SETTINGS privilege. Config auto-creates with defaults on first access per org. Background uploads go to MinIO with SHA-256 has...

Kamo·5mo ago
Featurekamo-internal

Add org theme backgrounds to meets settings and remove deprecated fields

- Add GET route for org theme backgrounds **************** - Update meetApi.ts: remove whoCanCreate and emailInvitesEnabled from MeetConfig, add OrgThemeBackgro...

kamo·5mo ago
Fixkamo-internal

Fetch signature template directly from EmailService with OTK auth, add debug logging

forwardToApi for /api/email/signature-templates went through APIService gateway instead of the Next.js email proxy. Now fetches directly from EmailService with ...

kamo·5mo ago
Fixkamo-internal

Read session from Redis directly (same as /api/user-info), use forwardToApi for all service calls

Root cause: the sender profile showed 'Your colleague' because the session fetch called a non-existent SecurityService endpoint. Signature was malformed because...

kamo·5mo ago
Fixkamo-internal

Replicate exact email composer data flow for meeting invite emails

The previous implementation only filled 8 of 20+ SignatureContent fields, causing malformed signatures with no images, name, or contact info. Now replicates th...

kamo·5mo ago
Fixkamo-internal

Clean up meeting invite email — remove logo, fix subject/host, embed custom message properly

Template changes: - Removed logo image (signature template header handles branding) - Removed 'Hi, Your colleague has invited you' — replaced with custom mess...

kamo·5mo ago
Fixkamo-internal

Wrap meeting invite emails with org signature template (header/footer/signature) and include custom message

Now replicates the exact same email wrapping as the email composer: 1. Fetches signature template from EmailService (USER scope, COMPANY fallback) 2. Fetches se...

kamo·5mo ago
FixMediaService

Update health probes to HTTP port 80 to match new server config

Startup, readiness, and liveness probes were still pointing to port 8443 with HTTPS scheme, causing pod restart loops.

Kamo·5mo ago
Fixkamo-internal

Send meeting invite emails DIRECTLY to EmailService, not through APIService gateway

Root cause: forwardToApi routes through APIService's Java gateway which doesn't preserve multipart FormData boundaries correctly. The email composer works becau...

kamo·5mo ago
Fixkamo-internal

Use subtle background tints on calendar page header and sidebar

Match the leads/allotments page styling with light color-mix backgrounds instead of heavily saturated primary colors.

kamo·5mo ago
FixMediaService

Switch MediaService to HTTP port 80 — TLS termination at Traefik

Internal cluster traffic doesn't need HTTPS. Traefik handles TLS for external clients. This aligns MediaService with all other services.

Kamo·5mo ago
Fixkamo-meet

Load org CSS/favicon immediately on every page load, widen settings to 800px, force dark text/icons in all dialogs, shrink video preview

1. Branding: loadThemeAssets() now runs FIRST before any auth flow, so org CSS (--navpri, --color-primary), favicon, and logo data are set even during the...

Kamo·5mo ago

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing