Live Change Log

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

17,931
Total Changes
4,612
Features
4,543
Fixes
32
Projects
Filter by project
All Projects17,931AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService373InitializerService300KBService74KlusterServices546MCPGatewayService43MediaService461RAGService61SecurityService1,522TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,579kamo-login319kamo-marketing584kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,322kamo-signer-monorepo50kamolos102
Filter by type
All TypesBuild24CI523Chore670Docs226Feature4,612Fix4,543Other6,781Performance136Refactor274Revert23Style48Test70Upgrade1
August 20, 2026
Featurekamo-marketing

Show a still of the reel instead of a grey pulse

Adds public/img/hero-still.webp — 1280x720, matching the aperture's 16/9 exactly — and makes it what the hero shows until someone presses play. This also fixes...

Kamo·3w ago
Featurekamo-internal

Build the shared link as ?discount=<uuid>

buildTrackingLink emits the new parameter, and the link strip highlights the ?discount= segment it used to highlight as ?mrt=. The token itself is now an opaque...

kamo·3w ago
Featurekamo-register

Read the discount cookies and send the discount* fields

Follows the marketing site: kdsc_vid / kdsc_src, with ?discount= as the query-param fallback for a visitor who lands on the register form with the link still in...

Kamo·3w ago
Featurekamo-marketing

The referral parameter is ?discount= and the token is a UUID

The link a member shares is **************** It used to be ?mrt=<memberId>.<iteration>, which put a real member id in every shared URL and let anyone enumerate ...

Kamo·3w ago
FeatureSecurityService

Accept the discount* signup fields, keep the mrt* ones working

The register site now sends discountVisitorGuid / discountCode. Both names are read, new first, because the two services deploy independently — for the minutes ...

Kamo·3w ago
FeatureMediaService

Mint an opaque UUID token, in one insert

createCode generates the token itself, so there is nothing to read first and nothing for two tabs to collide over. That removes the whole apparatus the old sequ...

Kamo·3w ago
Featurekamo-shared-library

Make the shared token an opaque UUID

The public token was <memberId>.<iteration>, which was wrong on two counts. It published a real member id in every link anyone shared — on a business card, in a...

Kamo·3w ago
FeatureInitializerService

Retire ****************

Tracking codes are shared as ?discount=<uuid> now. The old <memberId>.<n> token published a real member id in every shared link and made the space walkable — on...

Kamo·3w ago
Featurekamo-marketing

Serve a real per-request CSP nonce with strict-dynamic

Clears both remaining High findings on script-src: the 'unsafe-inline' one and "host allowlists can frequently be bypassed". Only a nonce with 'strict-dynamic'...

Kamo·3w ago
Featurekamo-marketing

Enforce Trusted Types, path-scope the script allowlist

Clears the "No Content-Security-Policy header with Trusted Types directive found" finding by moving require-trusted-types-for into the enforced policy. This is...

Kamo·3w ago
Featurekamo-internal

Show when a visitor's credit moved to another link

The timeline gains ATTRIBUTION_MOVED, in the warn tone — not a conversion and not a failure, but the moment this visitor stopped being this member's to earn fro...

kamo·3w ago
FeatureMediaService

Move credit on a newer link, and record the moment it moves

The ingest worker now calls reattributeWhileAnonymous after the traffic bumps. The repository method carries the entire rule, so there is nothing to check here ...

Kamo·3w ago
Featurekamo-shared-library

Credit the newest link until an account exists, then freeze it

Attribution was frozen at first touch, which gets the common case wrong: someone who follows member A's link in March and member B's in June, and only then sign...

Kamo·3w ago
Featurekamo-internal

Move Windows Desktop and Master Machine into Platform Admins

Both are Guacamole targets that share one credential between everybody, which makes them operator tooling rather than a member's own workspace. They were top-ba...

kamo·3w ago
Featurekamo-marketing

CSP and COOP enforced; Trusted Types report-only

Re-lands the security headers after I took the site down with them, minus the one directive that did it, plus a build guard so it cannot happen again. WHAT BRO...

Kamo·3w ago
Featurekamo-marketing

Enforce a CSP, COOP and Trusted Types

Adds the three headers the Trust and Safety audit asked for, plus Referrer-Policy and Permissions-Policy. Every origin in the policy was taken from what the sit...

Kamo·3w ago
Featurekamo-internal

Build out Tracking Codes in place of the referral placeholder

/marketing/discounts was a ComingSoon stub; it is now /marketing/tracking, a working workspace, with the old path kept as a client redirect so existing bookmark...

kamo·3w ago
Featurekamo-register

Carry the marketing referral into the signup

The marketing site tags a referred visitor with kmrt_vid and kmrt_src on the shared apex, so register.<apex> can read them; handleFinish sends both in the reque...

Kamo·3w ago
Featurekamo-marketing

Honour a partner link and report what it brought

A visitor who follows https://www.<apex>?mrt=<code> gets two first-party cookies from the edge middleware — an opaque GUID that lasts two years and the code its...

Kamo·3w ago
FeatureSecurityService

Publish signup and org-created for tracked visitors

The register site now forwards the marketing visitor GUID and tracking code in the request body — not a header, because the proxy strips Cookie and the ingress ...

Kamo·3w ago
FeatureBillingService

Publish the paid conversion for tracked organizations

Both paths that stamp BillingSourceType.PAID now publish marketing.visitor.paid, because hooking only one silently misses half the traffic — AccountSubscription...

Kamo·3w ago
FeatureAPIService

Forward the tracking beacon to MediaService

Clones forwardPublicWebinar rather than the generic forward(): that method prints every URI, header map and body length to stdout with no level, and a visitor b...

Kamo·3w ago
FeatureMediaService

Serve the tracking-codes tab and ingest the visitor beacon

MediaService already backs the other marketing tabs, so it takes both halves of tracking codes: the authenticated CRUD and stats surface at /api/media/marketing...

Kamo·3w ago
Featurekamo-shared-library

Model tracking codes, their visitors and the visits they bring

A member mints a code, shares **************** and the six totals on the Tracking Codes tab answer what that link actually did: unique visitors, visits, page re...

Kamo·3w ago
FeatureKlusterServices

Provision MARKETING_EVENTS for visitor conversion signals

Marketing tracking codes credit a partner for the signups, organizations and paid accounts their link produced, and those three moments happen in services that ...

Kamo·3w ago
August 19, 2026
Featurekamo-internal

Shorten the empty-description hint

The Description column shows {No Description} in place of "No description provided..". The string was hardcoded English, so it now comes from the dictionary — w...

kamo·3w ago
Featurekamo-internal

Reorder and retitle the document tabs

The strip now reads Originals | Modify (n) | Modified | Binders | Common | Uploads, and Common trades the gear icon for a library one now that it no longer says...

kamo·3w ago
Featurekamo-internal

Rebuild the knowledge base as a console

The four knowledge-base screens were the last in the app still wearing the old look, and three of them stated things that were not true. /kb showed "Pinned Art...

kamo·3w ago
FeatureSecurityService

Enforce is_fake, and close the holes that let an unattended signup in

Two halves of one incident. An account registered, verified an address at a disposable provider, took an auto-login session and created five organizations in th...

Kamo·3w ago
FeatureKBService

Serve what the knowledge console reads, and fix what it never could

Four endpoints the rebuilt knowledge base needs, and three facts the API was unable to state. GET /api/kb/pins returned a Page of pin ROWS, and KbArticlePin.ar...

Kamo·3w ago
FeatureInitializerService

Add users.is_fake, in the only statement order a populated table allows

Mirrors the new `User.isFake` field. Four statements, and the order is the whole migration: YugabyteDB rejects `ADD COLUMN … NOT NULL` on a populated table — re...

Kamo·3w ago
Featurekamo-shared-library

Add is_fake, the flag that makes an account invisible instead of deleted

A synthetic account — a test artifact, a seeded fixture, or a signup judged to be automated — now carries `users.is_fake`, and the platform stops acknowledging ...

Kamo·3w ago
Featurekamo-internal

Rebuild /hr/attendance as a payroll console

Eight flat tabs over eight panels that each drew their own heading, table, skeleton, error line and Snackbar — and had drifted. The overhaul is three things at ...

kamo·3w ago
Featurekamo-internal

Rebuild the network page as an operations console

The page was the last screen still wearing the old look — a flat gradient bar, white cards, a centred spinner, alert() for every failure — while the rest of the...

Kamo·3w ago
FeatureSecurityService

Let a member give up their own membership

The network page has offered "Unsubscribe" since it was written. It opened a confirmation dialog and then said the feature would be implemented soon, because th...

Kamo·3w ago
Featurekamo-internal

Rebuild /hr/legal-compliance as the legal registry

The surface was a MUI tab strip over two AG Grids. Packages rendered as seven columns of counts and an actions cell of six unlabelled icon buttons, three of whi...

kamo·3w ago
Featurekamo-marketing

Play the kamo13 reel

Points the hero at the new reel's ladder, MP4 fallback and poster. The source is spec-identical to the one it replaces (H.264 720p24, 66s, ~30 MB), so nothing a...

Kamo·3w ago
FeatureKlusterServices

Swap the hero reel to kamo13

kamo13.mp4 uploaded to MinIO at public/kamo13.mp4 (30 MB, sha256 174aaec6…, verified byte-identical to the local source after transfer — this link has a history...

Kamo·3w ago
Featurekamo-internal

Rebuild /hr/training as a training console

The tab was two AG Grids under a tab bar: accurate and mute. It now opens on the org's whole training obligation and lets an admin act on the gaps. - A masthea...

kamo·3w ago
Featurekamo-marketing

Wire the offer banner, fix dead Learn more links and the hexagon field

Five fixes, all of them things that looked present but did nothing. OFFER BANNER — HeroOfferBanner was dead code; nothing imported it. Restored, but driven by ...

Kamo·3w ago
Featurekamo-login

Rebuild the welcome panel around a live status rail

The left column was a generic headline, a security platitude and a pile of ambient decoration (dot grid, floating orbs, a pulsing dash). Replace it with one sha...

Kamo·3w ago
Featurekamo-marketing

Rebuild the hero as an editorial split with the reel as an aperture

The reel was a centred rounded rectangle with a drop shadow — an object placed on the design rather than part of it — and it was the ONLY thing in the hero: ff0...

Kamo·3w ago
Featurekamo-marketing

Play the reel as an adaptive HLS ladder instead of a 31.8 MB MP4

The hero pointed a bare <video src> at a single 3.9 Mbps 720p24 MP4, so a phone on a weak connection downloaded exactly the same stream as a desktop on fibre, a...

Kamo·3w ago
FeatureKlusterServices

Deploy a streaming server and an ABR ladder for the hero reel

MediaMTX serves live channels over HLS, WebRTC, RTSP and RTMP, and loops the marketing reel as an always-available channel via alwaysAvailableFile — no ffmpeg s...

Kamo·3w ago
FeatureKlusterServices

Workstation-side mount script for the KAMOTEAM share

NFSv4 over the NodePort, mounted soft with a systemd automount so an unreachable cluster returns an error instead of hanging every process that touches the fold...

Kamo·3w ago
Featurekamo-marketing

Polish video hero unit with modern animations and optimizations

- Add poster image for instant visual feedback during video load - Implement loading skeleton with pulsing animation - Start video muted (browser autoplay polic...

Kamo·3w ago
FeatureKlusterServices

KAMOTEAM shared folder on every desktop

desktop-1 hosts /srv/kamoteam and exports it over NFSv4; every VM user gets ~/Desktop/KAMOTEAM as a symlink (via /etc/skel for new accounts and the agent for ex...

Kamo·3w ago
August 17, 2026
Featurekamo-marketing

Replace hero text unit with autoplay promo video

Swap the homepage hero copy, CTAs, and stats for a looping muted video while keeping the rotating background treatment.

Kamo·3w ago
August 16, 2026
FeatureKlusterServices

Alert on OOMKills, and on the occupancy that precedes them

Nothing was watching memory. MediaService was OOMKilled every few hours for most of a day and EmailService six times, and the way anyone found out was a chat wi...

Kamo·3w ago
August 15, 2026
FeatureKlusterServices

Block outbound SSH except sage, resolve k1m1/k3m1, bundle the agent dir

Outbound tcp/22 is rejected for every uid except root and sage, keyed on socket owner so future accounts are covered without re-running anything. Reapplied at b...

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