Live Change Log

See what we're building, in real-time. Every feature, fix, and improvement shipped across the platform.

17,988
Total Changes
4,648
Features
4,558
Fixes
32
Projects
Filter by project
All Projects17,988AIService112APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService386InitializerService302KBService74KlusterServices547MCPGatewayService43MediaService462RAGService61SecurityService1,529TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,600kamo-login319kamo-marketing588kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,328kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI523Chore670Docs231Feature4,648Fix4,558Other6,781Performance136Refactor274Revert23Style48Test71Upgrade1
August 26, 2026
Refactorkamo-internal

Rebuild the console on the house design language

The first pass was wrong and it was wrong in a way that should have been obvious before a line was written: I built Tailwind divs, MUI Tabs and hardcoded rgba c...

kamo·2w ago
August 25, 2026
Featurekamo-internal

Availability for presenters only, and a way to understand it

Three things, all about the same layer. WHO SEES IT. The availability toggle was shown to everybody. Declaring hours is only meaningful for somebody a webinar ...

kamo·2w ago
Featurekamo-internal

The new organization opens in its own tab

Creating one signed THIS tab into it, so a member who created an organization on someone's behalf was silently moved out of the one they were working in — and h...

kamo·2w ago
Fixkamo-internal

Apply the branding the wizard just collected

Colours, logos and backgrounds chosen while creating an organization were not reaching it. The member opened their new workspace on default branding and had to ...

kamo·2w ago
Featurekamo-internal

Write, sign and amend a visit note

The composer changes shape once a note is signed, and that is the whole design. Before signature it is a text area that autosaves. After signature the text area...

kamo·2w ago
Featurekamo-internal

Convert any logo to vector, and say what the scan found per step

Three things, all reported from the wizard itself. THE COMPACT LOGO NO LONGER DEMANDS AN SVG. The slot can only store a vector -- the backend writes it to a fi...

kamo·2w ago
Featurekamo-internal

Workweek Days, Weekend Days and Every Day in the Day field

Declaring the same hours five times over was the only way to say 'I present on weekdays'. The Day field now offers the three groups above the individual days. ...

kamo·2w ago
Docskamo-internal

Commit the Dispatch/Service Work program design and its evidence corpus

Both program specs and all 56 research files were untracked and existed only on one disk, while HANDOFF.md tells the next session to read them first. Also reco...

kamo·2w ago
Docskamo-internal

Plan webhook hardening and idempotency across BillingService, shared-library and APIService

Ten tasks, TDD throughout, with the severity restated to what was actually verified: the Stripe fail-open is latent (the secret is present in prod, 38 bytes) an...

kamo·2w ago
Featurekamo-internal

A healthcare market's commerce surface is its revenue cycle

The other verticals show orders and agreements because that is where their money is. A medical practice's money is in claims — and specifically in the ones noth...

kamo·2w ago
Featurekamo-internal

Give bugs and enhancements their own support section

The two report entries were sitting under "Online Support" beside Contact Support and View Active Tickets, which is a different errand: those two are asking a p...

kamo·2w ago
Featurekamo-internal

Member-level availability, with sub-tabs and a calendar layer

**************** now has two sub-tabs. "Webinar Types" is what an administrator configures — the offering, its presenters, its reminders. "Scheduled Availabilit...

kamo·2w ago
Featurekamo-internal

The Patient Records surface — day, safety, search and chart

A nav entry, four panels and a chart. The design decisions worth reading are the ones where the screen is a control rather than a view. The chart's allergy ban...

kamo·2w ago
Otherkamo-internal

Tighten the screenshot drop hint

"Drag images here, paste from your clipboard, or click to browse" becomes "Drop image, paste from clipboard, or click to browse" — the three things you can do, ...

kamo·2w ago
Fixkamo-internal

Close the dead space under the lead grid's pager

The pager sits at the bottom of the grid Card's CardContent, and CardContent ships `&:last-child { padding-bottom: 24px }` of its own. That selector carries a c...

kamo·2w ago
Featurekamo-internal

Fit the report form in the window without scrolling

The form was about 120px taller than the 460x690 window's content area, so every new report opened on a scrollbar. Six changes, each of which also reads better ...

kamo·2w ago
Docskamo-internal

Implementation plan for quiet hexheads and the notification spine

33 tasks across five phases whose order is load-bearing: the schema must be run before any service maps a column, the library published before the services buil...

kamo·2w ago
Fixkamo-internal

Say plainly what the domain field is for

The hint explained the field in terms of the hosts it produces — internal.<domain> for the workspace, login.<domain> for sign-in — which means nothing to somebo...

kamo·2w ago
Featurekamo-internal

A domain is no longer required to create an org

Requiring it here was the wizard's half of the rule this effort removed: a customer could not finish creating an org without naming a domain, and then could not...

kamo·2w ago
Docskamo-internal

Design for quiet hexheads and the per-surface notification spine

A minimized chat window re-opens itself on every arriving message. The hexhead should absorb it instead — count, thump, stay put — and only a conversation with ...

kamo·2w ago
Fixkamo-internal

Close five gaps in the website brand suggestions

Five things found reading the first cut back, all of them real. The "Added below" badge lied. It tracked only which card had been clicked, so hitting Remove on...

kamo·2w ago
Featurekamo-internal

Report form becomes a tool window; filter and status changes

REPORT FORM -> POPUP TOOL WINDOW. A modal was the wrong shape for the job. Reporting a defect means describing something you were just looking at, and a modal i...

kamo·2w ago
Featurekamo-internal

Suggest logo, colours and backgrounds from the member's site

The Basics step already asks for a website. This reads it and offers what it finds on the three branding steps that follow, as suggestions the member can take, ...

kamo·2w ago
Fixkamo-internal

Enter as System Member no longer needs your own membership

The button was disabled by canEnterOrg, which asks whether the VIEWER holds a usable membership — so it was greyed out for exactly the orgs it exists to reach, ...

kamo·2w ago
Featurekamo-internal

File a bug or an enhancement

The type leads the form, because it changes what the rest of it is asking: 'What happened?' for a defect, 'What would you like to see?' for a request. Two cards...

kamo·2w ago
Docskamo-internal

Plan the website brand scan implementation

kamo·2w ago
Docskamo-internal

Design the website brand scan

Where the /network/create Website field turns into logo, colour and background suggestions on the three branding steps. Records two things that are easy to get...

kamo·2w ago
Featurekamo-internal

Remind the dispatched session to push its work

Matches the server copy in SystemBugAiDispatchService, which is what the dialog actually shows once the preflight lands — this one covers the moment before it. ...

kamo·2w ago
Featurekamo-internal

Tell people a web alias is taken while they are typing it

The create wizard is eleven steps long and the alias was only validated for FORMAT locally — whether anyone already held it was discovered when the form was sub...

kamo·2w ago
Docskamo-internal

Correct what the KamoDesktop SSO token's lifetime actually is

The comment called the link "short-lived, single-use" and "5-minute", which is what caused the token expiry to be set as if it were a URL redemption window. It ...

kamo·2w ago
Featurekamo-internal

Add the System Bugs tab

Members report defects in the platform with screenshots and the sites they the dev machine. A tenant sees only its own organization's bugs and the platform org...

kamo·2w ago
Featurekamo-internal

Show a member's photo on the scoreboard, not their initials

The face now comes from the same directory index every other member list on the platform reads (useMemberProfiles), so a person's picture on the scoreboard is i...

kamo·2w ago
Featurekamo-internal

Show Google's OAuth callback URL on its registration card

An operator filling in the Google Workspace registration had nothing telling them what to put in the Google Cloud console's Authorized redirect URIs, and the Re...

kamo·2w ago
Docskamo-internal

Plan the System Bugs build across six repos

Screenshots turn out to need no table: an Img row already carries an assoc type plus an assoc object id, and imgs has no CHECK constraint on assoc_id, so append...

kamo·2w ago
Featurekamo-internal

Manage a custom domain from Company settings

A domain used to be the doorway into an organization: DNS had to be configured before anyone could sign in at all, which is why /setup/dns was reached from the ...

kamo·2w ago
Docskamo-internal

Design the System Bugs tab and its AI dispatch path

vscode:// URI handler opens a conversation in the window sage already has open, and coderProcessWrapper carries model and effort, which the URI cannot. Also rec...

kamo·2w ago
Docskamo-internal

Record SP1 as complete, and the six things the plan got wrong

Keeps the reasoning rather than just ticking boxes — the top-level-org skip and the PLANNING-stage regression are both the kind of mistake that would be made ag...

kamo·2w ago
Featurekamo-internal

Render the app tree, and confirm what a parent switch-off takes

Children now sit under their parent in the Apps & Features list, each with its own switch. Nesting is expressed by ORDER plus an indent rather than a nested con...

kamo·2w ago
August 24, 2026
Featurekamo-internal

The Affiliate Sales Scoreboard widget

One grid column wide and two rows tall: the ten people in the organisation bringing in the most through their tracking links, over today, this month, this year ...

kamo·2w ago
Stylekamo-internal

Restore CRLF on the two theme files

Both files are uniformly CRLF and my previous commit rewrote them through Python in text mode, which reflowed every line: Theme.tsx showed 237 changed lines and...

kamo·2w ago
Fixkamo-internal

Paint the branding of the org in the tab, not the host

getThemePath() derived the theme base from window.location.hostname. That answered the right question while every organization had a hostname of its own — and f...

kamo·2w ago
Fixkamo-internal

Clear the cloned session in the enter-as tab

Entering an org opens a tab with window.open('', '_blank') and points it at /validate. That was cross-origin until now, so nothing was shared. It is same-origin...

kamo·2w ago
Chorekamo-internal

Regenerate the ServiceType mirrors after the stage correction

The five pre-existing commerce verticals are COMPLETED, EHR is PLANNING.

kamo·2w ago
Fixkamo-internal

Read the session from the tab, not the shared cookie jar

46 client modules read the *** id out of document.cookie and sent it as X-***-Token. sessionStorage is per-TAB; a cookie is per-ORIGIN. While every organization...

kamo·2w ago
Fixkamo-internal

The scheduled-support presenter picker offered nobody

The Presenters tab dropdown was empty for every organization, and always had been. GET **************** answers with { teamMembers, total }; the tab read data.m...

kamo·2w ago
Featurekamo-internal

Mirror the six commerce child apps, and stop the mirrors drifting

Both TS mirrors are now GENERATED from ServiceType.java rather than hand-maintained. They had drifted badly from Java and from each other: stale "RAG integratio...

kamo·2w ago
Docskamo-internal

Task 7 needed no new migration, and top-level orgs must be included

The app-tree backfill turned out to already exist as **************** restricted to isGated() verticals. Dropping that restriction is the whole change. Records...

kamo·2w ago
Featurekamo-internal

One scrollbar, three times as wide, down every conversation

The bar beside the messages was 8px in the member chat and SMS, 6px in support tickets and social, and in the AI chat it was nothing at all: that list declared ...

kamo·2w ago
Fixkamo-internal

Give /api/org/current the domain the client requires

internal.kamocrm.com failed to render with "Invalid organization data: missing 'id' or 'domain'". Organization.fromJSON refuses a record without a domain, and t...

kamo·2w ago
Fixkamo-internal

Move jump-to-newest in with the toolbar's other actions

Search now owns the whole left track of the toolbar, because the empty part of that track is exactly the room the field opens into. The scroll-to-bottom control...

kamo·2w ago

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing