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...
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...
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...
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 ...
Msaidizi wa Huduma ya LoanTransaction alipata LeadRealtimePublisher param
assignLoanOfficer now publishes the chat-routing event, so the service ctor takes a 10th arg (LeadRealtimePublisher). Update the unit test's direct instantiatio...
Enforce ACTIVE member status on every session & off-boarding path
Mlango wa kuingia wa wanachama watano hapo awali uliishi tu katika nenosiri-login. mtawala. Kupanua kwa kila njia ya kikao cha dakika kwa njia ya pamoja Kwa mfa...
Rate-lock commit gate + cross-org loan resolution + borrower vendor-order projection
Verified defects from the session review: - CRITICAL: commitLock hardcoded **************** which the RCE commit engine rejects with a 400 (only LOCK_ELIGIBLE...
Mirror asili e-sign kukamilika kwa ufunuo stub + fix sent status
(1) BorrowerSignatureService now mirrors a terminal native envelope status back onto the locked disclosure stub (doc 05 §4.2 map) on the borrower's my-signature...
Revive soft-deleted member pref on upsert instead of 500
Per-member UI preferences (nav layout, hex-head sizes, etc.) are stored one row per (member_id, pref_key) in MEMBER_UI_PREFERENCES, guarded by the unique constr...
Accept X-***-Token header on my-networks + all-networks
getMyNetworks/getAllNetworks only read the OTK request-attr or the *** cookie, — no org beyond the device-exchanged primary ever loaded, and the active org had ...
Trainer must not clobber its own claim or an operator's pause
After the atomic claim() bulk-updates the row to RUNNING, mirror that in the in-memory entity — the pool thread has no open session, so a later full-row save wo...
Raise memory 1Gi→2Gi; pod idled at ~900Mi and OOM-killed during background uploads
Register mlos.notification JPA repos so SecurityService starts
EconsentService autowires DisclosureTextRepository **************** but that package was absent from @EnableJpaRepositories — the context failed to start, Crash...
Prepare-signin authenticates on api.<root> — the auth path can't resolve the myloan.* alias
Kizuizi sawa kama kuingia kwa ndani: funguo za azimio la mtoa huduma kwenye canonical Api mwenyeji, si portal alias, hivyo password sahihi bado 401d.
Preferred name fills AKA+first; pool entry publishes the realtime lead event
(1) The funnel's preferred name now writes nameFirstAKA AND stands in for nameFirst until the legal name arrives (owner rule) — it was landing on first name onl...
Imefungwa mnyororo wa LO - portal inaongoza kuingia bwawa la kukubali-lead; kukubalika LO kuishi uongofu
(1) PortalLead Service ina njia ya bandari inayoongoza kwenye pool ya kazi ya msingi ya mikopo (kuhitajika Wakati una hatua ya kuwasiliana - mwongozo wa portal ...
Real soft-delete + reactivate-on-upsert for LOS connection; safe test-connection message
I1: view()/testConnection() now read via the shared-lib's active-filtered finder so a soft-deleted (market,provider) connection reads as "not configured" instea...
Kushindwa kupakia ikiwa resize inashindwa (hakuna ukubwa wa kuanguka)
Inathibitisha kuanguka kwa asili ya duka: ikiwa Huduma ya Kubadilisha haiwezi upya picha, kurudi 422 badala ya kuhifadhi asili ya ukubwa kamili (picha kubwa ing...
Fall back to the original image when resize fails
ConversionService can native-crash (libwebp-imageio SIGSEGV) or be unavailable, which made every member wallpaper upload fail ("Failed to process image" -> 500)...
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...
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...
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...
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...
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...
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...
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...
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...
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...
Mahitaji ya mkopo wa Scope kwa chama chake
Mahitaji ya nyaraka / nyaraka zilizoingizwa zinasoma mamlaka ya chama chochote kwenye programu na Kila mmoja atimize wajibu wake, kwa hiyo, kwa mkopo wa pamoja,...
Per-party vault authorization + per-party notification routing
Akaunti ya kuba ilikuwa na nyaraka kwa kila-PARTY (pamoja binadamu) lakini iliidhinishwa Upatikanaji kwa kila-ACCOUNT - kasoro mbili kubwa za kibinadamu kwa mko...
Mradi wa Bomba la Transaction wavunjika
TransactionSummaryDTO.loanUids carried LOAN-FILE uids, but the pipeline console keys rows on the APPLICATION uid — so grouping silently fell back to one row per...
Member-vault upload was broken (access_level NOT-NULL)
The account-level imaging path had never actually run (0 vault Imgs in prod): uploadDocument was passed accessLevel=null. Pass CONFIDENTIAL for borrower PII (ID...
Satisfy-across confused-deputy IDOR + account party self-heal
- HIGH: satisfy-across gated on the path partyId but fanned out over the DOCUMENT's own party downstream; verify the document belongs to the authorized party ...
Viungo vya kibinafsi kabla ya mahitaji ya utajiri
listDocumentRequirements calls ensurePartyLinks so requirement rows always carry an accountBorrowerPartyId (the borrower upload/satisfy target).
Default-product set failed — HQL bulk UPDATE disallows the vendor→org join
setDefault used a bulk 'update LeadVendorProduct ... where p.vendor.id in (subquery)' — Hibernate bulk updates reject the implicit association join, so the call...
Borrower self-create = createBlank then stampOwnershipAndGet (two txs)
Sequence the borrower ownership stamp as a separate service call after createBlank commits, so the new borrower/declarations graph is flushed before the account...
Close residual cross-org existence oracles + cap WORM-bound JSON blobs
Adversarial-review findings MLOS-W-01/03/04: - the 404-normalized empty list envelope now echoes the request's identity keys **************** so unknown, fore...
Madai ya nyuklia kabla ya uumbaji wa kuongoza - kuzuia yatima inaongoza
jamii.lead.new inaweza kusindika pamoja (zamani + usalama mpya) Timu zote mbili zinashiriki Uandikishaji wa msingi wa NATS wakati wa RollingUpdate moja ya kucha...
Fail-closed tenant guard on underwriting waivers/validations
Review found the org guard was a no-op on the common empty-list case for the by-id waivers/validations reads (which the MLOS service does not org-filter), leaki...
FFA kukubalika juu ya kusimamishwa katika mwisho inapatikana + inapatikana
available-summary now resolves the member's allotment and skips the product when suspended BEFORE the free-for-all short-circuit, and available() gates creditOk...
Accept leadId as string in createPost to preserve CRDB id precision
Lead IDs are CRDB unique_rowid() values that exceed JS MAX_SAFE_INTEGER. The frontend now sends leadId as a string; parse both String and numeric forms so findB...
Usahihi, ukubwa & PII mgumu katika LeadImportController
- Imeunganishwa kupitia swala la LeadRepository badala ya FindAll () juu ya wapangaji wote (Ilikuwa OOM / DoS + hatari ya mfiduo wa msalaba, kukimbia tena kwa k...
Weka eneo la tovuti + kutumia node-local MinIO kwa pod
Ongeza kamo.minio.region (MINIO REGION, default us-magharibi-ca-s-1) hivyo SigV4 saini zinalingana na eneo la tovuti iliyotekelezwa na seva; kurekebisha backgro...
Trial banner signal is org-level (all members of a trialing org), not seat-based
Retry boot-time rights sync on transient DB unavailability to avoid CrashLoopBackOff
Stop cross-org background image leak; order-safe reorder + staging bucket
Reordering only re-uploaded new files to their new index, dropping reordered existing images and leaving imageBgCount claiming unpopulated slots; provisioning t...
Kurudi 404 kwa org haipo badala ya 200 na mwili tupu
getOrganizationById ilirudi null kabisa, ambayo Spring ilichapishwa kwa HTTP 200 na mwili mtupu; wateja wito majibu.json () kisha kurusha "Mwisho usiotarajiwa w...
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.