Mabadiliko ya Tabianchi

Kuona nini sisi ni kujenga katika muda halisi. Kila kipengele, kurekebisha, na kuboresha kusafirishwa kwenye jukwaa.

17,899
Mabadiliko ya Jumla
4,600
Features ya
4,524
Wa
32
Miradi ya Miradi
Filter ya Mradi
Miradi yote17,899AIService110APIService138BillingService133ConversionService85DaemonService107DocsService189ESigService78EmailService364InitializerService299KBService74KlusterServices545MCPGatewayService43MediaService460RAGService61SecurityService1,519TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,565kamo-login318kamo-marketing584kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,320kamo-signer-monorepo50kamolos102
Filter ya aina
Aina zoteBuild24CI523Chore670Docs226Feature4,600Fix4,524Other6,781Performance136Refactor274Revert23Style48Test69Upgrade1
August 11, 2026
Fixkamo-internal

Let document uploads actually reach the 3 GiB backend ceiling

The backend now streams to 3 GiB, but three things in the browser and the BFF made that unreachable, each fatal on its own. The upload proxy did `await request...

kamo·4w ago
FixConversionService

Raise the document upload ceiling from 500MB to 3 GiB

Chat attachments have run at 3 GiB through this same imaging pipeline for a while; documents were capped at 500MB. The difference was not a policy, it was that ...

Kamo·4w ago
FeatureInitializerService

Create the HR Training schema

Registers com.kamo.z.shared.hr.training in the explicit @EnableJpaRepositories list — @EntityScan is broad so the entities are found either way, but repositorie...

Kamo·4w ago
Featurekamo-shared-library

Stream document uploads and add the HR Training schema

ImageService gains uploadDocumentStreaming, the streaming counterpart of uploadDocument. The buffered form cannot express a large upload at all: readInputStream...

Kamo·4w ago
ChoreEmailService

Rebuild against the shared-library JetStream consumer reconcile

Picks up kamo-shared-library f3a7283. Eight members hold an email-ws-<id> consumer still filtered on email.inbox.<addr> from before subscribeToNats moved to ema...

Kamo·4w ago
Fixkamo-shared-library

Recreate a durable consumer whose stored filter no longer matches

A durable JetStream consumer keeps the filter subject it was created with for the life of the stream. When the owning code later changes that subject, jnats ref...

Kamo·4w ago
Fixkamo-internal

Style the scrollbar on the element that actually scrolls

SettingsView declares an 8px primary-tinted scrollbar on the white card, but that card never overflows — every ancestor down to TabPanel is flex:1 with minHeigh...

kamo·4w ago
Fixkamo-internal

Give the Plans & billing tab its page gutter and section surfaces

The console rendered flush against the settings card on all four sides. Nothing in the container chain pads a tab child — SettingsView's card, its inner Box, Ta...

kamo·4w ago
Fixkamo-internal

Stop one failed call from blanking the whole console

Loading the console makes four calls, and any one of them throwing produced "Couldn't load your billing" with nothing else on screen. The subscription list is t...

kamo·4w ago
ChoreBillingService

Rebuild against the renamed pay-group table

The entity moved from billing_groups to billing_pay_groups after it turned out the former is a live legacy table with a different shape. This service still hold...

Kamo·4w ago
FeatureInitializerService

Create billing_pay_groups explicitly, and undo the legacy collision

Creating it in a migration rather than leaving it to ddl-auto, which produced a half-built table when the entity was pointed at the pre-existing billing_groups.

Kamo·4w ago
Fixkamo-shared-library

Stop the pay-group entity sitting on a legacy table

BillingGroup was mapped to billing_groups. That table already existed — one of a seven-table subsystem (billing_group_members, _subscriptions, _licenses, _invoi...

Kamo·4w ago
Fixkamo-internal

Declare the object-storage secret the ConfigMap no longer carries

MINIO_SECRET_KEY was moved into the minio-app-credentials secret, but the envFrom supplying it was only applied live and never committed, so a CI reconcile woul...

kamo·4w ago
FixSecurityService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixMediaService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixMCPGatewayService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixKBService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixESigService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixDocsService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixConversionService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
FixAIService

Declare the object-storage secret the ConfigMap no longer carries

The MinIO key was moved out of the ConfigMap into the minio-app-credentials secret, but the envFrom that supplies it was only ever applied to the live deploymen...

Kamo·4w ago
Fixkamo-shared-library

Never let the quota service stop a service from starting

StorageQuotaService took its five repositories as required constructor arguments. Services in this estate component-scan com.kamo with a wildcard but declare an...

Kamo·4w ago
Fixkamo-internal

Stop shipping the shared credential in this repo

The object-storage key sat in k8s/configmap.yaml, which kubectl will hand to anyone who can read the namespace, and the same string was hardcoded as the SSH pas...

kamo·4w ago
FeatureEmailService

Size each mailbox against the organization's storage

Dovecot now enforces a per-mailbox limit, and nothing was setting the column it reads. This writes it nightly, after the storage snapshot so the capacity being ...

Kamo·4w ago
Testkamo-shared-library

Pin how the pool divides into per-mailbox limits

Dovecot needs a byte figure per mailbox, but storage is one organization-wide pool across eighteen domains. The division has to hold one property above all — th...

Kamo·4w ago
FixSecurityService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixMediaService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixMCPGatewayService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixInitializerService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixKBService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixEmailService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixESigService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixDocsService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixConversionService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixBillingService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixAIService

Stop shipping a shared credential as a config default

The platform's shared password was baked in as the fallback for DB_PASSWORD and MINIO_ROOT_PASSWORD, so it lived in this repo and in the built image as well as ...

Kamo·4w ago
FixKlusterServices

Stop shipping the shared credential in this repo

The mail MySQL password sat in plaintext across fourteen files here — in ConfigMaps that kubectl will hand to anyone who can read them, in two Jobs that CI appl...

Kamo·4w ago
FixKlusterServices

Stop shipping the shared credential in this repo

The mail MySQL password sat in plaintext across fourteen files here — in ConfigMaps that kubectl will hand to anyone who can read them, in two Jobs that CI appl...

Kamo·4w ago
FeatureKlusterServices

Enforce storage quota on inbound delivery, and stop shipping the DB password

Object storage already refuses content that would take an organization past its ceiling, which covers every domain going through the object store. Inbound mail ...

Kamo·4w ago
FeatureKlusterServices

Enforce storage quota on inbound delivery, and stop shipping the DB password

Object storage already refuses content that would take an organization past its ceiling, which covers every domain going through the object store. Inbound mail ...

Kamo·4w ago
DocsKlusterServices

The Dovecot quota change, written out and not applied

Object storage now refuses content that would take an organization past its ceiling, which covers every domain that goes through the object store. Inbound mail ...

Kamo·4w ago
DocsKlusterServices

The Dovecot quota change, written out and not applied

Object storage now refuses content that would take an organization past its ceiling, which covers every domain that goes through the object store. Inbound mail ...

Kamo·4w ago
Featurekamo-internal

Let a member license their own seat from the console

The panel that closes the loop on self-pay. It appears only where the organization's policy permits it, and only for people who are not already buying on the or...

kamo·4w ago
FeatureBillingService

Tell people their payment failed, and stand the subscription down

The dunning that did not exist. invoice.payment_failed wrote a row and returned: no email, no flag, no state change, and billing.email-service-url was configure...

Kamo·4w ago
FeatureInitializerService

Add the dunning clock columns

past_due_since and suspension_notified_at, both nullable. Null means paying and not-yet-told respectively.

Kamo·4w ago
Featurekamo-shared-library

Make a failed payment mean something

PAST_DUE counted as fully live in both entitlement resolvers, with no timestamp and no cap, so a customer whose card failed kept every feature for as long as St...

Kamo·4w ago
FeatureBillingService

Let a member buy their own seat, and close a body-parameter hole

Self-pay had no route inside the console. Everything on the billing surface is account-shaped — you must already hold an AccountMember row before Plans & Billin...

Kamo·4w ago
Featurekamo-internal

Let the owner decide who can pay, and manage the groups that do

The owner had exactly one lever over self-payment and it was the wrong shape: an irreversible promote gesture, with no way to say in advance whether it was perm...

kamo·4w ago
FeatureBillingService

Org policy and billing group APIs

Who inside an organization may pay Kamo is now answerable and settable. Both routes are org-scoped and therefore deliberately outside /api/billing/accounts/** a...

Kamo·4w ago
Featurekamo-internal

A Plans & billing console an owner can actually find

There was no way to buy a first subscription anywhere in the product. Plan lists were reachable only through a subscription you already held, so an organization...

kamo·4w ago

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei