KamoCRM

Live Change Log

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

17,374
Total Changes
5,891
Features
5,258
Fixes
30
Projects
Filter by project
All Projects17,374AIService242APIService174BillingService157ConversionService110DaemonService137DocsService223ESigService91EmailService568InitializerService329KBService151KlusterServices738MCPGatewayService235MediaService592RAGService79SecurityService1,822TranslateService62VOIPService248VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,321kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,631kamo-signer-monorepo56kamolos114
Filter by type
All TypesBuild16CI523Chore773Docs3,252Feature5,891Fix5,258Other993Performance165Refactor278Revert23Style42Test159Upgrade1
October 18, 2026
FixMCPGatewayService

Mlos_update_section keeps what the call does not give (SITP TP21 live smoke)

The loan, property, declarations, military and row saves replace their whole section in SecurityService, so a partial edit would have cleared the fields it left...

Kamo·5d ago
FixKlusterServices

Kamo_app is a NOLOGIN group role; services log in as kamo_app_202610

The YugabyteDB application password was exposed (com.zaxxer.hikari DEBUG in ten services' logs, and securityservice's committed diagnose-output.txt), so it was ...

Kamo·5d ago
FixSecurityService

Starting a clinical note no longer fails on updated_at (SITP TP23 live smoke)

ClinicalBaseEntity.updated_at is NOT NULL and defaulted by the database on INSERT only (insertable = false), so a note just inserted holds null in memory and th...

Kamo·5d ago
Featurekamo-shared-library

The command audit and the activity say when god acted, and under which break-glass window (R7)

Owner 2026-10-18 (IoT master section 10 R7): god, the platform owner, has total control of IoT devices, and every god action outside the platform org is audited...

Kamo·5d ago
FeatureSecurityService

Each break-glass window has its own id, so other services can audit under it (IoT R7)

A god-mode window now carries godModeSessionId (a random UUID) in ***: minted when it opens, cleared when it closes, and added to a window that was opened befor...

Kamo·5d ago
FeatureMCPGatewayService

Mortgage loan files for SIs: pipeline, the application, readiness, conditions, documents, disclosures, pricing and locks, AUS, vendor orders, consent and the edits (SITP TP21)

43 mlos_* tools (MlosPack) through SecurityService's loan-officer door **************** SITP TP21 securityservice@27e06020) as the SI member, never the MLOS ser...

Kamo·5d ago
FixSecurityService

Booking an appointment no longer fails on an untyped null in the conflict check (SITP TP23 live smoke)

findConflicts' (:excludeId IS NULL OR a.uid <> :excludeId) with a null UUID is an untyped parameter on Postgres/Yugabyte ('could not determine data type of para...

Kamo·5d ago
FeatureMCPGatewayService

Patient Records for SIs: the schedule, the front desk, chart and FHIR reads, note drafts and the revenue cycle, with payment posting (SITP TP23)

18 ehr_* tools (EhrPack) over SecurityService's EHR controllers as the SI member; each names the right SecurityService checks there, and anything inside one cha...

Kamo·5d ago
ChoreKlusterServices

Probe only www.kamocrm.com; the platform's surfaces are on kamouniverse.com

kamocrm.com is a marketing site only (owner 2026-10-18). The blackbox prober is now deployed, and apply.kamocrm.com was already failing its probe; the kamocrm.c...

Kamo·5d ago
FeatureSecurityService

The loan-officer door reaches the MLOS engines, writes take write rights, and an SI clears the MLOS walls (SITP TP21)

New relays on /api/security/mortgage-apps (MortgageLoanDeskController, @RequireRight, the caller's org's loan only): - GET /{uid}/qualification, /{uid}/engine-l...

Kamo·5d ago
FixMediaService

The Canva routes take the right of the screen that calls them, not just a session (SITP TP23)

CanvaController checked only that a member was signed in: anyone in the organization could drive its Canva round trip (create, list, export, import, brand templ...

Kamo·5d ago
FixSecurityService

A booking or registration is always a new record in the caller's practice; SI note drafts say so; billing reads write the PHI trail (SITP TP23)

- SchedulingService.book: the body is the entity, so a uid in it made save() a merge onto that appointment in ANY practice (and moved it into the caller's); s...

Kamo·5d ago
FixMCPGatewayService

A loan record's dateUpdated is a UTC instant too (SITP TP22 live smoke)

The live smoke answered loans_get_state_rule and loans_history with dateCreated as a UTC instant and dateUpdated as KamoLOS's offset-less text; both are now ins...

Kamo·5d ago
FixMCPGatewayService

Reports_save_view does not answer empty settings for a view it just saved (SITP TP16 live smoke)

SecurityService answers a save without the view's stored request (the list carries it), so the tool said parameters {} for a view saved with parameters. A view ...

Kamo·5d ago
FixKlusterServices

Never seed devices. anywhere under kamocrm.com

ccd50be skipped the devices sibling only when the parent WAS kamocrm.com, so a child-org web alias host **************** seen live) still queued ***************...

Kamo·5d ago
FeatureMCPGatewayService

Support tickets, system bugs, marketing materials, Growth Hub, tracking codes and social pages for SIs (SITP TP15)

54 new SI tools, each checked by the same rights at the gateway and at MediaService (DocsService for the materials list): - support_*: list (with the queue's co...

Kamo·5d ago
FeatureMCPGatewayService

IoT field-service reads and alarm handling for SIs: sites, a customer's and a work order's devices, history, commands, an alarm, the summary, acknowledge several, shelve, unshelve, note (SITP TP19)

Eleven iot_* tools in the IoT pack, by its own conventions: offered per caller from the manifest (IotTools.RIGHT, the view's withholding reasons), every device,...

Kamo·5d ago
FeatureMediaService

A ticket can be read without joining its conversation (?join=false) (SITP TP15)

GET /api/support/tickets/{id} puts an entitled agent who is not yet in the ticket's conversation into it, as opening the window should. An SI reading the queue ...

Kamo·5d ago
FeatureMCPGatewayService

Personal loans for SIs: the book, payments, payoff, history, statements, fees, offers, promises to pay and the money acts (SITP TP22)

27 loans_* tools (LoansPack) straight to KamoLOS through its one-time-key door (SITP TP02, new downstream LOS, X-OTK) as the SI member; KamoLOS checks the PLOS ...

Kamo·5d ago
Fixkamolos

A broken servicing rule answers 409 with its own words, not a 500 (SITP TP22)

The services refuse with plain exceptions (offer must be DRAFT to send, draw would exceed credit limit, reason is required, an unknown id's orElseThrow), which ...

Kamo·5d ago
FeatureMCPGatewayService

E-signatures for SIs: read a template, track sent documents and a record's requests, send, remind, resend, void (SITP TP19)

Eight esign_* tools (EsignPack) through a new ESIG(OTK) door to ESigService's staff API, as the SI member; ESigService checks every right itself (SITP TP02) and...

Kamo·5d ago
FixKlusterServices

The proxy settings live in HA's storage, promoted, not in YAML

Since 2026.10, Home Assistant migrates a YAML `http:` to its storage once, as a PENDING config. It reverts that config and restarts unless an admin promotes it ...

Kamo·5d ago
FeatureMCPGatewayService

An SI prepares the draft commission payout batch, never sends it (SITP TP18)

commissions_draft_batch (open the DRAFT batch, or find the open one) and commissions_edit_draft_line (ADD / UPDATE / REMOVE a draft line; UPDATE restates the wh...

Kamo·5d ago
FeatureKlusterServices

A Home Assistant lab instance at home.kamouniverse.com

One Home Assistant 2026.10.2 (digest-pinned) for IoT testing of Kamo's HOME_ASSISTANT connector and for the owner's own use under the HA account sajon. The demo...

Kamo·5d ago
Otherkamo-marketing

The Alexa skill is named KamoUniverse (SP09)

Kamo·5d ago
Featurekamolos

A loan's assessed fees can be read, so a fee can be named to waive it (SITP TP22)

GET /api/los/fees/by-loan/{loanId}: the loan's fees (late, NSF, annual), newest first, waived or not; PLOS_VIEW_PIPELINE (LosRightsFilter, as every read) and th...

Kamo·5d ago
Featurekamo-internal

Mirror PREPARE_COMMISSION_PAYOUTS (570) under VIEW_ORG_FINANCES (SITP TP18)

Composing the draft commission payout batch without sending it; display string matches RoleRightType.java exactly. Listed with the other finance rights under Ac...

Kamo·5d ago
FeatureSecurityService

PREPARE_COMMISSION_PAYOUTS composes the draft payout batch, seeded to every finance manager (SITP TP18)

Opening the draft batch and adding, changing or removing its lines now take MANAGE_ORG_FINANCES or PREPARE_COMMISSION_PAYOUTS (the owner always); sending a batc...

Kamo·5d ago
Docskamo-internal

The share host alias is devices (master §10 R6) [skip ci]

Owner 2026-10-18: "IoT" is a technical term, so the kamo-iot host is devices.<org domain> and the platform host devices.kamouniverse.com only; kamocrm.com is a ...

Kamo·5d ago
FeatureMCPGatewayService

The organization's web analytics for SIs: websites, traffic, top pages and sources (SITP TP16)

analytics_list_websites, analytics_website_stats (views, visitors, visits, bounces, time on site, the period before, who is on now), analytics_website_metrics (...

Kamo·5d ago
Fixkamolos

A loan offer is drafted only on the organization's own product and borrower, the aging report counts only its loans, and staff acts are the organization's (SITP TP22)

- POST /api/los/offers: the product must be the caller's organization's and the borrower a member of it (or of a child organization); a body naming another te...

Kamo·5d ago
FixESigService

A template above the caller's clearance cannot be read or sent, and a staff employment offer takes an HR right (SITP TP19)

The envelope door already hid an envelope whose template sits above the session's clearance and an EMPLOYMENT_OFFER envelope from a member without an HR right, ...

Kamo·5d ago
Featurekamo-internal

The studio's required devices card

The DNS studio lists "devices" as a required core record with the Router icon, so every organization with its own domain is asked for devices.<domain>: the host...

Kamo·5d ago
ChoreKlusterServices

Set the Google Trust Services EAB key id (IoT SP09 B1)

The gts-prod ClusterIssuer's external account binding names key id **************** from Google Cloud Public CA (project kamocrm-1755458510147). The HMAC key is...

Kamo·5d ago
Featurekamo-internal

Reserve the devices alias, not iot

The kamo-iot share pages are served at devices.<domain> (owner 2026-10-18: the host is customer-facing, and "IoT" is a technical term), so the new-organization ...

Kamo·5d ago
TestMCPGatewayService

The tool lists gain exactly SITP TP16's four saved-view tools and reports_run's viewId

Snapshots regenerated on top of TP17 and TP18: reports_run changes (viewId); every other change is a new reports_*_view tool.

Kamo·5d ago
FeatureMCPGatewayService

Saved report views for SIs: list, save, delete, share, and reports_run by viewId (SITP TP16)

reports_list_views, reports_save_view (create or change; a change keeps what it does not name), reports_delete_view, reports_share_view (SHARE_REPORTS; the endp...

Kamo·5d ago
Featurekamo-shared-library

The kamo-iot host label is devices, not iot

DomainAliasType.IOT keeps its internal name but now carries the customer-facing label "devices" (owner 2026-10-18: "iot" is a technical term; URLs say devices)....

Kamo·5d ago
FeatureSecurityService

Devices is a standard alias

Required like careers and computers: the record is what makes shared device access open anywhere. The kamo-iot share pages are served at devices.<domain>; the l...

Kamo·5d ago
FeatureSecurityService

Reserve the devices alias, not iot

The kamo-iot share pages are served at devices.<domain> (owner 2026-10-18: "iot" is a technical term; anything customer-facing says devices). OrgAliasPolicy res...

Kamo·5d ago
Featurekamo-shared-library

PREPARE_COMMISSION_PAYOUTS (570), compose a draft payout batch without sending it (SITP TP18)

MANAGE_ORG_FINANCES composes and sends a commission payout batch, and an SI can never hold it (AiRightsFloor), so a finance SI could prepare nothing for a perso...

Kamo·5d ago
FeatureMCPGatewayService

An SI reads its own and its managed members' work, and cancels its own queued sends (SITP TP20)

Owner decision 2 (2026-10-18). Eleven AI_ONLY tools, each calling the owning service as the SI itself (its own session; new KamoService.KAMOAI door), which scop...

Kamo·5d ago
FeatureMCPGatewayService

Plans & Billing for SIs: plan, catalogue, accounts, seats, invoices, usage, provider status, seat assign and remove (SITP TP18)

Nine billing_* tools (BillingPack) through SecurityService's billing door (SITP TP02's BillingRelayController; TP18 added the licensee step and the usage reads)...

Kamo·5d ago
FeatureKlusterServices

The share host is devices.<domain>, and nothing on kamocrm.com

Owner 2026-10-18: "iot" is a technical term, so the customer-facing host alias for kamo-iot is `devices`, and kamocrm.com is a marketing site only. auto-cert do...

Kamo·5d ago
FeatureKBService

An SI reads the checklists of a member it manages (SITP TP20)

Owner decision 2 (2026-10-18): an SI may see the work of the members it manages, SIs and people alike, read-only. GET **************** now answers an SI session...

Kamo·5d ago
FeatureMCPGatewayService

Timecards, leave, breaks and attendance, payroll reads and commission reads for SIs (SITP TP18)

25 tools, so an SI does in HR -> Attendance, Payroll and My Commissions what a person does, within its rights, through SecurityService's TimecardController, Pay...

Kamo·5d ago
FeatureSecurityService

The billing door makes a member a licensee before a seat, and reads usage for the org billing rights (SITP TP18)

BillingService's LicenseService.assign refuses anyone who is not already a licensee of the subscription, so the relay's seat assign alone could not seat a new m...

Kamo·5d 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