Domini di configurazione di fase-1 completi + MlosActivationService (Slice 5)
Completa l'inventario dell'entità di configurazione del doc 04 - Sintoni di politica (un-attivo-per-profilo, efficace-dated/append-only): Prezzo dellaPolizia (...
Canale Applicabilità motore (Phase-1 Slice 4)
Il risolutore più restrittivo deterministico (doc 04 §8) — Prodotto x Canale x Indagine - > {ALLOWED|DISALLOWED, esecuzionePath,authorityModel, finanziamentoBeh...
AutoritàConfig (autorità di scrittura + delegazioni di govt) — Fase-1
- AuthorityConfig (singleton per LenderProfile): sottoscrizione DELEGATO/NON DELEGATO/HYBRID + manualeAllowed + govtDelegation Set {FHA DE,VA SAR LAPP,USDA,NONE...
Autonomia AI config + risolutore a pavimento di sicurezza (Phase-1 Slice 2)
- AiAutonomyConfig (singleton per LenderProfile; autonomiaLevel ************************************************************************************************...
LenderProfile + LicensingEntry config foundation (Phase-1 Slice 1)
Nuova fondazione com.kamo.z.shared.mlos.config inquiant-config (doc 04 §3): - LenderProfile (root, UNIQUE per MORTGAGE marketId) — soft-FKs bloccato Organizzaz...
Per il DaemonService SLA
Flips ogni ARMED-but-past-deadline AdverseActionTimer + RegXTimer a EXPIRED (il segnale di escalation durevole le superfici dello schermo di compensazione stewa...
Assegnazione di licenza via cavo in DecisionSpine (Slice 2b-ii)
DecisioneSpine.record() ora francobolli StewardTask.assignedMemberId dal StewardAssigner quando una decisione percorsa porta la giurisdizione del prestito: - D...
StewardAssigner (decision-spine Slice 2b-ii)
Aggiunge il selettore di steward licenza-aware (doc 03 §3.2; doc 01 §6 #9) — sceglie un steward il cui MLOS StewardLicense è valido TODAY per la licenza richies...
ECOA + Reg X timer substrato (decisione-spina Slice 2c-i)
Nuovo **********************************************************************pacchetto (doc 03 §2.8) analoghi di conformità-timer del donotmodify bloccato. TridT...
Sostrato legale del registro di stato (decisione-spina Slice 2b)
Nuovo pacchetto com.kamo.z.shared.mlos.legal — il produttore greenfield del L'ingresso assoluto di DecisionGate (doc 03 §3.2). Substrate-first, no adottivo anco...
Dichiarare gli indici Slice-2a via @Table(indexs) sulle entità
Spostare le definizioni dell'indice mlos orchestration state e mlos steward task da SchemaCleanupRunner di KamoInitializer sulle entità stesse (@Table(indexes=@...
Decision-spine Slice 2a — OrchestrationState + StewardTask + DecisionSpine BLOCKED-state machine
OrchestrationState (per-loan-stage GREEN/BLOCKED/COMPLETE) + StewardTask (exception record) + enums + DecisionSpine (@ConditionalOnProperty mlos.spine.enabled):...
Aggiungi VENDOR CALLBACK RESOLVED chiavi tipo evento (0.6a ingress)
Sostrato di registro di LoanIdentifier — 42 ids di tipo (keystone 0.5, slice 1)
Nuovo pkg com.kamo.z.shared.mlos.identity (la chiave di inbound-webhook routing): LoanIdentifierType (42 id di prima classe, ogni portante cardinalità + proprie...
PublishAck è in io.nats.client.api, non io.nats.client
Corretto di importazione solo di prova che stava rompendo compilazione condivisa-lib (conosciuto dall'installazione mvn locale ora richiesta). Il codice princip...
StewardFeedback volano — cattura ogni verdetto steward (chiave 0.11)
Nuovo pkg ************************** ** append-only StewardFeedback ground-truth Row (FK ai decision.uid; verdect CONFIRM/OVERRIDE/MODIFY; Reg-B-aligned ReasonC...
Immutable AiDecision WORM ledger + twowall DecisionGate (keystone 0.3, slice 1)
Nuovo pkg com.kamo.z.shared.mlos.decisione (spina di decisione di campo verde, mai edits dontmodify): ammutabile solo AiDecision (WORM via @PreUpdate guard; pre...
Porta di isolamento per la spina dorsale dell'evento (Slice 3)
Roadmap 0.10: **************************************************************************************************************************************************...
Idempotency, DLQ + Steward replay (Slice 2)
Aggiunge il nucleo di affidabilità che qualsiasi consumatore MLOS collega a: ProcessedEvent dedup ledger (unique consumer name+event id) + MlosDeadLetter DLQ + ...
Backbone dell'evento di uscita Transactional (Phase-0 keystone B)
Percorso del produttore di denaro/compliance in NEW sibling pkg (mai modifiche donotmodify): MlosEventEnvelope DTO + MlosOutboxEvent outbox entità/repo + Outbox...
Aggiungi caso insensibile trovareByEmailEmailIgnoreCase
Le e-mail sono memorizzate con caso inconsistente (ad esempio Sage@KamoCRM.com) e CockroachDB string uguaglianza è caso sensibile, quindi trovareByEmailEmail ma...
Modifiche per aggiungere il supporto di password di cambiamento ai profili di account
Aggiungi ACCESS KAMOWORLD destra (145, GAMES) per l'accesso KamoUniverse
Modelli di firma elettronica canonici (verificazione + invito)
Aggiungere due modelli di e-mail canoniche su piattaforma seme lazily per org: - esign.signer verification (step-up OTP: {{code}}, {{name}}) - esign.signer invi...
API SIGNATURE api-chiave portata + EsignGenericEnvelope.origin
Additivo, nessuna versione urto: - ApiKeyScope.API SIGNATURE — porta l'API di e-signatura programmatica (Business) - EsignGenericEnvelope.origin (EsignUsageOrig...
Organizzazione esplicita.isPlatformProduct come segnale di diritto-radice
Sostituire l'euristico derivato 'con un mercato SUBSCRIPTION' con un esplicito, Bandiera di proprietà di admin-set. Un prodotto della piattaforma (ad esempio si...
Radice del prodotto = possiede il mercato SUBSCRIPTION, non qualsiasi mercato
Un cliente org (ad esempio BluEleven) possiede i propri mercati aziendali OWN (RETAIL/MORTGAGE) per gestire la sua azienda rimanendo un cliente della piattaform...
Risolvere i diritti per prodotto-root org, non piattaforma di alto livello
Introduce EntitlementRootResolver: il più vicino mercato ancestor-or-self di un org (la sua radice del prodotto), cadendo al livello superiore della piattaforma...
Aggiungi destinatario della busta, valore del campo, entità dello stato del destinatario
Controllare nel modello di esign in corso: EsignEnvelopeRecipient (+repo), EsignFieldValue (+repo), EsignRecipientStatus e un aggiornamento ESignSignerType. Add...
Aggiungi EsignUsageRecord per la misurazione dell'utilizzo per firma
Nuova entità di utilizzo (mirrors AiUsageRecord) emessa alla firma completamento. Solo le firme API-origin contano verso il mese di un piano incluso quota + ove...
Rename LoanRepository → PersonalLoanRepository
Spring Data JPA deriva il nome del fagiolo del repository dall'interfaccia semplice nome di classe, non dal valore di qualifica @Repository("..."), quindi il la...
Evitare Loan / LoanRepository collisione con app ipoteca
KamoInitializerService non è riuscito a boot perché due classi @Entity chiamato 'Loan' e due classi di repository denominate 'LoanRepository' entrambi volevano ...
LoanChargeOffReasonCode (IRS 1099-C box 6) + ricerca di audit
- Nuova LoanChargeOffReasonCode enum (A BANKRUPTCY.H OTHER) per IRC §6050P - Loan.chargeOffReasonCode colonna - @Query per i subpoenas del regolatore (loanId / ...
E' il momento giusto
Usato per riattivare un esistente Il piano PAUSED invece di creare una riga duplicata che orfana quella in pausa.
Pagamenti di repo + conteggioByStatus per percorsi caldi
- LoanRepository: conteByStatus / conteByOrganization AndStatus + Pagina <Loan> trovareByStatus(...) / Non e' vero. E' una cosa da fare. ***********************...
LoanOrgStripeConnect + Imposte sui prestiti/campi obbligatori + indici caldi
- Nuova entità LoanOrgStripeConnect (one-per-org, detiene stripeConnectedAccountId + Collegare le capacità di bordo) + repository - Loan: stripeCustomerId (lazy...
Credito Uid → Lungo + ordino originario
Engagement estende BaseEntity (Long PK) così il fidanzamento Uid deve essere lungo, non UUID — questo è coerente con l'accordo esistenteDTO / WorkOrderDTO model...
Aggiungere PERSONAL LOANS tipo di commercio + pacchetto entità
- CommerceType.PERSONAL LOANS + Engagement paralleloTipo + vocabolario - IntroduttivoVendorCategories per i fornitori personali-loan - 15 entità JPA personali l...
Bootstrap programma mutuo offerte sul mercato creare + boot backfill
Quando l'utente crea un CommerceMarket con commerceType=MORTGAGE — tramite Impostazioni di mercati e campi scheda — il mercato ha bisogno di programma per le su...
Per-org abilitare/disabilitare + deprecare legacy commercio unico percorso ipotecario
- No, no. upserts una riga OrgProgramOverride con recordState.isActive=desiderato; listForOrg ora ed è il programma base bandierina attiva con il override, quin...
Polacco — backfill, cancellare la pulizia, la sincronizzazione dell'importo, i collegamenti appUid
- No, no. guarisce AppMortgages predating il cablaggio; chiamato da SecurityService DataLoader. - AppMortgageService.delete cancella il fidanzamento+intent inve...
Wire URLUn'ipoteca in Engagement/Intent/Commitment
Mortgage è una verticale del sistema di commercio — insieme al commercio al dettaglio, al noleggio, servizio, abbonamento e appalti. Questo cablaggi il mutuo UR...
Aggiungi Binder/BinderItem/BinderShare entità e repository
Aggiunge lo strato di persistenza per la nuova funzione Doc-manager Organizer: - Binder (Long id, proprietario, org-scoped, isTemplate, binder-wide modifierJson...
Add borrower-facing brand + disclosure fields to Organization
Seven new nullable columns powering the lender-branded surfaces in kamo-los's borrower app: - TAGLINE — marketing line shown on the brand-intro spl...
Connessione + Verificato Fondamenti fatti per la prima cattura di connessione
Aggiunge la fondazione backend M3a per le connessioni dei fornitori e la provenienza-tracciata fatti verificati. Cablaggio SDK (Plaid, Persona, ATTOM, uffici di...
Repositories, DTOs, ProgramService (catalogo di sola lettura con fusione sovrapposizione ingenua)
Getta la colonna IS ACTIVE duplicata; fai affidamento su EmbRecordState.isActive
Aggiungi la colonna lenderModel (additivo; null = BROKER predefinito a livello app)
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.