KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

17,395
Total Changes
5,910
Features
5,260
Fixes
30
Projects
Filter by project
All Projects17,395AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,830TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,328kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,637kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,910Fix5,260Other993Performance165Refactor278Revert23Style42Test159Upgrade1
July 2, 2026
Featurekamo-internal

Underwriting Review steward screen (agency AUS + non-QM), live

Second steward tab, on the shipped MLOSUnderwritingService reads via the new SecurityService proxy. Agency AUS runs inventory (DU/LP/GUS + decision) with a deta...

kamo·3mo ago
Featurekamo-internal

Wire Capital & Risk Command Center to the live read-path

Replace the fixture layer with the real end-to-end read-path: browser -> **************** route handler -> APIService -> SecurityService MlosCapitalMarketsContr...

kamo·3mo ago
Featurekamo-internal

MLOS Capital & Risk Command Center steward console

Add the AI-native mortgage steward console under /commerce (MORTGAGE market tab), replacing the placeholder intents/commitments sub-tabs with MortgageStewardSec...

kamo·3mo ago
Featurekamo-internal

System Wide toggle + credit-balance editor + cascade filter; history member filter/links/pagination; inject icon+INJECT confirm

- /leads/credits: right-aligned 'System Wide:' Active/Suspended dropdown; Credit Balance uses the ∞-capable InfinityCell (lowering invalidates, ∞ leaves as-is...

kamo·3mo ago
Refactorkamo-internal

Drop redundant in-view titles on Templates/Past-Imports tabs

The sub-tab labels already name the view, so remove the h4 title + subtitle from LeadImportTemplateManager and LeadImportHistoryManager; keep the refresh action...

kamo·3mo ago
Fixkamo-internal

Add missing /api/security/lead-imports proxy route; default to Import Templates

- The base GET/POST /api/security/lead-imports had NO Next proxy route.ts (only sub-paths did), so Past Imports fetch (and the import POST) 500'd at the Next ...

kamo·3mo ago
Featurekamo-internal

Split Lead Credits into Available/History/Manage Credits actions

Reorders the /leads top-right actions to: Add New Lead, Leads Available (→/leads/available, Bolt icon + live availability indicator, shown with Spend/Receive), ...

kamo·3mo ago
Refactorkamo-internal

Drop the Import Leads tab; two sub-tabs + header button

- Remove the 'Import Leads' sub-tab; the import wizard now opens from an always-visible 'Import Leads' button in the page header. Only two sub-tabs remain: Im...

kamo·3mo ago
Fixkamo-internal

Send leadId as string when creating a comment

parseInt() rounded lead ids past JS MAX_SAFE_INTEGER, so the backend looked up a nonexistent lead and returned 404, surfacing as 'Failed to create post' on the ...

kamo·3mo ago
Fixkamo-internal

Resolve member names on /leads/credits + link to their account

The member column and filter showed raw ids because the name map was built from /api/security/members, whose CockroachDB Long ids serialize as JSON numbers and ...

kamo·3mo ago
Chorekamo-internal

Rebuild to pull new i18n keys from translation dictionary

The manual-import feature keys were added to kamo-translation-dictionary (en) which CI copies into messages/ at build time; this forces a rebuild so the deploye...

kamo·3mo ago
Featurekamo-internal

Inject Test Lead action on /leads/available (managers only)

Adds an 'Inject Test Lead' button beside Accept for each vendor/product, shown only to members with MANAGE_CREDITS. Opens a confirmation dialog, then POSTs to t...

kamo·3mo ago
Featurekamo-internal

Archive & download the original imported file

On Start Import the raw file is uploaded (best-effort) and its key passed to the import POST; Past Imports shows a Download button for runs with an archived fil...

kamo·3mo ago
Featurekamo-internal

Import Templates + Past Imports sub-tabs, auto-detect, re-import

- Sub-tab bar in LeadManualImportManager: Import Leads | Import Templates | Past Imports - LeadImportTemplateManager: template list/create/edit/delete + upload-...

kamo·3mo ago
Featurekamo-internal

Live availability indicator on the Lead Credits button

Mirror the NavPri Leads indicator on the /leads 'Lead Credits' action: a green/red status dot (green = a lead is acceptable now via FFA or credit, red = none) a...

kamo·3mo ago
Fixkamo-internal

Make EditableCard onEdit optional so reassignment gating type-checks

The assignment card passes `canReassignManually ? startEditAssignment : undefined` to EditableCard.onEdit, but onEdit was typed `() => void` (required), failing...

kamo·3mo ago
Featurekamo-internal

Live NavPri lead alert — green/red dot, blink, fire popup, edge trim

- LeadAlertProvider (global, mounted at NavPri level): WS-driven /available-summary; drives all state - NavPri Leads icon: green dot (can accept) / red (cannot)...

kamo·3mo ago
Fixkamo-internal

Busy state on Start Import + drop debug logs

- disable Start Import / Back and show a spinner + 'Importing…' while the import POST is in flight, preventing duplicate submissions on large files - remove [...

kamo·3mo ago
Featurekamo-internal

/account-style header+tabs, /leads Card containers, right gating

- LeadsCreditLayout: gradient hero header + underline tabs (matches /account); filters+grid in rounded /leads-style Card; Available tab gated by SPEND_RECEIVE...

kamo·3mo ago
July 1, 2026
Featurekamo-internal

Credit-based lead assignment UI (available/history/credits)

- /leads/available: real-time vendor/product grid, atomic Accept (routes to the lead), comment-gate blocked state, rows animate the moment a lead is claimable...

kamo·3mo ago
Featurekamo-internal

Market lifecycle + market-scoped vendors/products

- Markets & Fields: Active/Archived sub-tabs; row action is Archive/Reactivate (PATCH .../active), never delete - Vendors & Products: one sub-tab per active m...

kamo·3mo ago
Fixkamo-internal

Stop refresh icon blinking via infinite check loop

Once a domain was SSL-confirmed, checkDns unconditionally built a new domain object even when sslConfirmed was already true. The new object reference re-trigger...

kamo·3mo ago
Featurekamo-internal

Add media subdomain to the required records list

media.<domain> backs the realtime websockets (chat, calls, SMS, theme provisioning) and media streaming, but it was missing from the DNS setup catalog, so custo...

kamo·3mo ago
Fixkamo-internal

Don't fetch org with a precision-truncated id

LabelManager derived orgIdStr from getOrgIdString() (precision-safe) with a fallback to String(organization.id). organization.id is a JS number and silently tru...

kamo·3mo ago
Featurekamo-internal

Homepage trial-mode banner with live countdown

kamo·3mo ago
Fixkamo-internal

Persist background reorder via commit endpoint (no data loss)

Save now stages new uploads to incoming, then commits the full desired order (existing-by-srcIndex or new-by-token) so reordered existing images are re-slotted ...

kamo·3mo ago
Fixkamo-internal

Map missing org (404 or empty body) to a null payload

Pairs with the SecurityService change that now returns 404 for a missing org instead of 200-with-empty-body. Callers already null-check the org, so both the pro...

kamo·3mo ago
Fixkamo-internal

Stop spurious errors flooding the console

- org/[id] proxy: backend returns 200 with an empty body for null orgs; response.json() threw 'Unexpected end of JSON input' -> spurious 500. Parse defensiv...

kamo·3mo ago
Fixkamo-internal

Resolve org tab title in generateMetadata to stop title flip

Static metadata.title rendered 'Kamo' server-side; Next re-asserted it after hydration, overriding DynamicMetaLoader's client update and flipping the tab back f...

kamo·3mo ago
Fixkamo-internal

Withhold rows until Myself member id resolves

ag-grid renders rowData beneath the loading overlay, so gating only the loading prop still flashed all leads while getMemberId() was 0. Blank the rows and stay ...

kamo·3mo ago
Fixkamo-internal

Default filter to Myself on load, hide market bar for single market, relocate toolbar

- Default agentFilter to __MYSELF__ at init + gate grid on userInfo load so it no longer flashes All Leads - Single market: auto-select it and hide the market-t...

kamo·3mo ago
June 30, 2026
Fixkamo-internal

Re-apply live stylesheet after branding save so new colors show without hard reload

DynamicMetaLoader injects the org globals.css only once on mount, so after a color save (which correctly re-provisions globals.css + bumps themeRevision) the pa...

kamo·3mo ago
Featurekamo-internal

Remove "Publish to World" stage; fix Run All

Generators now write tiles directly to the serving drive, so the worldgen pipeline no longer has a publish/push stage. - worldgenNats.ts + universe/types.ts: d...

kamo·3mo ago
June 26, 2026
June 25, 2026
Fixkamo-internal

Page reflects superseded edt + road-less transport cells honestly

The Services tab read as incomplete for two stages that are actually done: - edt showed an empty 0% bar though EDT4 (hydro) supersedes the EDT2 base and the p...

Sage·4mo ago

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing