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 23, 2026
Fixkamo-shared-library

Invoice links keep working after a resend or reminder; a late-sent invoice is not chased the same hour

Every send and reminder minted a new view-online token and replaced the old one, so the link in the first email Harmony received read "no longer available" once...

KamoΒ·1h ago
Featurekamo-shared-library

Seat and add-on license changes mid-period, on a chosen date, prorated

SubscriptionChangeService records a change to a live subscription's seats and add-on licenses effective on any date from today. It previews the exact prorated c...

KamoΒ·16h ago
Featurekamo-shared-library

Track an invoice's pending online card payment

New nullable column **************** plus helpers to list and settle pending sessions idempotently (a payment carrying the same processor reference is never rec...

KamoΒ·18h ago
Featurekamo-shared-library

Negotiated add-on prices and a quote's discount carry into the subscription

Converting a quote now carries: - each add-on's agreed per-license price (when it differs from the catalog's) - the quote's or accepted option's discount, as a ...

KamoΒ·18h ago
Fixkamo-shared-library

The invoice link's token hash never serializes

KamoΒ·20h ago
Featurekamo-shared-library

Quotes convert into subscriptions; tenant orders never comp the seller

- A quote in a SUBSCRIPTION market, or whose accepted rows were filled from the subscription catalog, converts into a SubscriptionOrder (plan, seats from the ...

KamoΒ·20h ago
October 22, 2026
Featurekamo-shared-library

Turn renewal on or off for a live subscription; notes on any order

The console's auto-renew switch sent a field the draft-only order update did not have, so it never saved; and notes failed on any order past draft.

KamoΒ·20h ago
Fixkamo-shared-library

Approving a card order grants paid access too

AUTO_BILL orders waited for a Stripe checkout that subscription invoicing no longer uses; the ledger charges the saved card on each billing day instead.

KamoΒ·21h ago
Featurekamo-shared-library

Card auto-charge bookkeeping on subscription invoices

AUTO_BILL invoices are charged on their billing day once approved and retried every three days, up to four attempts. Each attempt is numbered before it is made ...

KamoΒ·21h ago
Fixkamo-shared-library

Subscription events store JSON states; billing steps run one row per transaction

**************** are jsonb, and every caller wrote a bare status like ACTIVE - an invalid JSON insert that rolled back whatever it was auditing (order activatio...

KamoΒ·21h ago
Featurekamo-shared-library

License-based add-on pricing and a real subscription invoice lifecycle

One rule for add-on quantity (AddOnLicenses): every add-on bills the licenses PURCHASED, like seats - per-user add-ons default to the seat count, storage to the...

KamoΒ·22h ago
Fixkamo-shared-library

Name the organization that owns a subscription catalog row

The catalog update/delete methods take a uid alone, so a caller holding the catalog right in any organization could edit another organization's plans, prices, a...

KamoΒ·23h ago
October 21, 2026
Featurekamo-shared-library

Standing permissions from an approval (Approve and always allow)

A member's own APPROVAL item may now name one tool (tool_name) and record the approval it came from, who granted it and when (item_origin APPROVAL). The resolve...

KamoΒ·2d ago
October 19, 2026
Performancekamo-shared-library

Index member_notifications by (source_type, source_id) for withdrawal across members (IoT close-out F15)

The withdraw-by-source read (findBySourceTypeAndSourceId) and the IoT alarm's withdraw-by-prefix (StartingWith -> LIKE 'x%') had only the member-led index, so b...

KamoΒ·4d ago
Testkamo-shared-library

AiAutonomyModeTest pins CP07's RELEASE_PROPOSAL draft kind, and no @Immutable entity may carry a database-generated value

- **************** was red on main since KamoCollab CP07 Task 5 (8bd0f67c) appended **************** (spec D25, a disclosure_request's approval) without updat...

KamoΒ·4d ago
Fixkamo-shared-library

A dat's object key also asks the inbound MMS parts that hold it (SITP MMS)

VOIPService now keeps the pictures and files people text in (VOIP_MESSAGE_ATTACHMENT) through storeContentAddressed, with no Img row. storageExtension found a d...

KamoΒ·4d ago
Featurekamo-shared-library

GodPassesRightChecks β€” god eligibility alone counts only in the platform org (IoT R7 round 3)

Owner rule (2026-10-18): outside the platform organization god acts only through break-glass. **************** an open window always passes a tenant-right check...

KamoΒ·4d ago
Featurekamo-shared-library

Index loan_files.loan_transaction_id on LoanFile

The deal -> loans lookup **************** deal status, pipeline summary, and the retireIfEmpty check after an application is deleted) was a sequential scan. The...

KamoΒ·4d ago
Featurekamo-shared-library

GodWindows finds a member's open break-glass window among their sessions (IoT R7)

Pure (no stereotype, no Redis client): the caller reads ***UIDX<userId> and hands the sessions in. A window counts only in the member's own session (not imperso...

KamoΒ·4d ago
Fixkamo-shared-library

A god-mode window is open only until its stamped end (SessionPlatformFacts)

godModeActive() now also needs godModeExpiresAt (epoch millis, number or string) to be after now. SecurityService masks an elapsed window only for its own gates...

KamoΒ·4d ago
October 18, 2026
Fixkamo-shared-library

Clinical audit rows keep purpose/basis/patient; updated_at stamped on every save (SITP TP23FU)

PhiAccessRecorder stamped occurredAt by rebuilding each event from a field list written before the clinical columns existed, and no caller sets occurredAt, so e...

KamoΒ·4d ago
Fixkamo-shared-library

Deleting a mortgage application no longer 500s, and a received one is kept (SITP TP21FU)

DELETE **************** failed for every application: AppMortgageService.delete removed the borrowers through the JPA cascade while borrower_declarations / borr...

KamoΒ·4d 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Β·4d 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
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
Featurekamo-shared-library

SITP TP02 rights β€” MANAGE_ANALYTICS (440), VIEW_ORG_BILLING (441), MANAGE_ORG_BILLING (442)

MANAGE_ANALYTICS: Analytics signed every caller in as one shared analytics administrator, so VIEW_ANALYTICS let anyone create, edit and delete every tracked web...

KamoΒ·5d ago
Featurekamo-shared-library

SITP TP01 rights for formerly session-only endpoints (410-418)

Nine rights in the TP01 block for endpoints that answered any signed-in member of the organization: - MANAGE_PRODUCTS, MANAGE_INVENTORY, MANAGE_RETAIL_CUSTOMER...

KamoΒ·5d ago
Featurekamo-shared-library

An SI never signs, prescribes, orders, immunizes, breaks the glass, merges charts or bulk-exports patients

SITP TP00, owner decision 2026-10-18: in Patient Records an SI drafts only (and may post payments behind approval). Nine EHR rights join AiRightsFloor.NEVER_GRA...

KamoΒ·5d ago
Fixkamo-shared-library

IotConnectionCheck is append-only without @Immutable (every link failed with a 500)

Hibernate 6.5 reads the database-generated checked_at back after the INSERT and then sets a lock mode on the entry; an immutable entry refuses it **************...

KamoΒ·5d ago
Featurekamo-shared-library

KAMO_SIMULATOR, the 22nd provider type (test-only; SP14)

Appended last; the client catalogue JSON keeps the 21 program types (@kamo/iot-core is unchanged).

KamoΒ·5d ago
Featurekamo-shared-library

IoT Alarm Response and IoT Device Availability reports

KamoΒ·5d ago
Featurekamo-shared-library

IoT Activity and IoT Command Audit reports

KamoΒ·5d ago
Featurekamo-shared-library

SP13 availability calculator and vendor-retention windows

KamoΒ·5d ago
Featurekamo-shared-library

SP13 message template and value text

KamoΒ·5d ago
Featurekamo-shared-library

SP13 trade map, priority map and diagnostics policy

KamoΒ·5d ago
Featurekamo-shared-library

On-device vocabulary and iot_on_device_links entity (SP10)

The link entity keeps only the SHA-256 of the phone's link secret, and that hash is @JsonIgnore so it never reaches a response or an event.

KamoΒ·5d ago
Featurekamo-shared-library

OPERATE_DEVICE and OPERATE_SECURITY_DEVICE charter classes (SP11-D2)

IoT SP11 (master Β§6.14, Β§10 SP11-D2): physical actions through the Tool Plane's iot_ pack are charter-approved per class. AiActionClass appends OPERATE_DEVICE (...

KamoΒ·5d ago
Fixkamo-shared-library

Keep hook-token and share-token hashes out of JSON; the OAuth secret prefix is a label

**************** was red on main: **************** and previousHookTokenHash, **************** and previousHookTokenHash, and IotShare.tokenHash had no @JsonIgn...

KamoΒ·5d ago
Featurekamo-shared-library

**************** and **************** (SP04 Tasks 21-22)

The column exists in production (SP04 DDL, default TRUE).

KamoΒ·5d ago
Featurekamo-shared-library

Sharing entities and repositories

KamoΒ·5d ago
Featurekamo-shared-library

Iot.alarm_notice email template

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