Live Change Log

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

17,933
Total Changes
4,614
Features
4,543
Fixes
32
Projects
Filter by project
All Projects17,933AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService373InitializerService300KBService74KlusterServices546MCPGatewayService43MediaService461RAGService61SecurityService1,523TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,579kamo-login319kamo-marketing585kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,322kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI523Chore670Docs226Feature4,614Fix4,543Other6,781Performance136Refactor274Revert23Style48Test70Upgrade1
March 13, 2026
Fixkamo-internal

Address review issues

- Validate intermediate steps when jumping forward via stepper - Pass warnings as query params instead of losing them on navigation - Revoke previous AI-generat...

kamo·6mo ago
FixSecurityService

Add auth check and sanitize input on POST /org

- Return 401 if no authenticated user (prevents orphan orgs) - Build Organization from allowed fields only (prevents mass-assignment) - Fix colors field name (w...

Kamo·6mo ago
Fixkamo-internal

Restore full step component implementations

Replace stub step components with the complete implementations that include all form fields, validation, and UI logic for each wizard step.

kamo·6mo ago
Fixkamo-internal

Add proactive session extension to prevent timeout while user is active

The session monitor only extended the Redis session when TTL dropped to ≤5 minutes, and at that point silently auto-extended without showing the warning popup. ...

kamo·6mo ago
Fixkamo-internal

Swap My Account and My Branch buttons and reduce NavTop gaps

Swapped positions of "My Account" and "My {branch title}" buttons in the top nav, and halved all container-level gaps for tighter spacing.

kamo·6mo ago
Fixkamo-register

Invalidate stale Redis cache missing org label fields

Cached org data from before the SecurityService update lacks the memberTitleNonPlural field. Detect this and re-fetch fresh data so custom member/team labels di...

Kamo·6mo ago
FixSecurityService

Include member title labels and shortTitle in org domain response

The /org/domain/{domain} endpoint was missing memberTitlePlural, memberTitleNonPlural, teamMemberTitlePlural, teamMemberTitleNonPlural, and shortTitle fields fr...

Kamo·6mo ago
Fixkamo-register

Proxy all external API calls through Next.js to avoid CORS

Added catch-all /api/security/[...path] proxy route and updated ThemeConfig, FormAccountRecovery, FormPassportID, FormPersonalInfo, and FormRecoveryEnforcement ...

Kamo·6mo ago
March 12, 2026
Fixkamo-register

Proxy countries API through Next.js and disable testing mode

Direct fetch to api.kamocrm.com failed due to CORS. Added /api/countries proxy route (same pattern as /api/org) and disabled USE_TESTING_MODE.

Kamo·6mo ago
Fixkamo-register

Use full GitHub URLs for action references in Forgejo workflow

Shorthand refs (e.g. actions/checkout@v4) can fail to resolve on Forgejo runners. Aligned with kamo-internal's working format.

Kamo·6mo ago
FixAPIService

Use JdkClientHttpRequestFactory to support PATCH method forwarding

The default RestTemplate uses SimpleClientHttpRequestFactory (HttpURLConnection) which doesn't support the PATCH HTTP method, causing branch-titles save to fail...

Kamo·6mo ago
FixSecurityService

Move loginOrgOpt declaration outside try block to fix scope error

The variable was declared inside the first try block but referenced in the second try block for parent branch title resolution.

Kamo·6mo ago
Fixkamo-internal

Move useUserInfo hook into OrgStep component to fix build error

getParentBranchTitleNonPlural was referenced in OrgStep but only destructured in the parent CreateNetworkPage component.

kamo·6mo ago
Fixkamo-internal

Resolve session timeout maintenance system not running

Root cause: sessionMonitor.start() called stop() after setting this.config, which nullified the config before the 3-second startup timer fired. As a result, the...

kamo·6mo ago
Fixkamo-login

Hide re*** badge when text attribution mode is active

Fixed overly-specific CSS selector that targeted the badge inside #re***-container. Google injects the badge directly into <body>, so the rule never matched. Ch...

Kamo·6mo ago
Fixkamo-register

Force light mode to override external dark mode CSS

- Set Tailwind darkMode to 'class' to prevent OS preference from triggering dark utilities - Add !important overrides in globals.css to lock light mode variable...

Sajon Nadjafinia·6mo ago
March 11, 2026
Fixkamo-internal

Resolve horizontal overlap, follower blind spot, and timing bugs

- flyToHomeRow: compute per-follower actual dx extents to derive rightBuffer/leftBuffer independently, placing anchor correctly to prevent ring followers from...

kamo·6mo ago
Fixkamo-register

Force light mode regardless of OS color scheme preference

Removed prefers-color-scheme dark media query so the site always renders in light mode.

Sajon Nadjafinia·6mo ago
Fixkamo-internal

Bake Size slider zoom into saved SVG via viewBox crop

Avatar Creator's internal scale transform zooms the avatar body within the SVG canvas, but the effect is imperceptible at small display sizes (e.g. a 140x140 Av...

kamo·6mo ago
Fixkamo-internal

Remove redundant CSS scale transform from avatar preview

Avatar Creator's scale option already applies scale(N/100) as an SVG group transform on the avatar body. The preview container was also applying CSS transform: ...

kamo·6mo ago
Fixkamo-internal

Implement makeRoom and post-dock collision resolution

Replaces the no-op hexheads:makeRoom listener with a real handler that runs resolveCollisions after the new tool window's DOM rect is stable. Fixes the listener...

kamo·6mo ago
Fixkamo-internal

Resolve collisions after non-snap drop and swarm

Non-snap drops now run resolveCollisions before saving positions, preventing stacking at the bottom-right corner. Swarm drops also run resolveCollisions and now...

kamo·6mo ago
Fixkamo-internal

Group-aware slot widths in flyToHomeRow

Groups now reserve horizontal slots proportional to their follower ring extent (using correct flat-top axial formula), preventing group followers from invading ...

kamo·6mo ago
Fixkamo-internal

Remove z-index DOM sort to prevent click events being dropped on focus

Sorting windows by zIndex in ToolDock caused DOM node reordering on every focus event (mousedown). Browsers drop the click event when its target element moves b...

kamo·6mo ago
Fixkamo-internal

Bake background color/gradient into saved Avatar Creator avatar SVG

Avatar Creator generates transparent-background SVGs by default. The background was only applied as a CSS wrapper on the preview container, so the stored MinIO ...

kamo·6mo ago
Fixkamo-internal

Dispatch member-panel-toggle via useEffect to avoid stale Framer Motion closure

onAnimationStart/Complete hold the last rendered props, so the exit animation always saw isOpen=true and windows never relayed to the right on close. Using a us...

kamo·6mo ago
Fixkamo-internal

Correct member-panel-toggle event property so tool windows respect panel offset

The event was dispatching `{ isOpen }` but ToolWindowsContext read `detail.open`, causing memberPanelOpenRef to always be falsy and the 500px panel offset to ne...

kamo·6mo ago
Fixkamo-internal

Eliminate hexhead spawn overlap by computing unique column positions

Each head now initialises its MotionValue at its own home-row column X and below the viewport (h + SIZE), then springs up to its final slot. Previously all head...

kamo·6mo ago
Fixkamo-internal

Use inline style for icon colors to prevent CSS specificity override

sx-generated color classes were being overridden by Tab card context styles. Switching color to inline style prop ensures icons always render with the correct c...

kamo·6mo ago
FixSecurityService

Add kamo.commerce.enabled=true to k8s configmap

This is the file the CI pipeline actually applies (k8s/configmap.yaml). Required for CommerceService and EngagementLifecycle to load under the new @ConditionalO...

Kamo·6mo ago
FixSecurityService

Add KAMO_COMMERCE_ENABLED=true to k8s configmap

Required for CommerceService and EngagementLifecycle to load now that they use @ConditionalOnProperty instead of @ConditionalOnBean.

Kamo·6mo ago
Fixkamo-shared-library

Add matchIfMissing=false to ConditionalOnProperty for commerce beans

Makes it explicit that CommerceService and EngagementLifecycle are disabled by default when kamo.commerce.enabled is not set. Any service that does not configur...

Kamo·6mo ago
FixSecurityService

Enable commerce beans via kamo.commerce.enabled property

CommerceService and EngagementLifecycle now use @ConditionalOnProperty instead of @ConditionalOnBean. Set kamo.commerce.enabled=true so they load in SecuritySer...

Kamo·6mo ago
Fixkamo-shared-library

Replace ConditionalOnBean with ConditionalOnProperty for CommerceService

**************** is evaluated before Spring Data JPA registers user-defined repository beans, making it unreliable. Replace with **************** which is evalu...

Kamo·6mo ago
Fixkamo-internal

Prevent overflow:hidden on tab card from clipping status widget

Move overflow:hidden from the Card to the Tabs wrapper Box so scrollable tabs are contained but the right-aligned status/substatus widget remains fully visible.

kamo·6mo ago
Fixkamo-internal

Correct hexhead geometry, z-index layering, and viewport clamping

- Fix axialToPixel to use flat-top hex formula (was pointy-top) so honeycomb aligns flat-edge to flat-edge as the hex SVG shape requires - Fix generateRing to...

kamo·6mo ago
Fixkamo-internal

Use Next.js client-side navigation for all MUI Link components

MUI Link without component={NextLink} renders as a plain <a> tag, causing full page reloads that reset all React state including tool windows. Added component={...

kamo·6mo ago
Fixkamo-internal

Replace window.location hard navigations with router.push/refresh

All window.location.href, window.location.assign(), and window.location.reload() calls in page components caused full page reloads, wiping all React state inclu...

kamo·6mo ago
Fixkamo-internal

Move ToolDock above auth gate to prevent tool window wipe on navigation

PresenceWrapper switches its component tree structure when auth resolves (Fragment > children → ChatWebSocketProvider > PresenceProvider > children). This unmou...

kamo·6mo ago
Fixkamo-internal

Apply toolbar and search changes to embedded chat mode

The ChatBox is always rendered in embedded mode via ChatTool. Move the call controls toolbar with search field and scroll-to-bottom button into the embedded sec...

kamo·6mo ago
Fixkamo-internal

Update HexHeadGroup selectors from data-chatbox-root to data-tool-window

The tool window system uses data-tool-window on ToolWindowShell, but HexHeadGroup was still querying data-chatbox-root for footprint detection. This caused hexh...

kamo·6mo 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