KamoCRM

Live Change Log

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

17,594
Total Changes
6,048
Features
5,310
Fixes
30
Projects
Filter by project
All Projects17,594AIService258APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService582InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService602RAGService79SecurityService1,864TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,377kamo-login339kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,674kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore775Docs3,257Feature6,048Fix5,310Other994Performance165Refactor278Revert23Style42Test162Upgrade1
July 16, 2026
FeatureAPIService

GET /api/public-chat/bootstrap gateway route

Add bootstrap endpoint that reuses the existing proxyWithAuth pipeline (key validation + opt-in origin + PUBLIC_CHAT scope + rate-limit + X-Public-Chat-Key-Hash...

Kamo·3mo ago
FeatureMediaService

Public-chat bootstrap config resolver

Adds an internal GET **************** that resolves a WebChatIntegration by X-Public-Chat-Key-Hash and returns its resolved design/behavior config (default-fill...

Kamo·3mo ago
FeatureMediaService

WebChatIntegration CRUD (mints key + integration, org-scoped)

Org-facing management API for the Phase-2 web-chat settings tab. On create, mints the underlying PublicChatApiKey (same key-gen approach as PublicChatKeyControl...

Kamo·3mo ago
Featurekamo-internal

Add "Access Copilot Mobile App" entry points on home + NavPri

Both surfaces dispatch an `open-interaction-center` event that NavTop listens for to open the Interaction Center on the Setup Mobile App tab. Home shows a label...

kamo·3mo ago
Featurekamo-internal

Password-gate the QR, single-line tab, logo-left header, 10-min code

- Member must re-enter their password (server-verified via /api/mobile-access-otk, which mints the OTK only on success) before the QR is revealed — prevents s...

kamo·3mo ago
FeatureSecurityService

POST **************** — gate Mobile Copilot QR

Verifies the caller's own password (passwordEncoder.matches against their session's user) without changing anything. Used by the mobile-access-otk BFF route so ...

Kamo·3mo ago
Featurekamo-internal

Setup Mobile Access tab — QR to install + auto-configure Mobile Copilot

New 3rd tab in NavTopPanel (gated by ALLOW_MOBILE_ACCESS right): shows a branded QR encoding a short-lived OTK deep link (kamocopilot://configure) that signs th...

kamo·3mo ago
Featurekamo-shared-library

Add ALLOW_MOBILE_ACCESS (167) general right for Mobile Copilot

New RoleRightType (serviceType=null → General group) gating the 'Setup Mobile Access' interaction-center tab. RoleRightsSyncService backfills it to all roles on...

Kamo·3mo ago
July 15, 2026
Featurekamo-shared-library

Add anon usage count query for public web-chat quota

Kamo·3mo ago
FeatureMediaService

Mobile push dispatch (FCM data + direct APNs) with presence gate

chat incoming (MediaController), support ticket (SupportNotificationService), SMS/voicemail (VoipStompRelayController), social **************** Presence-gated l...

Kamo·3mo ago
FeatureKlusterServices

Expose AIService /ws/ai-chat via api.* hosts for mobile clients

IngressRoute (priority 100, websecure, ws-upgrade middleware sans compress) routes wss://api.<domain>/ws/ai-chat to kamowsai-service:80 — same pattern as the me...

Kamo·3mo ago
FeatureVOIPService

Accept X-***-Token on REST + signed ?st= stream tokens on audio endpoints

OTKValidationFilter precedence: X-OTK → X-***-Token → ?st= (GET, audio streaming paths only, verified via shared StreamTokenCodec with internal.auth.secret; cla...

Kamo·3mo ago
FeatureMediaService

Accept X-***-Token on REST; slide TTL with per-session timeout

OTKPreAuthFilter resolves X-***-Token when no X-OTK is present (same call MediaService REST without the BFF. KSessionService now slides the Redis TTL with the s...

Kamo·3mo ago
FeatureSecurityService

Device-token SSO **************** stream tokens, X-*** header parity

- DeviceAuthController: durable device credential per (user, device) with rotate-on-exchange + 60s grace; /device/exchange mints a per-org *** via PostAuth*...

Kamo·3mo ago
Featurekamo-shared-library

Device-token + push-registration entities, HMAC stream-token codec

hashed secret, rotation grace, sliding expiry), push_device_registrations (one push destination per device+org+kind), and StreamTokenCodec — short-lived HMAC to...

Kamo·3mo ago
FeatureSecurityService

Cache closed-loan docs across passes; retire on solve/exhaust

The trainer now refines a loan over multiple passes instead of one-and-done: - TrainingDocStore is a PERSISTENT, deterministically-keyed cache (key = hash of...

Kamo·3mo ago
Featurekamo-shared-library

Multi-pass closed-loan training — pass counter + corpus upsert key

The closed-loan trainer now re-reads a loan on successive passes until its extraction reproduces the loan outcome, so: - LeadLosLink.closedLoanPasses drives a p...

Kamo·3mo ago
Featurekamo-shared-library

Status-preserving progress write for the closed-loan trainer

run is RUNNING, without touching status. An operator pause (status → PAUSED) can no longer be clobbered by a full-row save from the pool thread — the guarded up...

Kamo·3mo ago
FeatureSecurityService

Harden closed-loan trainer — concurrency, idempotency, limits

- Concurrency: in-process activeOrgs guard + the DB claim() so this instance never double-walks an org and two replicas can't overlap; a run whose heartbeat...

Kamo·3mo ago
Featurekamo-shared-library

Harden closed-loan trainer — run lock + per-loan idempotency

- ClosedLoanTrainingRun.claim(): atomic conditional UPDATE that takes ownership of a run only when it is not already RUNNING or its heartbeat is stale (prev...

Kamo·3mo ago
Featurekamo-internal

Closed-loan auto-trainer panel on the platform Document AI tab

Top-level owners can run + monitor the MeridianLink closed-loan trainer across every tenant from Settings → Platform → Document AI. Per-org rows show status, lo...

kamo·3mo ago
FeatureSecurityService

Closed-loan auto-trainer + platform control endpoints

A closed loan is ground truth: its MeridianLink metadata is the answer key, its documents are the input. ClosedLoanTrainerService walks each MeridianLink org's ...

Kamo·3mo ago
Featurekamo-shared-library

Org-scoped loan roster query for the closed-loan trainer

**************** gives the trainer every LOS-linked loan for an org+provider, each carrying the externalLoanName it reads status + documents for.

Kamo·3mo ago
Featurekamo-shared-library

Closed-loan auto-trainer foundation (MeridianLink ground truth)

Foundation for training document extraction against funded loans (the answer key): - ClosedLoanTrainingRun entity+repo — per-org run control + live counters - E...

Kamo·3mo ago
FeatureSecurityService

DOC_REJECTED email carries the plain-language reason

Both reject paths now pass **************** to the borrower's rejection email instead of the raw enum literal.

Kamo·3mo ago
Featurekamo-shared-library

Plain-language borrower messages for document rejections

RejectionReasonType was a bare enum (the borrower literally saw "ILLEGIBLE"). Each value now carries a borrowerMessage() remediation string + a messageFor() map...

Kamo·3mo ago
July 14, 2026
Featurekamo-internal

Platform review queue on the Document AI tab

The Document AI tab now hosts the cross-tenant review queue: low-confidence extractions from every lender, lowest-confidence first, with inline confirm/correct/...

kamo·3mo ago
FeatureSecurityService

Platform QC queue + review endpoints (top-level owners)

system-config gains a cross-tenant extraction review queue + confirm/correct/reject, gated to top-level owners — the central labeling surface for the shared mod...

Kamo·3mo ago
Featurekamo-shared-library

Platform-wide QC review (cross-tenant labeling for the shared model)

A document is a document — extraction and the model are platform-level, not per lender. Adds a cross-tenant NEEDS_REVIEW queue + QcReviewService.platformReview ...

Kamo·3mo ago
FeatureSecurityService

Platform extraction config + cross-org corpus/accuracy/export

system-config GET/PUT now carries extractionAutoApplyConfidence + extractionModelId and reports the platform-wide corpus size + per-doc-type accuracy; adds a cr...

Kamo·3mo ago
Featurekamo-internal

Platform "Document AI" configuration tab

Adds a Document AI tab to **************** the auto-apply confidence threshold, the registered fine-tuned model id, the platform-wide training-corpus size + per...

kamo·3mo ago
Featurekamo-shared-library

Platform Document-AI config on SystemConfiguration + cross-org corpus

Adds **************** (default 0.85) + EXTRACTION_MODEL_ID to the platform SystemConfiguration singleton — the platform-wide levers for the QC gate and the regi...

Kamo·3mo ago
Featurekamo-internal

Org-wide "Document QC" steward sub-tab

Adds a Document QC console to the mortgage steward strip (?sub=docqc): the org-wide queue of low-confidence AI extractions grouped by loan, with inline confirm/...

kamo·3mo ago
Featurekamo-shared-library

Org-wide QC queue (employee review portal)

Adds an org-scoped NEEDS_REVIEW query + QcReviewService.orgQueue so employees can work every loan's low-confidence extractions from one portal, not one loan at ...

Kamo·3mo ago
Featurekamo-internal

Steward Document-QC review box on the application detail

Adds a "Document QC" section to the loan detail: the queue of low-confidence AI extractions with confirm / correct / reject per field (each decision trains the ...

kamo·3mo ago
FeatureSecurityService

QC endpoints + confidence-gated extraction + gift/tax reads

- QcController (/api/security/mlos/qc, LOS_VIEW_PIPELINE): review queue, review action (confirm/correct/reject), NDJSON training-data export, per-doc-type a...

Kamo·3mo ago
Featurekamo-shared-library

Confidence-gated QC box + labeled training data + gift/self-employment reconcile

QC engine (Phase 4 core): - VerifiedFact gains first-class EXTRACTION_CONFIDENCE, DOC_TYPE_CODE, QC_STATE columns (QcState: **************** Reconciliation ...

Kamo·3mo ago
FeatureSecurityService

Extract benefit/award income (SSA, pension, child support)

Adds extraction prompts for SSA_AWARD / PENSION / CHILD_SUP (AI reads the gross monthly amount + a label), and stamps the OtherIncomeSource id deterministically...

Kamo·3mo ago
Featurekamo-shared-library

Reconcile otherIncome.* facts into OtherIncome rows

Extends fact reconciliation with an otherIncome.* branch: award/benefit documents (Social Security, pension/retirement, child support) land a real OtherIncome r...

Kamo·3mo ago
FeatureSecurityService

Auto-classify uploads to catch wrong-document uploads

A cheap LIGHT-tier "what is this document?" pass on the first page classifies the upload into a coarse family and compares it to the requirement's asserted type...

Kamo·3mo 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