Ongeza vituo vya mwisho vya CampaignController kwa /api / barua pepe/campaigns
The bulk-email workspace/editor call GET/POST /api/email/campaigns etc., but only CampaignService (the @Service) was ever created — no @RestController exposed i...
S s s s s s s s S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S s s S s s S s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s s
- routing.ts: kuweka viambatanisho: uongo - programu ni noindex / nofollow bila matumizi ya kiungo: rel = mbadala header ijayo-intl emits Kwa default kwa wote 2...
Require a session on POST ****************
The handler took an HttpServletRequest but never used it, carrying the comment "No auth required — internal admin maintenance endpoint". APIService relays /api/...
Require a session on POST /backfill-conversions
The handler was declared backfillConversions() — it took no request at all — under the comment "No auth — internal maintenance, mirrors /backfill-thumbnails". I...
Gate DELETE /api/security/org/{id} behind active god mode
The handler was `public void **************** Long id)` — no HttpServletRequest parameter at all, calling straight through to a bare deleteById. With ResourceSe...
Delete /api/set-token and /api/get-jwt-token; add route guards
Both routes were dead — no caller anywhere in kamo-internal, kamo-login or kamo-register — and both leaked credentials. /api/set-token built its upstream URL f...
Require auth + org scope on job-title/department mutations
PUT and DELETE on /api/security/job-titles/{id} and /api/security/departments/{id} resolved no session at all — they read a UUID off the path and called straigh...
Make MarketLosConnectionResolver boot-safe when integrations.los repos are not enabled (platform-wide boot fix)
Resolve template images from kept sources, not neighbouring slots
Mtunzi upya upya picha ya chanzo cha template wakati wowote template config ilibadilika, na kwa 'mwanachama-avatar' ilidhani URL kutoka popote Picha Url / heade...
Store and read avatars under one domain-independent prefix
Njia za Avatar za kitu zilipangwa kabla na uwanja wa chochote mwenyeji. Maombi ya kuwasili (getPublicBucket) jina la kamocrm-com, optionone-com, the the the ...
Double wima scrollbar upana kwa draging rahisi
Bump the nav options scroll container from a 6px to a 12px webkit scrollbar and widen the thumb radius to match, giving members a larger drag target. The collap...
Register **************** repositories
LeadService now eagerly wires MarketLosConnectionResolver, which requires the integrations.los repositories **************** KI's explicit @EnableJpaRepositorie...
Drop redundant "+" — pen now sets the balance both ways
The credit-balance pen is now an absolute set-to-N editor (backend mints when the value is raised, invalidates the excess when lowered), so the separate "+" dis...
Credit-balance pen sets an absolute target (mint up / invalidate down)
The Manage-Credits pen edit only ever LOWERED a balance: updateAllotment routed creditBalance to invalidateCreditsToTarget, which no-ops when target >= current....
Master Machine SSO hutumia uunganisho wa VNC, sio RDP
guacd cannot render KRdp's H.264-only RDP GFX. buildAutoConnectUrl now mints a vncConnection() for Master Machine (192.168.4.46:5900, shared password). Linux/Wi...
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...
Add 'desktopMaster' to NavActionKey union — unblocks next build
The Master Machine launcher (navRegistry + NavOptionView + CommandPalette) references actionKey 'desktopMaster' but it was missing from the NavActionKey union, ...
Remove ambiguous unsubscribe requestMatcher that crashed startup
EmailService mounts two servlets (MVC DispatcherServlet + Spring-WS MessageDispatcherServlet at /services/*), so a bare string requestMatchers( "/api/email/unsu...
Tambua msimamizi wa ASSIGNED wa uamuzi ulioelekezwa, kupitia barua pepe
DECISION_ROUTED's steward notification was a record-only no-op: StewardNotifier fanned out over SMS to a static CSV **************** that is empty by default, a...
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...
Pin RDP color-depth so KamoDesktop SSO reuses one xrdp session
Njia ya mungu-via-kamo-ndani ya SSO inafafanua uhusiano wake wa Guacamole katika mstari. Ishara ya json-auth, hivyo pin ya kina ya rangi lazima iishi hapa pia (...
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...
Register WELCOME_MEMBER + WELCOME_TEAM_MEMBER canonical keys
Both templates ship as resource pairs on disk (welcome-member.{json,html}, **************** with matching templateKeys, and EmailService already has their sampl...
Render member photos on avatars inside the chat window
The small avatar icons in a chat popup — the per-message sender avatar (MessageBubble) and the seen-receipt list (SeenIndicator) — all read SessionMember.avatar...
Show member avatars in chat tool window title bars
The tool-window title bar renders its icon from the window STORE props — ToolDock passes `avatarSrc={w.toolId === 'chat' ? w.props.avatarSrc : undefined}` and f...
Surface real upload errors, sync god mode to session
"Save failed: Full logo upload failed" discarded the status and body, so a 403 from the branding gate read identically to a MinIO outage. The server's own messa...
God god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god god
Uploading a logo to a child org 403'd with no way to succeed: canManageOrgBranding only admitted the org owner, and the isGodModeActive fallback could never ret...
A suspended loan can be resumed, and is no longer offered to itself
SUSPENDED is deliberately not terminal — LoanFileStatus.isTerminal excludes it, because a loan is suspended for a fixable reason. But it had no forward arrow, s...
Bound MlosAiClient with explicit connect and read timeouts
The client field-initialized a bare `new RestTemplate()`, so no timeout applied on any AI call and no builder could reach it. A hung provider blocked the caller...
Stop the promote preview overcounting rows the server will reject
The "N approved row(s) will publish" caption counted a row whenever an APPROVED note_rate and base_price candidate existed for it, ignoring the values. A price ...
Classify vision failures so the retry loop and circuit breaker actually work
Vidudu viwili katika maono in, ambayo wote wawili kushindwa mashine kujengwa kwa kushughulikia yao. Jibu la maudhui tupu lilirudishwa kama SUCCESS na kumaliza ...
Thread orgId into the rate-sheet version-spine read
The gateway relayed only investorId, so the upstream had nothing to scope by and returned another tenant's version spine for a foreign investor id. Its siblings...
Use the full page width; make renaming an agent visible
Two things I got wrong. **Width.** The brief was explicit — use the full width of the page, do not waste real estate — and I capped the studio at a centred 880...
Stop the lead view crashing on a lead with no name
/leads/view/{id} died with "Cannot read properties of null (reading 'preferredName')". LeadDTO.toDTO() only builds primaryContact inside `if (lead.getName() != ...
Retry an upload with the MIME type the server actually detected
Upakiaji unadhibitisha sehemu nyingi za Maudhui-Type dhidi ya aina ambayo seva inagundua Kutoka kwa bytes, na aina hiyo ya sehemu inatokana na File.type ya kivi...
Kamwe njia ya maono kwa adapta ambayo haiwezi kutuma picha
AiProvider.supportsVision is a hand-editable database flag, and routing trusted it alone. The HuggingFace and Cohere adapters never read imageUrls at all, and t...
Mount the live per-host cert instead of the expired wildcard secret
Chombo cha ndani cha cert-converter kilijenga ghala lake la msingi la PKCS12 kutoka kwenye ghala lake. wildcard-kamocrm-com, urithi wa siri ya multi-SAN ambayo ...
Stop pinning the expired wildcard-kamocrm-com secret
wildcard-kamocrm-com was a legacy multi-SAN secret that cert-manager orphaned when its Certificate was repointed at a per-host secret. Nothing renewed it and it...
Stop pinning the expired wildcard-kamocrm-com secret
wildcard-kamocrm-com was a legacy multi-SAN secret that cert-manager orphaned when its Certificate was repointed at a per-host secret. Nothing renewed it and it...
Stop pinning the expired wildcard-kamocrm-com secret
wildcard-kamocrm-com was a legacy multi-SAN secret that cert-manager orphaned when its Certificate was repointed at a per-host secret. Nothing renewed it and it...
Stop pinning the expired wildcard-kamocrm-com secret
wildcard-kamocrm-com was a legacy multi-SAN secret that cert-manager orphaned when its Certificate was repointed at a per-host secret. Nothing renewed it and it...
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...
Kukataa mawakala wa mauzo ya msalaba-org; Widen bootstrap cache busting
salesAgentId was persisted from the request body unchecked, so a cross-org or dangling agent id could be stored on a WebChatIntegration. It failed safe only bec...
Anthropic imeshuka kila ujumbe wa mfumo lakini mwisho
buildRequestBody assigned rather than accumulated the system field, so with more than one system message only the final one reached the model. In practice that ...
Locked rules survive a section or whole-document override
An author taking over a rule section by hand replaced the entire section body, which silently discarded the locked pack rules inside it - so 'never quote a rate...
Stamp the borrower quote's actor from the session
The quote requires createdByMemberId and the browser must never supply it. memberId(req) is hoisted out of the party-check branch so it resolves for stewards to...
Correct the CATALOG_SOURCE ordinal — every rate-sheet upload was rejected
ImageAssocType.CATALOG_SOURCE is id 14 but ordinal 12: the ids skip 6, so id is not ordinal+1 past SYSTEM_WIDE. The panel sent 13, which is out of range for a 1...
Streamed replies were dropped, persisting blank assistant messages
Kila mafanikio ya mazungumzo kukamilika alikuja nyuma kama EMPTY msaidizi Bubble. Kwa kuwa Mstari wa msaidizi ulikuwa umeokolewa na maudhui len = 0 na is error ...
Tuma AI Service siri ambayo kwa kweli inathibitisha
The vision-capability proxy authenticated with internal.auth.secret, but AIService validates **************** — a different secret. Confirmed live: the console ...
Je, unaona nini kuhusu usafiri?
Kila kitu kinaingia kwenye tovuti yako mwenyewe. Anza kwenye mpango wa bure na usome ukurasa huu tena katika mwezi mmoja.
