KamoCRM

Log Perubahan Langsung

Setiap fitur, perbaikan dan perbaikan, diposting sebagai kapal. Tidak ada yang ditahan untuk peluncuran.

17,500
Total Perubahan
5,986
Fitur
5,284
Perbaikan
30
Proyek
Filter menurut projek
Semua Projek17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
Filter berdasarkan tipe
Semua JenisBuild16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
April 29, 2026
Fixkamo-internal

Load org logos from MinIO theme public path like dashboard

Use getThemePublicBaseForDomain so logo URLs match getThemePath()/img/logo.svg instead of legacy /domain/.../kamosite paths that 404 and fell back to initials.

kamo·6mo ago
Fixkamo-internal

Add missing nav-top strings and scope translations

English messages listed components.navtop.* keys for Mail/Docs/Voip buttons but never defined hi/welcome, branches, account, credits, calendar, chat, etc., so n...

kamo·6mo ago
Fixkamo-internal

Resolve nav-pri labels showing raw i18n keys

Use namespaced next-intl translators for nav and components.nav.navPri so lookups resolve against the merged message trees; add panel aria strings under navPri;...

kamo·6mo ago
Fixkamo-internal

Add MessageBrowser i18n strings and restore load error copy

next-intl threw MISSING_MESSAGE for components.messages.browser.* keys missing from en.json, breaking /messages render. Add English strings, use loadMessagesFai...

kamo·6mo ago
FixVOIPService

Bangun rekaman kunci objek MinIO seperti stream pencitraan

Abaikan ekstensi ketika BERKAS _ EXT adalah null / kosong sehingga nama objek cocok Rekaman Layanan Gambar dan Pengendalian Gambar. Concat string Java dengan nu...

Kamo·6mo ago
Fixkamo-internal

Batalkan panggilan jika Hang up dipanggil sebelum sdk.invite menyelesaikan

Kondisi balap: menutup () selama menghubungkan belum ada sesi untuk mengakhiri belum (sdk.invite ditunggu sebelum wisesi), sehingga panggilan tersambung pula. D...

kamo·6mo ago
Fixkamo-internal

Otomatis masukkan org baru setelah pembuatan sehingga anggota tanah dengan peran dan hak mereka sendiri

Setelah pembuatan org sesi tetap dalam konteks induk (tidak ada hak admin), Meninggalkan pemilik org baru tidak dapat melihat pengaturan. Sekarang para penyihir...

kamo·6mo ago
Fixkamo-internal

Ijinkan akhir panggilan saat menyambung, matikan asisten AI, hapus tab antrian

- Akhir tombol panggilan sekarang aktif dan merah selama kondisi menghubungkan sehingga panggilan dapat dibatalkan sebelum mereka terhubung - Dinonaktifkan tomb...

kamo·6mo ago
FixVOIPService

Selesaikan ekstensi riwayat panggilan dari anggota _ voip _ config, bukan phone _ extension

* * * * * * * * * * * * * itu NULL untuk beberapa ekstensi bahkan ketika anggota _ voip _ config benar dipetakan anggota ke ekstensi mereka. Menggunakan anggota...

Kamo·6mo ago
Fixkamo-internal

Full touch support for softphone popup on tablets

- Add touch-action: manipulation + WebkitTapHighlightColor to iconBtnStyle so window control buttons (minimize/maximize/close) respond instantly on touch - Ad...

kamo·6mo ago
Fixkamo-asterisk-support

Add go-sql-driver/mysql v1.7.1 checksum to go.sum

go mod tidy without source files is a no-op, so the mysql checksum was never added. Generated the correct h1 hashes via a throwaway golang:1.22-alpine container...

Kamo·6mo ago
Fixkamo-shared-library

Handle legacy ordinal string untuk CountryType via AttributeConverter

Baris DB memiliki negara yang disimpan sebagai integer ordinal (mis. "186" untuk UNITED _ STATES) bukan nama enum, menyebabkan IllegalArgumen Exception pada fin...

Kamo·6mo ago
Fixkamo-internal

Batalkan menerjemahkan tugas seketika dengan menjalankan tsx di latar belakang

Ketika Forgejo membatalkan aliran kerja, bash menunggu untuk setiap anak latar depan untuk selesai sebelum memproses sinyal - sehingga menjalankan pekerjaan lok...

kamo·6mo ago
Fixkamo-asterisk-support

Pindahkan ASTERISK _ CDR _ DSN ke konfigurasi lokal. json, bukan rahasia CI / CD

CDR kredensial lokal untuk setiap server FreePBX dan tidak memiliki bisnis dalam baris pipa CI / CD. Operator tambahkan ASTERISK _ CDR _ DSN langsung ke mereka ...

Kamo·6mo ago
FixSecurityService

Ijinkan akses tinggi pada getDomainById dan verify- dns titik akhir

Pemilik dan anggota sistem pada getDomainBy level-org Id dan verify- dns karena titik-titik akhir diperiksa adalah UmserMenof Org langsung. Tambahkan bantuan Ak...

Kamo·6mo ago
Fixkamo-internal

Show existing org domain instead of entry form when no custom domain

Fall back to the org's platform subdomain as the display domain so DnsProgressView renders rather than DomainEntryForm when no custom external domain exists. Al...

kamo·6mo ago
FixVOIPService

Surface imaging fallback when provider has no call history

KamoPBXProvider.getCallHistory now returns null instead of throwing **************** so the 501 response no longer bypasses the imaging fallback. The provider c...

Kamo·6mo ago
Fixkamo-internal

Restore NavPri panel labels and LeadHistory column headers

NavPri: salvage-keys grabbed href URLs as label values and swapped label/description pairs for Accounts, KB, and Notes nav panels. LeadHistoryPanel: MUI bgcolo...

kamo·6mo ago
Fixkamo-internal

Show platform domain context when no custom domain is set

Surface the active *.kamocrm.com hostname in the domain entry form so users can see their current platform domain instead of a blank entry screen. Also fixes ve...

kamo·6mo ago
Fixkamo-internal

Checkpoint translations per chunk and per locale on main

Persist locale JSON after each API chunk so cancellation loses at most one batch. CI translates one locale per process and commits/pushes after each so finished...

kamo·6mo ago
Fixkamo-internal

Checkpoint translations per chunk and per locale on main

Persist locale JSON after each API chunk so cancellation loses at most one batch. CI translates one locale per process and commits/pushes after each so finished...

kamo·6mo ago
April 28, 2026
Fixkamo-internal

Disable Docker BuildKit cache so every pipeline run does a full rebuild

Sets no-cache on both image build steps so npm ci and npm run build always run, even when the source tree is unchanged.

kamo·6mo ago
Fixkamo-internal

Bust Docker BuildKit cache per commit so npm run build runs every push

Identical checkout trees (e.g. empty commits) reused cached layers and skipped a real Next build. Pass GIT_COMMIT from the workflow and label the image revision...

kamo·6mo ago
FixEmailService

Selaraskan keanggotaan surel ketika kotak surat primer diberikan, diubah, atau dihapus

Ketika kotak surat ditugaskan untuk anggota dalam KAMO _ MAIL org, members.email tidak pernah diperbarui, menyebabkan EmailCredentialService gagal untuk menyele...

Kamo·6mo ago
FixSecurityService

Cegah domain root duplikat dan perbaiki tampilan domain primer

One _ DOMAIN _ PER _ ORG cek secara tidak benar dikecualikan .kamocrm.com web-alias domain, memungkinkan org untuk mengumpulkan multiple domain root (dan 10 ali...

Kamo·6mo ago
Fixkamo-internal

Serialisasi anggota keamanan dan anggota PUT panggilan untuk menghindari konflik CockroachDB

Dua baris concurrent menulis ke baris 'anggota' yang sama menyebabkan sebuah serialisasi konflik isolasi - anggota keamanan membaca baris sementara anggota titi...

kamo·6mo ago
Fixkamo-internal

Lebar scrollbar ganda dari 6px ke 12px

kamo·6mo ago
FixSecurityService

Mengurangi pembuatan org latensi dan memperbaiki kegagalan cascade terjemahan

- Kontroller Organisasi: ganti sewajarnya Tim Anggota ForAllOrgs (full org pemindaian tabel) dengan secara pasti TeamAnggota Org (single org) - menghilangkan ~ ...

Kamo·6mo ago
Fixkamo-shared-library

Widen commit _ log _ translations.title ke TEXT untuk mencocokkan kolom DB

Kolomnya adalah VARCHAR (512) dalam kedua gangguan dan DB, menyebabkan terjemahan memasukan gagal untuk judul terjemahan panjang. Kolom DB sekarang STRING (dite...

Kamo·6mo ago
Fixkamo-internal

Buka katalog dan perhitungan dari amplop respon backend

getSubscription Catalog returned {katalog: {...}} tapi cast secara langsung sebagai Katalog Subscription, meninggalkan catalog.plans undefined and the plan pili...

kamo·6mo ago
FixBillingService

Tambahkan @ JsonProperty ke daerah DTO * -prefixed bool

Lombok menghasilkan isXxx () adalah - getters untuk bidang boolean bernama isXxx. Jackson strip 'adalah' dari is- getters dan serializes mereka sebagai 'xxx' da...

Kamo·6mo ago
Fixkamo-internal

Gunakan SS daripada fuser untuk membunuh port- forward basi (fuser tidak pada k0m1)

fuser dan lsof tidak terpasang pada host pelari. Gunakan ss -tlnp dengan Grep untuk mengekstrak PID memegang port 18080 dan langsung membunuhnya. Juga switch pk...

kamo·6mo ago
Fixkamo-internal

Bersihkan port- forward basi sehingga membatalkan pekerjaan terjemahan tidak memblokir run berikutnya

Bash tidak meneruskan sinyal ke proses backgrounded, jadi kubectl Port-forward membatalkan arus kerja yang dibatalkan dan ditahan port 18080, memblokir setiap t...

kamo·6mo ago
Fixkamo-internal

Kembalikan semua nilai placeholder yang rusak ke seluruh halaman

Script Salvage- kunci telah meraih CSS clasnames, gaya inline, dan JS template literals bukan teks asli Inggris untuk 114 pesan kunci spanning catatan, kb, perd...

kamo·6mo ago
Fixkamo-internal

Mengembalikan judul pahlawan halaman utama dan subtitle dari sejarah git

hero Title was 'Hero Title' (placeholder), heroSub was 'flex gap-2' (Salvage- kunci sengaja meraih CSS yang berdekatan nama kelas). Nilai yang benar dipulihkan ...

kamo·6mo ago
Fixkamo-register

Aktifkan tombol Selesai dengan polling widget.getState () dan beralih ke auto = onload

Pendengar perubahan status tidak dapat diandalkan mengaktifkan tombol Selesai setelah verifikasi. Dua akar menyebabkan: Logika saluran membaca widget. keadaan ...

Kamo·6mo ago
FixBillingService

Termasuk subscription-target akun dalam daftar org

listForOrg sekarang juga mengembalikan akun yang subscriptions target diminta org - bukan hanya akun langsung dimiliki olehnya. Dalam multi- org model Akun Memb...

Kamo·6mo ago
Fixkamo-internal

Tambahkan namespace status Jendela dan perbaiki semua placeholder

- Tambahkan * * * * * * * * * * * * * (50 tombol) sehingga pengaturan batang samping nav menampilkan teks real daripada path kunci - Fix branchTypesLabel format...

kamo·6mo ago
Fixkamo-internal

Cocok dengan skema ukuran + warna jendela lain

- navoultSize and minSize now 320x650, resiviable: false (match Softphone, Chat, Kalkulator, SMS, AI Chat) - Beralih dari gradien gelap ke gradien cahaya standa...

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

Otomatis-assign kursi pertama, Bebas sebagai lantai, broader org invalidasi

Layanan BillingSetupService kini mengaktifkan slot lisensi terbuka pertama bagi sang pencipta ketika seeding sebuah sub-org berlangganan (dan sama untuk promoto...

Kamo·6mo ago

Seperti apa yang Anda lihat pengiriman?

Semua itu tiba di ruang kerjamu sendiri. Mulailah dengan rencana gratis dan baca halaman ini lagi dalam sebulan.

Mulai Bebas SelamanyaTampilkan Harga