/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 ...
Include both desktops in every SSO token, deep-link to the chosen one
Each token carried only its own connection, so the browser's reused json session lacked the other one -> opening Windows after Linux gave 'connection does not e...
Route borrower submit through the pipeline so it fires **************** (audit #3)
mkopaji wa patchLoanFile kuwasilisha (DRAFT->APPLICATION TAKEN) sasa simu Kwa mfano, *** Badala ya update Orodha ya majina, hivyo Kuwasilisha hutoa hatua ya bom...
Wrap recording upload so MediaService compiles
MinIOStorageService.upload throws a checked Exception that ingest() neither caught nor declared — build break on top of the isGuest fix. Wrap it and rethrow as ...
MeetingParticipant.isGuest() (was getGuest, won't compile); repoint transcribe to generic endpoint
MeetingParticipant exposes isGuest() (primitive boolean getter), not getGuest(). Also point the summary transcribe call at the shared /api/conversion/transcribe...
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...
Stop double-appending ?target in the SSO proxy route
kwa hiyo, ni lazima tuilinde barabara hiyo ili iweze kujiendesha yenyewe. Picha zote na Wizara ya Mambo ya Ndani ya Nchi. .........................................
Alias ALL turbopack content-hashed externals, not just prisma
The prior fix only aliased @prisma/client-<hash>; the build also externalizes pg-<hash> (node-postgres, via @prisma/adapter-pg) under the same content-hashed sc...
Resolve session from X-***-Token header in CallerSessionResolver
The kamo-internal -> APIService BFF path forwards the session as the X-***-Token header, but the resolver only read the X-OTK attribute or the *** cookie — so B...
PatchLoanFile is no longer a status backdoor; unblocking a condition needs the underwrite right; clear cascades
**************** status changes are the pipeline state machine's job (POST /transitions enforces legal arrows + per-arrow role gate + open-blocking-condition ga...
Hali ya sehemu PATCH haiwezi kufuta kimya bendera ya kuzuia; template kuzuia default kuheshimiwa; kuchapisha baada ya kufanya
[TD="width: 456"] a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a ...
Alias Prisma 7 content-hashed client so DB routes stop 500ing
Jenereta ya prisma-client (engineType=client) inaoka maudhui-hashed specifier (@prisma/client-<hash>) katika kujenga ijayo. Muumba wa kuridhika kupitia pnpm-sto...
Inject KamoDesktop SSO env directly + wire guac-sso into tracked k8s deployment
@Value inasoma KAMO GUAC SIGNING KEY / DESKTOP PASSWORD kutoka env moja kwa moja (runtime) matumizi.yml ni configmap-mounted, hivyo mali isiyohamishika bila kum...
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...
Close JWT-forge hole, fix guest join, add "Sign in with Kamo"
- sidecar /api/auth/jwt: derive the member identity (id/name/email/org) from the server-side *** session, not the request body. Previously anyone could POST...
Sign invited members into meetings via click-time OTK join links
Invite links (chat + email) previously embedded a bare meet-room URL, so recipients landed as anonymous guests instead of themselves. An OTK can't be pre-embedd...
Persist invited participants, enforce MANAGE_MEET_SETTINGS, drop double-invite path
- createMeeting: invited members are numeric snowflake IDs, not UUID strings — route them through longToUUID like the creator. Previously UUID.fromString th...
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. .................................
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...
Borrower submit fires the Application-Taken side effects (doc checklist + notify)
Mpokeaji wa barua pepe ni mpokeaji wa barua pepe. operator /transitions mwisho mahali ambapo Maombi-kuchukuliwa madhara kuishi - hivyo mkopaji kuwasilisha yanay...
Reject negative loan amount / property values on section saves
updateLoan and updateProperty now reject a negative monetary amount on the LTV inputs (loan amount, estimated/purchase/appraised value) via requireNonNegative —...
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...
Never prepend www to subdomains, only to the bare apex
The catch-all redirected ANY non-alias host to https://www.<host>, which is correct for the bare apex (kamocrm.com -> www.kamocrm.com) but wrong for a subdomain...
Borrower cannot escalate loan-file status or edit the URLA after submission
Two related borrower-authorization holes on the self-service app endpoints: - Privilege escalation (#2): patchLoanFile applied any statusId with no caller-ri...
Loan-file status accessor for borrower edit-lock, borrower-delete cascade, gift-recipient app scoping
**************** orgId): read helper backing the borrower post-submission edit lock (a borrower may only edit the URLA while the file is DRAFT). **************...
Show member avatars in the Chats tab
MediaService returns chat-session member avatarUrl=null by design (avatars are resolved on the frontend), but the Chats tab never resolved them, so it always fe...
Borrower self-create idempotency + orphan compensation; don't relay an empty checklist as success
MortgageAppController.create() borrower self-create branch: - Idempotency (#2): resume an existing owned DRAFT via findOwnedDraft instead of minting a duplica...
Readiness banner refreshes with the Refresh button and never shows an empty market name
Two follow-ups on the MLOS default-lead-source readiness banner: - Refresh (IconButton) now also calls loadMlosReadiness(), so surfacing a newly-created marke...
Idempotent borrower self-create draft + deterministic active lead-market resolution
**************** memberId): resolves the member's existing in-progress DRAFT application so a repeated borrower self-create (double-click / reload / second tab ...
Explain why the MLOS default-lead-source control is hidden instead of silently dropping it
Juu ya wachuuzi-bidhaa tab "designate default kuongoza bidhaa" udhibiti ni Imefungwa juu ya utayari wa mikopo-vertical - POS enabled, MORTGAGE kazi soko la bias...
DbNow (kwa sasa) kutumia CAST (kama timestamp), si sasa (:timestamp)
:::timestamp shorthand ni mangled na Hibernate ya asili-query parser (inasomeka) a a a a a a a a a a a a a a a a a a a a a a a a a a a...
Kuacha duplicate chat popups kwa ajili ya mazungumzo hayo
Chombo-window dedup tu exact-matched moja userId muhimu dhidi ya WindowsRef, kwa hivyo mazungumzo ya 1: 1 yalifunguliwa mara mbili: - mtumiaji Id kutoka mstari...
Show all enabled-app permission groups in job title & department editors
JobTitleManager and DepartmentManager only ever rendered two permission groups — General and CRM — so **************** rights were invisible and uneditable ther...
Resolve member rights as a true waterfall instead of NUKE-always-wins
Effective rights were computed by folding every source (roles, department, job title, member) into one map where NUKE always won. That meant a member holding bo...
Revert securityProvider to self-pointing; self-heal member applied rights
Mambo mawili ya kuzingatia kuhusu mabadiliko ya tabianchi: Kuingia-kama-mfumo-Member alishindwa na "Hakuna uanachama katika shirika" huduma ya afya kwa kila mt...
Refresh provider status when OAuth popup closes
The provider now redirects to the api-gateway callback (a different origin), so its postMessage may not pass the opener origin check. Re-fetch real provider sta...
Serve e-sign editor PDF for any converted doc, incl native PDFs
The e-sign editor (DocumentEditor → PdfCanvas / PageThumbnailSidebar) opens any converted document, not only files uploaded through the sig-template flow. It fe...
My Docs uses MY_DOCS ordinal (3), not enum id (4)
The backend resolves ImageAssocType via `values()[assocType]` (ordinal index) and persists it @Enumerated(ORDINAL). Every imaging surface passes the ordinal, bu...
Convert deduplicated documents so e-sign edit is enabled
When an uploaded file's bytes matched an existing ImgDat, the dedup path (register-existing) reused that dat verbatim and never ran the conversion pipeline. If ...
Return 200 allFalse for unconfigured org capabilities
GET /api/voip/capabilities threw ProviderNotConfiguredException (422) when an org had no phone provider, logging a red console error on every page load for phon...
Stop 404/422 console errors for un-customized nav and phone-less orgs
Read the ui-preferences collection endpoint (always 200) for the initial navLayout load instead of the single-key GET, which 404s when a member has never custom...
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...
Interpret lock LAST EDIT AT kama UTC kwa epoch-millis expiry
dbNow() sasa inarudi saa ya ukuta wa DB-UTC (sasa: timestamp), kwa hivyo urejeshe kabisa. Haraka na toInstant (UTC) badala ya eneo la default la JVM - huhifadhi...
DbNow() cast now()->::timestamp (TIMESTAMPTZ->Instant broke LocalDateTime)
SELECT now() returns TIMESTAMPTZ, which Hibernate materializes as java.time.Instant and cannot cast to the declared LocalDateTime return type — throwing ClassCa...
Agent filter inaonyesha jina la mwanachama + ugani wa simu, si barua pepe
Wakala wa kushuka alama kila mchezaji na barua pepe yao kwa sababu mzigo Soma Mwanzo / Mwisho Jina la uwanja wa vita haliko mbali. Jina la kwanza / la mwisho / ...
Correct inverted parent-shared topic query
The child-org topic query filtered on assignToOwnOrg=TRUE (own-org-only) when it should return topics SHARED with child orgs (assignToOwnOrg=FALSE). Rename the ...
Send the registrant's hostname in the body so the account lands under the right org
The resolved org was available on the client but never sent to the backend — the org was conveyed only implicitly via X-Forwarded-Host, which the ingress rewrit...
File new accounts under the org of the domain, not kamocrm
/register bound the new member's org to the request Host, but the org signal never survived the hop: kamo-register proxies every signup to the shared api.kamocr...
Resolve org-by-domain with a deepest-label alias fallback
Add **************** exact domain match, then drop the deepest label once (register.optionone.com -> optionone.com) so a per-org register/branding subdomain res...
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.