KamoCRM

Mabadiliko ya Tabianchi

Kila kipengele, kurekebisha na kuboresha, posted kama meli. Hakuna kitu kilichofichwa kwa ajili ya uzinduzi.

17,500
Mabadiliko ya Jumla
5,986
Features ya
5,284
Wa
30
Miradi ya Miradi
Filter ya Mradi
Miradi yote17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
Filter ya aina
Aina zoteBuild16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
April 28, 2026
FixSecurityService

Reduce org creation latency and fix translation cascade failures

- OrganizationController: replace ensureTeamMembersForAllOrgs (full org table scan) with ensureTeamMemberForOrg (single org) — eliminates the ~400ms×N DB ro...

Kamo·6mo ago
Fixkamo-shared-library

Widen commit_log_translations.title to TEXT to match DB column

The column was VARCHAR(512) in both the annotation and the DB, causing translation inserts to fail for long translated titles. The DB column is now STRING (appl...

Kamo·6mo ago
Chorekamo-internal

Trigger CI/CD

kamo·6mo ago
Fixkamo-internal

Unwrap catalog and calculation from backend response envelope

getSubscriptionCatalog returned { catalog: {...} } but was cast directly as SubscriptionCatalog, leaving catalog.plans undefined and the plan selection step bla...

kamo·6mo ago
FixBillingService

Add @JsonProperty to is*-prefixed boolean DTO fields

Lombok generates isXxx() is-getters for boolean fields named isXxx. Jackson strips the leading 'is' from is-getters and serializes them as 'xxx' rather than 'is...

Kamo·6mo ago
Fixkamo-internal

Use ss instead of fuser to kill stale port-forward (fuser not on k0m1)

fuser and lsof are not installed on the runner host. Use ss -tlnp with grep to extract the PID holding port 18080 and kill it directly. Also switch pkill to SIG...

kamo·6mo ago
Fixkamo-internal

Clean up stale port-forward so cancelled translate job doesn't block next run

Bash doesn't forward signals to backgrounded processes, so kubectl port-forward outlived cancelled workflow runs and held port 18080, blocking every subsequent ...

kamo·6mo ago
Fixkamo-internal

Restore all broken placeholder values across pages

Salvage-keys script had grabbed CSS classNames, inline styles, and JS template literals instead of the original English text for 114 message keys spanning notes...

kamo·6mo ago
Featurekamo-internal

Show Set Up Billing button for org owners with no account

When an org owner opens the plans-billing tab and no billing accounts exist, display a bootstrap prompt instead of the generic "contact your org owner" message....

kamo·6mo ago
Fixkamo-internal

Restore leads page hero title and subtitle from git history

heroTitle was 'Hero Title' (placeholder), heroSubtitle was 'flex gap-2' (salvage-keys accidentally grabbed the adjacent CSS class name). Correct values recovere...

kamo·6mo ago
FeatureSecurityService

Add bootstrap-billing endpoint for pre-existing orgs

POST **************** triggers the same idempotent setup as the sub-org creation hook (BillingSetupService .setupForSubOrgCreation) but can be called on-demand ...

Kamo·6mo ago
Fixkamo-register

Enable Finish button by polling widget.getState() and switching to auto=onload

The statechange event listener was not reliably enabling the Finish button after *** verification. Two root causes: 1. The drain logic read widgetAny.state whi...

Kamo·6mo ago
FixBillingService

Include subscription-targeting accounts in org list

listForOrg now also returns accounts whose subscriptions target the requested org — not just accounts directly owned by it. In the multi-org model the paying Ac...

Kamo·6mo ago
Fixkamo-internal

Add statusWindow labels namespace and fix all setting placeholders

- Add **************** (50 keys) so the settings nav sidebar shows real text instead of key paths - Fix branchTypesLabel ICU format: \${branchLabel} → {branch...

kamo·6mo ago
Chorekamo-internal

Update locale translations and hash [skip ci]

Kamo CI·6mo ago
Featurekamo-internal

Wave 3 conversions, fallback fix, and auto-translate CI

- Replace all hardcoded English strings with t() calls across wave 3 components (chat, clubhouse, support, notes, pipeline, leads, nav, etc.) - Merge wave 3 f...

kamo·6mo ago
Fixkamo-internal

Match other tool windows' size + color scheme

- defaultSize and minSize now 320x650, resizable: false (matches Softphone, Chat, Calculator, SMS, AI Chat) - Switched from dark slate gradient to the standard ...

kamo·6mo ago
Featurekamo-internal

Wire next-intl with member.language as locale source

Adds next-intl-based internationalization across kamo-internal without URL locale prefixes. Active locale is read from the kamo-locale cookie, which mirrors the...

kamo·6mo ago
Fixkamo-internal

Forward Range header so audio playback can scrub

Without this the VOIPService recording-streaming endpoint always returns the full file (Range header is dropped by buildForwardHeaders), which works for play-fr...

kamo·6mo ago
Refactorkamo-register

Drop language search filter on My Language step

The supported language list is short enough to scan visually; the search input added complexity without user value.

Kamo·6mo ago
FixKlusterServices

Rewrite /etc/odbc.ini to point at $MARIADB_HOST on every boot

The escomputers/freepbx:17 image bakes /etc/odbc.ini with Server=db (the docker-compose link target). On this Kubernetes deployment MariaDB lives at \$MARIADB_H...

Kamo·6mo ago
FeatureVOIPService

Fall back to imaging recordings for call history + voicemails

FreePBX 17 doesn't expose voicemail messages over REST or GraphQL on this install (the GraphQL voiceMail type returns mailbox config, not messages, and /admin/a...

Kamo·6mo ago
Featurekamo-shared-library

Paginated Recording lookup by (instance, extension, isVm)

Used by the softphone tabs as the canonical source of truth for call recordings and voicemails when the upstream provider can't list them — e.g. FreePBX 17 has ...

Kamo·6mo ago
FixVOIPService

Resolve member→extension before VM/CDR provider lookup

CallController was passing memberId where FreePBX (and other PBX-style providers) expect an extension number — voicemail listing returned empty because no PBX e...

Kamo·6mo ago
Chorekamo-internal

Drop dead masterAccountHolder/isMaster UI, refresh stale comments

Account schema no longer carries masterAccountHolder or per-member isMaster flags — those were removed alongside the Account-as-billing-principal refactor. Acco...

kamo·6mo ago
FixSecurityService

Auto-assign first seat, Free as floor, broader org invalidation

BillingSetupService now activates the first open license slot for the creator when seeding a sub-org subscription (and same for promote-to-billing-owner) — othe...

Kamo·6mo ago
Chorekamo-shared-library

Drop stale BillingGroup-era comment + unused SubscriptionMember query

Strips the leftover doc block in AppliedModelEnforcementService that referred to the long-gone BillingGroup concept, and removes **************** after consolid...

Kamo·6mo ago
ChoreTranslateService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreConversionService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreDocsService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreVOIPService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreDaemonService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreMCPGatewayService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreEmailService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreRAGService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreMediaService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreBillingService

Trigger redeploy for shared library update

Kamo·6mo ago
FixSecurityService

Top-level org members get platform-owner plan, bypass billing gates

KamoCRM (top-level) org members are not subject to the billing system — they get the OWNER_UNLIMITED plan's feature matrix outright (with Free as a defensive fa...

Kamo·6mo ago
Fixkamo-shared-library

Top-level org bypass + Free baseline fallback for orgs without subs

The org-level entitlement check **************** walks subscriptions targeting an org. With the new target_org model, orgs that don't yet have a targeting Accou...

Kamo·6mo ago
ChoreTranslateService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreConversionService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreDocsService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreVOIPService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreDaemonService

Trigger redeploy for shared library update

Kamo·6mo ago
ChoreMCPGatewayService

Trigger redeploy for shared library update

Kamo·6mo ago

Je, unaona nini kuhusu usafiri?

Kila kitu kinaingia kwenye tovuti yako mwenyewe. Anza kwenye mpango wa bure na usome ukurasa huu tena katika mwezi mmoja.

Kuwa Huru MileleMtazamo wa bei