Mabadiliko ya Tabianchi

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

17,848
Mabadiliko ya Jumla
4,568
Features ya
4,508
Wa
32
Miradi ya Miradi
Filter ya Mradi
Miradi yote17,848AIService110APIService138BillingService132ConversionService85DaemonService107DocsService189ESigService78EmailService347InitializerService299KBService73KlusterServices539MCPGatewayService43MediaService459RAGService61SecurityService1,515TranslateService45VOIPService173VectorService8kamo-analytics6,157kamo-apps18kamo-asterisk-support19kamo-capcha17kamo-capcha-widget4kamo-internal4,548kamo-login318kamo-marketing580kamo-meet90kamo-nowww18kamo-register206kamo-shared-library1,320kamo-signer-monorepo50kamolos102
Filter ya aina
Aina zoteBuild24CI522Chore670Docs226Feature4,568Fix4,508Other6,781Performance136Refactor273Revert23Style48Test68Upgrade1
August 12, 2026
FixKlusterServices

Raise CPU limit off the 2-core ceiling

Both replicas sat pinned at 1997m/1999m against a 2-core limit for ~47h. That starved /languages enough that the liveness and readiness probes timed out (443 an...

Kamo·4w ago
August 11, 2026
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
August 10, 2026
FixKlusterServices

Allow YugabyteDB port 5433 in kamowssecurity Cilium egress

A CiliumNetworkPolicy selecting app=kamowssecurity allowed host/remote-node egress on 26257, 4222 and 9000 only. After the cutover the database moved to 5433 an...

Kamo·4w ago
FixKlusterServices

Allow YugabyteDB port 5433 in kamowssecurity Cilium egress

A CiliumNetworkPolicy selecting app=kamowssecurity allowed host/remote-node egress on 26257, 4222 and 9000 only. After the cutover the database moved to 5433 an...

Kamo·4w ago
August 9, 2026
FixKlusterServices

Correct the rationale on pre-created schemas

KamoInitializerService does set **************** true, so it creates these schemas itself. The previous comment claimed it did not. The file stays as explicit b...

Kamo·4w ago
FixKlusterServices

Correct the rationale on pre-created schemas

KamoInitializerService does set **************** true, so it creates these schemas itself. The previous comment claimed it did not. The file stays as explicit b...

Kamo·4w ago
August 8, 2026
FixKlusterServices

Stop the 60s entrypoint read timeout capping uploads

respondingTimeouts.readTimeout is the deadline for reading a WHOLE request, body included, and Traefik v3 defaults it to 60s where v2 had no limit. That silentl...

Kamo·4w ago
August 7, 2026
FixKlusterServices

Pin the remaining hostPath workloads to the node holding their data

Same fault as embedding-model, found by auditing every hostPath volume in the repo. A hostPath is node-local and nothing replicates it, so an unpinned pod can b...

Kamo·1mo ago
FixKlusterServices

Pin to the node its model weights are actually on

The model is a hostPath under /var/lib/embedding-model on k1m1, and nothing replicates it. When k3m1 joined, the new ReplicaSet's pod was scheduled there and ne...

Kamo·1mo ago
August 5, 2026
FixKlusterServices

Stop the passdb from splitting a mailbox across two maildirs

password_query returned `email as user`, which overwrote the %Lu-lowercased login name with the row's stored casing. user_query then interpolated %n from the re...

Kamo·1mo ago
FixKlusterServices

STUN answered on the wrong node, so kamocrm.com:3478 was dead

coturn is hostNetwork with no nodeSelector, so it was scheduled on k3m1 (public 47.181.8.87). Its own --external-ip, and every client's `stun:kamocrm.com:3478`,...

Kamo·1mo ago
FixKlusterServices

Bridge advertised only private ICE candidates — no meet had media for 35 days

The bridge never completed a single ICE connection in the 35 days this pod has been up (0 successes, 18 terminations). Every conference joined over XMPP fine an...

Kamo·1mo ago
FixKlusterServices

Liveness probe could never pass — cause of 920 restarts in 35 days

Root cause: the liveness probe was `tcpSocket: port 10000`, but Scylla's REST API binds to api_address 127.0.0.1 (its default) while a tcpSocket probe dials the...

Kamo·1mo ago
August 4, 2026
FixKlusterServices

Resync drifted manifests with live before enabling full reconciles

Auditing what a full reconcile would apply turned up two manifests that had drifted far enough from the cluster that re-applying them would have caused an outag...

Kamo·1mo ago
August 3, 2026
FixKlusterServices

Stop the avatar-resolver policy blocking every login

This policy took the whole platform's login offline for hours. Cilium enforces egress against the RESOLVED BACKEND, after service DNAT, so the port it matches ...

Kamo·1mo ago
July 28, 2026
FixKlusterServices

Mashine ya Master inatumia VNC (x11vnc), sio RDP

KRdp/RDP is incompatible with Guacamole: guacd has no RDP Graphics Pipeline (EGFX) and KRdp is H.264-only, so the connection authenticated but died with GRAPHIC...

Kamo·1mo ago
July 26, 2026
FixKlusterServices

Pin CockroachDB to v24.2.4 to avoid v24.3 no-license txn throttle

v24.3 (and 24.2.5+) enforce the new CockroachDB Software License; with no license key the cluster throttles to 5 concurrent open transactions cluster-wide. A v2...

Kamo·1mo ago
July 23, 2026
FixKlusterServices

Pin RDP color-depth + reap xrdp sessions so god reuses one desktop

xrdp 0.9.24 keys sessions on <user,bpp> (Policy=Default) and never reaps disconnected ones (KillDisconnected=false, DisconnectedTimeLimit=0). The RDP user is al...

Kamo·1mo ago
July 22, 2026
FixKlusterServices

Stop expired/orphaned secrets shadowing live per-host certs

update_tls_store() rebuilt the TLSStore from a plain Secret listing, bucketed only on name prefix and type, with no check that a Certificate still owned the sec...

Kamo·1mo ago
July 16, 2026
FixKlusterServices

Explicit priority so the OTA updates route wins over the general theme route

Traefik ranks by rule-string length; the general /public/ theme route is longer, so the expo-updates header injection never ran. priority:100000 forces the win.

Kamo·1mo ago
July 14, 2026
FixKlusterServices

Raise guacamole memory 1Gi→2Gi to stop OOM mid-RDP-session

The Tomcat webapp idles near ~800Mi, so a 1Gi ceiling left almost no headroom. Opening an RDP session pushed RSS over 1Gi and the container was OOMKilled (exit ...

Kamo·1mo ago
July 8, 2026
FixKlusterServices

Move data dir off MinIO FUSE mount to local disk

rspamd's /var/lib/rspamd was hostPath-backed by the rclone FUSE mount of the MinIO shared-files bucket. Every hyperscan recompile / map refresh rewrote files th...

Kamo·2mo ago
FixKlusterServices

/dev/shm 2Gi (mahitaji ya kichwa cha Chrome > = 2GB + kikomo cha 6Gi mem)

Jibri's 10-config init mimba na '/dev/shm lazima angalau 2GB' wakati shm ni 512M, vunja rekodi ya rekodi. Weka tmpfs kwa 2Gi na kikomo cha kumbukumbu 6-Kufanya ...

Kamo·2mo ago
FixKlusterServices

Correct Guacamole branding manifest version field

Ilani ilitumia guacManifestVersion:1.0; upanuzi wa vifungu hutumia guacamoleVersion. Eneo baya lilimfanya Guacamole kukataa upanuzi wa alama ('hauwezi kusoma' y...

Kamo·2mo ago
July 7, 2026
FixKlusterServices

Move guacd to pod network (MTU fix) + unicast WoL

guacd on hostNetwork (k1m1 eno49 MTU 1500) vs guacamole pod on cilium overlay (MTU 1420): RDP connected but large frames were dropped across the boundary -> 'Gu...

Kamo·2mo ago
FixKlusterServices

Angalia eneo la desktop kwa IngressRoutes

desktop.kamocrm.com IngressRoute anaishi katika desktop ns, lakini CRD ya Traefik Picha zote na Wizara ya Mambo ya Ndani ya Nchi. .................................

Kamo·2mo ago
FixKlusterServices

Uagizaji wa VM disk kama mfumo wa faili, sio kuzuia

CDI's block importer crashlooped: 'blockdev: cannot open /dev/cdi-block-volume: Permission denied' — it can't access the raw Longhorn block device. Filesystem v...

Kamo·2mo ago
FixKlusterServices

Correct KubeVirt VM cloud-init field + modernize spec

- cloudInitNoCloud userdata secret field is 'secretRef' (not userDataSecretRef); KubeVirt v1.8.4 pruned the wrong field -> 'must have at least one userdatasou...

Kamo·2mo ago
FixKlusterServices

Proactively provision browser-only aliases (media.*)

The log-scan discovery mechanism can never bootstrap the `media` alias: it is only ever contacted by the browser over a WebSocket/XHR subresource (SockJS /ws/in...

Kamo·2mo ago
July 1, 2026
June 30, 2026
FixKlusterServices

Correct FPBXCONF heredoc + repoint universe Scylla

- freepbx: the FPBXCONF here-document closing delimiter was indented (8 spaces); bash requires <<WORD delimiters at column 0, so startup.sh died with 'unexpec...

Kamo·2mo ago
FixKlusterServices

Pin kamo Traefik to k1m1; make auto-cert single-cluster

SSL errors: kamo Traefik is a LoadBalancer with externalIPs 192.168.4.22 (k1m1) + externalTrafficPolicy=Local, so it MUST run on k1m1 — the pod rebalance moved ...

Kamo·2mo ago
June 25, 2026
FixKlusterServices

Indent heredoc bodies so the startup.sh configmap is valid YAML

The startup.sh block scalar embedded 5 shell heredocs (rtp.conf, http.conf, an SQL block, WebRTC endpoints, freepbx.conf) whose bodies sat at column 0 — less in...

Sage·2mo ago
June 15, 2026
FixKlusterServices

Kuhamia Dovecot maildirs kwa PVC ya ndani-path (off rclone / MinIO FUSE)

Maildirs were on hostPath /mnt/shared-files/email/mail — the rclone FUSE mount backed by MinIO object storage, which can't safely host a maildir (no atomic rena...

Kamo·2mo ago
FixKlusterServices

Weka datadir ya MySQL kwenye PVC ya mitaa badala ya rclone / MinIO FUSE

The mail MySQL datadir (and maildirs) were on hostPath /mnt/shared-files, an rclone FUSE mount backed by MinIO object storage, which cannot durably or consisten...

Kamo·2mo ago
June 13, 2026
June 12, 2026
June 8, 2026
FixKlusterServices

Refresh TLSStore every loop so newly-issued certs get served

update_tls_store() only ran at startup and on shared-storage imports, so a cert freshly issued by cert-manager (HTTP-01) was Ready with a tls-* secret but never...

Kamo·3mo ago
FixKlusterServices

Give redirect-only route a backend so Traefik v3 enables it

Traefik v3 disables an IngressRoute router with services: [] when allowEmptyServices is off (as it is here), so the domain-agnostic HTTP->HTTPS redirect router ...

Kamo·3mo ago
FixKlusterServices

Redirect all HTTP hosts to HTTPS + gate auto-cert to real org domains

Custom org domains (e.g. login.sign.pink) returned Traefik's bare "404 page not found" over plain HTTP: the only port-80 redirect router was hardcoded to *.kamo...

Kamo·3mo ago
May 12, 2026
FixKlusterServices

Preserve full FQDN for subdomains deeper than two labels

organize_by_root() was extracting only the first label and the last two labels from each Traefik-logged hostname. For the common two-level case (login.b11capita...

Kamo·4mo ago
May 11, 2026
FixKlusterServices

Advertise new public IP 47.181.8.83 for external media

JVB-k1m1 was advertising 75.83.113.11 and coturn was advertising the node's LAN IP via status.hostIP — both broke external WebRTC media now that the public WAN ...

Kamo·4mo ago
FixKlusterServices

Replace heredoc with grouped echos so YAML literal block parses

The /etc/odbc.ini heredoc body sat at column 1, which dedented out of the surrounding startup.sh: | literal-block scalar and broke `kubectl apply` of the Config...

Kamo·4mo ago
FixKlusterServices

Follow rclone remounts via HostToContainer mount propagation

Without slave propagation the pod captures the FUSE bind mount once at container start; if rclone-mount.service restarts on the host, the pod keeps pointing at ...

Kamo·4mo ago
May 10, 2026
FixKlusterServices

Scale to 2 replicas to absorb sync + runtime traffic

A single replica is the bottleneck for the dictionary sync workflow: each gunicorn worker handles one request then auto-restarts (~5-10s window of connection-re...

Kamo·4mo ago
May 9, 2026
FixKlusterServices

Drop unrecognized --workers arg causing crashloop

The libretranslate CLI does not accept --workers, only the gunicorn process inside it does. Passing it caused the pod to fail argparse on boot and CrashLoopBack...

Kamo·4mo ago
April 30, 2026
FixKlusterServices

Probe timeout 10s and 2 gunicorn workers

LibreTranslate's /languages probe blocks on the gunicorn worker event loop. With a single worker translating a long chat message, the probe times out at the def...

Kamo·4mo ago
April 28, 2026
FixKlusterServices

Rewrite /etc/odbc.ini to point at $MARIADB_HOST on every boot

The escomputers/freepbx:17 image bakes /etc/odbc.ini with Server=db (the docker-compose link target). On this Kubernetes deployment MariaDB lives at \$MARIADB_H...

Kamo·4mo 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