Ir para o conteúdo
KAMOUniverse

Changelog

O que há de novo.

Cada melhoria para a plataforma, como ele envia.

  1. · kamo-shared-library

    Pull-Through — AiPullThrough Policy + Pipeline FundingProjection (doc 09)

    A fundação de entidade pull-through doc-09 (mesma mlos.capitalmarkets pkg). AiPullThrough Policy (RENAMED from doc-09's 'LenderProfile' para evitar a colisão de raiz de configuração enviada; o tunble P(fund)->lock/warehouse/hedge knobs; wORM parcial, MlosLock PolicyVersion idiom — termos congelados, status ACTIVO->Supersed + substituídoAo escrever-uma vez; novo tipo de compromisso de entrega **************************** [NÃO o expedido ********************** eixo] + HedgeAgressividade; degradadoFloor piso pela plataforma min). Fundição de Pipeline Projecção (a superfície de P (fundo) vivo mais recente MUTABLE, explicitamente NÃO WORM; reescrito cada recomputação; histórico está em AiDecision). ** A queda nunca é armazenada** (DERIVED 1-pull-through, doc 01 §7) — imposta por uma ausência de Teste de coluna em todas as 3 entidades do mercado de capitais. 3 enums, 2 repos, 5 testes. Versão fiel - coluna + espelhos de modelo mutável. Deferido: (precisa de um irmão extensão — LoanConditionTemplate is locked) + todo model-serving (MLOSGovernanceService).

  2. · kamo-shared-library

    RceCommitmentDecision — the RCE lock-decision details (doc 08 §10.1)

    Abre **************************** o gap de persistência líquido-novo RCE (ciclo de vida de bloqueio + config + decision-spina já foram todos enviados). Fecha a cadeia de auditoria RateLock <-> MlosLockRecord <-> RceCommitmentDecision <-> AiDecision. WORM de bloco total (idioma da decisão Ai; correção = NOVA linha via suplantaçõesDecisionId). Grava melhor-ex/lock-vs-wait rational + a estratégia/autonomia instantânea/ **************** em cadeado + os pins de impressão digital §10.3. LO compensação é NUNCA uma entrada (margemSrpBasisBps comp-invariante, §7.1); nenhuma coluna de precipitação (DERIVED, doc 01 §7). Reusações AutonomyLevel + MlosLockRecord/MlosLockEvent (não remodela o ciclo de vida de bloqueio). 2 enumas **********************************, 4 testes. Pesquisa workflow design gate + fiel espelho WORM.

  3. · InitializerService

    Register com.kamo.z.shared.mlos.eclose em @EnableJpaRepositórios (doc 05)

  4. · kamo-shared-library

    EncerramentoFluxo de trabalhoTemplate + MersRegistration (doc 05 §6.2/§6.3) — COMPLETE o inventário §6.3 eClose

    EncerramentoFluxo de trabalhoTemplate (o gráfico eFechar como DADOS — WORM de bloco total de versão, passosJson JSONB, eficaz-datado; escopoNível mais restrito). MersRegistration (sistema MERS-is-ONE) Registo de operações por empréstimo – apenas anexo parcial-WORM, min/operação congelada, adiantamentos do estado; MIN Unicidade global detida pelo Registo do Identificador de Empréstimos MERS MIN, referenciado não sobrescrito §6.3). 3 enums, 2 repos, 4 testes. Espelho fiel (version-spin + parcial-WORM). Completa doc-05 §6.3.

  5. · kamo-shared-library

    Núcleo EClose — EncerramentoPacote + EncerramentoArtifacto (doc 05 § 6.3)

    Abre com.kamo.z.shared.mlos.eclose: o substrato do workflow-graph eFechar. Fechar o Pacote (raiz agregada, uma por fechamento; WORM parcial — identidade congelada, passeios de status) + EncerramentoArtifact (um nó por * ********* passo; apenas apêndice Parcial-WORM — identidade/prova congelada [fornecedorNome/Ref OPAQUE externo, nenhum fornecedor- colunas específicas], resultados avançam; uma re-run é uma linha NOVA §6.3). Soft-FK-by-id + desnormalizado org (o padrão mlos.*, sem @ManyToOne); externoRef = âncora de resolução de webhook-inbound §6.4. EsignEnvelope/DisclosureSet código-verificado UUID; a ponte de e-sign é um SERVIÇO (escreve o stub bloqueado), não uma nova entidade. 3 enums, 2 repos, 8 testes. Pesquisa fluxo de trabalho design gate + Fiel-espelho parcial-WORM. Deferido: EncerramentoFluxo de trabalhoTemplate + MersRegistration.

  6. · kamo-shared-library

    Regulamentos internosDecision — the §6.5 non-AUS rules-engine store (doc 10) — COMPLETE o inventário aus *

    A reserva interna de resultados não-QM/DSCR/ITIN/Jumbo deterministic rules-engine: NÃO explicitamente um AUS (não AusFinding/AusKind, nunca divulgado como um GSE AUS, doc 01 §7). FKs LoanFile DIRECTAMENTE (o ONE documentou §6.6 exceção — não é uma execução AUS). Parede legal: fonteLabel resistente para o marcador INTERNAL RULES fixo em persistir (nunca um rótulo GSE); resultado usa o distinto **************************** vocab (sem Aprovar/ Aceitar/ Ver/Cuidado). WORM de bloco total (idioma AiDecision). Espelho fiel + a guarda de parede legal; 3 testes.

  7. · kamo-shared-library

    AUS encontrando crianças — aus condition + aus waiver + aus validation (doc 10 §6.2)

    Completa o inventário doc-10 aus * finding-crianças (a decisão interna não-AUS) o irmão é uma fatia separada). AusCondition (linha «agency-feedback») conteúdo congelado, loan condition id write-once null->value quando a obrigação de EmpréstimoCondition é instanciado §5.3; agencyStatus a free String). AusWaiver (ACE/valor-aceitação §5.2; validadoSnapshotJson para §3.4 deriva) + AusValidation (D1C/AIM por componente relevo §5.4) = WORM de anexo de bloco total (cada estado/REVOCADO é uma linha NOVA §3.3). Tudo macio-FK-by-id para Bloqueado AusFinding + org/empréstimo desnormalizado (o padrão AusRun); reutilizar AusSourceLabel; 4 new enums; 3 repos; 6 testes. Espelho fiel do padrão AusRun revisto — nenhum fluxo de trabalho de revisão.

  8. · InitializerService

    Register com.kamo.z.shared.mlos.aus em @EnableJpaRepositórios (doc 10)

    Novo pacote aus * repo (AusRun + crianças). mlos aus run criado + verificado.

  9. · kamo-shared-library

    AusRun keystone — a apresentação de registo dos AUS (doc 10 § 6.2)

    Abre com.kamo.z.shared.mlos.aus: AusRun (criança de AusFinding trancado) carregando por- Estado de execução da apresentação — fase, congelamento duplo AUS/soft-lock, acompanhamento custo+crédito-reemissão, Ligação racional da AiDecision. v1 Apenas AGÊNCIA (DU/LP/GUS; TOTAL = subresultado DU/LP §6.4). DELIBERATE doc-10 desvios (ditado por doc 01 + a regra dura da sessão, revisão confirmada Ship AS IS): FK suave por id (aus finding id UUID, NO @ManyToOne — sobrepõe-se ao §6.2 @ManyToOne) + organização DENORMALIZADAId+empréstimoFileUid (um FK macio não pode ser atravessado por JPQL para o controle de orgs — o padrão universal de mlos.*, precedente do cenário de MlosLoan) + novo pacote de mlos.aus. Parcial... mutabilidade WORM (MlosGuidelineVersion idiom): conteúdo congelado, apenas congelado/ supersada write-once false->true (§2.4/§2.5 soft-lock) + caseFileId write-once null->value (§2.4 persisti-and-reuse). source label NOT-NULL agency-only (sem INTERNAL RULES — essa parede vive na loja de irmãos). Pesquisa + revisão de 2 agentes (SIP AS IS); 10 testes. EsquemaDeferidoCleanupRunner anti-AUS-shopping índice parcial-único observado em javadoc (sem escritor ainda).

  10. · kamo-shared-library

    Doc-03 §2.8 entidades de conformidade — ComplianceFinding + RBPN + FCRA-AA + Modificado Circunstância

    O §2.8 registro de determinação + os três regimes de aviso/CC INDEPENDENT, juntando-se Enviado AdversoActionTimer/RegXTimer em mlos. conformidade. Todos os WORM em bloco total (AiDecision idiomática — prova do examinador; uma correção é uma linha NOVA). ComplianceFind (fonte/tipo de pesquisa/ **************************** tridTimerId UUID FK->bloqueado TridTimer; empréstimoFileId Long; NO cure-amount column — §2.8-fiel, cure-math é um diferido Saída de serviço). RiskBasedPricingNotice + FcraAdverseActionNotice (finos registros de divulgação, noticeStatus compartilhado). Circunstância alterada (reset de tolerância TRID; proteção anti- click- through: Não em branco documentadoReason + atribuível aprovadoPorMembroId). 7 enums, 4 repos, 9 testes. FKs verificados pelo código de fluxo de trabalho de pesquisa (LoanFile.uid=Long, TridTimer.id=UUUID).

  11. · InitializerService

    EventProjectionPolicy platform-default parcial unique index (doc 07 §6.7)

    **************************** **************************** ONDE organization id IS NULL — fixa o singleton padrão da plataforma (CRDB NULLs-distinct deixa linhas null-org sem restrições caso contrário; o perigo GLBA duplicado-plataforma). Aplicado + verificado.

  12. · kamo-shared-library

    Projecção/substrato de fluxo médio — Política de Evento + EmpréstimoStreamBinding (doc 07 §6.7/§7.2)

    EventProjectionPolítica = a lista de permissões de minimização de dados GLBA ((eventKind x partyClass/role) -> grupos de campo permitidos + canais); padrão de plataforma-default(null org)+org-override duas linhas. EmpréstimoStreamBinding = ******************* (String(36)) get-or-criar. Ambos BaseUuidEntity mutável (sem WORM); reutilização ************* novo StreamAudienceClass(10). 7 testes. Revisão de 2 agentes FIX THEN SHIP (aplicado): documentou o contrato GLBA FAIL-CLOSED (no-match/ inactivo => negá- tudo), sobreposição-NARROWS-nunca-larga (plataforma- sobreposição), permitidoCanais é um CEILING (ou consentimento TCPA, nunca ignora), honesto NULLs-distinto + null-aware seeder localizador + o índice único de plataforma parcial único único (KI), o localizador '*' wildcard, o StreamAudienceClass nota exaustiva-fallback, políticaVersion intention. (R1/R2 rejeitada por triagem.)

  13. · kamo-shared-library

    Substrato de expedição — NotificationOutbox + NotificationRateWindow (doc 07 §6.4/§10.3)

    A fila de envio segura por destinatário + contador de frequência durável (co-transacional) por §10.3). Caixa de notificação (parcial-WORM, Comunicação) Arquivo idiomático MINUS @ PreRemove — uma fila operacional podível, não prova jurídica: identidade/conteúdo congelado + congelamento enqueue (messageKey + renderizedBody) + ExitboxStatus {PENDING, SENT, SUPPRESSED, FALHO} + write-once sentAt; messageKey UNIQUE dedup nchor. Notificação RateWindow (mutável contador durável, sem WORM — §6.4 incrementos em-txn) + compósito UNIQUE (org,party,eventKind, windowStart). DISTINTO do mlos.event MlosOutboxEvent (event backbone). Espelho fiel da Comunicação revistaArchive parcial-WORM — no review workflow. 12 testes.

  14. · InitializerService

    Versão de Regras Inserção do pino->FK duro do pino (doc 06 §4.6)

    mlos rvpe pin idx + mlos rvpe pin fk **************************** -> mlos rule version pin.uid), espelhando o satisfier->requirement FK. Aplicado + verificado.

  15. · kamo-shared-library

    Versão de Regras Pin + RuleVersionPinEntry (doc 06 §4.6 por empréstimo)

    Completa o inventário doc-06 regra-entidade: o ponto-em-tempo por empréstimo do action rule/policy version set (determinismo — um empréstimo em voo nunca ganhos silenciosos/ reduz os requisitos quando um inquilino edita regras). RegraVersionPin (header: loanFileUid/org/ stageKey) + Versão de Regras PinEntry (refs normalizados de versão congelada, entradaQuind RULE/ RULE SET/ FRESHNESS POLICY + versionId). Ambos WORM total-bloco (DecisionInput idiom). Requisitos do Documento. regraVersionPinId (Slice embarcada 1) agora tem seu alvo. Espelho fiel — nenhum fluxo de trabalho de revisão.

  16. · InitializerService

    Controlos DB (doc 06 §4.2/§9.2)

    3 CONTROLOS bicondicionais de propriedade da plataforma (mlos requirement rule / rule set / mlos freshness policy: plataforma own = (organization id IS NULL)) + a parede legal backstop ck requirement rule legal wall (NOTE/CD/DEEDTRUST deve carregar legal wall=true). Todos '='/'!='-forma, sobreviver à varredura enum-whitelist. Aplicado ao prod CRDB + verificado.

  17. · kamo-shared-library

    Camada de definição de regras-requisito (doc 06 §4.2/§4.6)

    A metade do motor de regra (parte 1) do Sistema de Documentos: HipotecaDocType (52-of-~200 §3.3 taxonomia + fonte de verdade da parede legal não-tunable) + RequirementDriverType + FreshnessAnchorEvent enums; RequirementRule (parcial-mutability WORM, eficaz janela, espelho de parede legal invariante, propriedade da plataforma) + RequisitosRegraSet + Política de frescura (WORM de bloco total, suporte de versão); Regras de exigênciaPrioridadeResolver (prioridade orientada para os dados, laços=mais restritivos); 3 acordos de recompra. Reusa o mlos.config. Canal. marketId/programId=UUID (CommerceMarket/Program code-verified). 37 testes JUnit5. Múltiplas regras abertas por célula é intencional (distinto driverMatchJson predica, Solucionado por prioridade + o avaliador diferido) — sem unicidade aberta, ao contrário O catálogo de espinhos. legalWall pesquisa é leniente (o enum é um excerto; um costume código não está bloqueado). Plataforma de propriedade + legal-wall DB Checks adicionado em KamoInitializer.

  18. · InitializerService

    Esquema para o modelo de condição 1-obrigação/N-satisfier (doc 06)

    Register com.kamo.z.shared.mlos.docs em @EnableJpaRepositórios (novo repo pkg) + EsquemaCleanupRunner backstop for mlos requirement satisfier (o anexo somente Registo de aceitação do WORM): mlos req sat one source chk num nonnulls(img id, verified fact id, aus finding id)=1, mlos req sat type colun chk (satisfier type ↔ sua coluna fonte), mlos req sat requirement idx, e mlos req sat requirement fk → mlos document requirement(uid). Espelha a decisão input one-source/kind-column precedente. Aplicado ao prod CRDB + verificado.

  19. · kamo-shared-library

    Greenfield 1-obrigação/modelo de condição N-satisfier (doc 06 §4.2/§4.3)

    A base do Sistema de Documentos: DocumentRequirement (N satisfiers of an Obrigação) + RequisitoSatisfier (record de aceitação WORM apenas para aplicação) + dois resolvedores puros (WaitingOnResolver §6.1 derivação, CondiçãoLimpabilidade ref-conted clear §4.3) + 6 enums, em novo pkg com.kamo.z.shared.mlos.docs. A obrigação é o Empréstimo LOCADOCondição Recusada pelo id (Condição de Empréstimo Id suave UUID FK) — nunca bifurcado/extendido a colunas (doc 01 §1.1). Apenas o satisfier A submodelo é Greenfield. FK-by-id disciplina: imgId=Long (Img.id código-verificado Long), ********************************************************** loanFileUid/emprestadorUid=Long @JsonSerialize. Nomes satisfatórios exatamente um digitado Fonte (@PrePersist + DB num nonnulls/type-column CHECKs in KamoInitializer). esperaOn é derivado (nunca autor) em cada escrita. 34 testes JUnit5 no-DB.

  20. · kamo-shared-library

    NotificaçãoPreferência + ComunicaçãoArquivo (doc 07 §6.2/§9.2)

    Completa o modelo de entidade Doc-07 §6 — o livro de conveniência mutável + o recorde imutável de negócios. Mesmo pkg (sem @EnableJpaRepositórios mudam). - NotificaçãoPreferência (mutável): por- (parte, evento chave, canal) alternar; **************************** eventKey String (dual eventKind granularidade); cadência/batchWindow; locale/horas tranquilas em nível de festa Empréstimo. - ComunicaçãoArquivo (PATIAL-WORM, MlosLockRecord idiom + @PreRemove): o sistema de registro por mensagem renderizada; mensagemChave UNIQUE (idempotência). Congelos **************************** Listas brancas do ciclo de vida de entrega — DeliveryStatus (8-state transition table; SENT->OPENED permitido para o provedor fora de ordem abre), sentAt (write-once RESPA/TILA prova), statusAtualizadoAt (monotónico, sem nulo-claro), fornecedor/falta/fracasso. Snapshot de consentimento DUAL (ponto + estado resolvido desnormalizado — o estado eficaz do WORM é point- in- time- resolved). asseverConsentEvidence (): um SMS transmitido deve carregar consentimento TCPA SMS (§6.5). - 12 testes em verde. 3 enums net-new (DeliveryStatus mirrors locked status naming). Fundamentada por uma pesquisa Workflow + Adversarial 2 agent review (SIP-AS-IS; aplicada assertConsentEvidence + statusAtualizadoNo null-clear + SENT->OPENED).

  21. · InitializerService

    Esquema de registo da parte da notificação+consent (doc 07 §6)

    - KamoInitializerApp: @EnableJpaRepositórios += **************************** * * * * * * * * * * * - SchemaCleanupRunner: mlos consent one identity chk = num nonnulls(party uid, raw number) = 1 — um evento de consentimento identifica exatamente um autor (parte XOR) Número de entrada bruto); o análogo WORM-vault da decisão input one source chk. WORM é a entidade @PreUpdate/@PreRemove Guards (sem gatilho DB — o CRDB não pode finalizar). 3 tabelas auto-criar via ddl-auto.

  22. · kamo-shared-library

    Gráfico de partido + Registo de consentimento TCPA/E-SIGN (doc 07 §6)

    Novo pkg ****************: a entidade receptora/consente Fundação. Consumer- agnostic (FKs somente bloqueados donotmodify; o expedidor é um futuro MLOSxxService, NÃO o pessoal-empréstimos Kamolos — doc 07's KamoLOS a atribuição está ociosa). - LoanParty (mutável): grafo de destinatário digitado; FK bloqueado LoanFile/Membro por Long id; contactoJurisdição = Residência própria da parte (horas silenciosas); (org, empréstimo, membro, papel) UNIQUE (per-empréstimo-por-papel; reservas nulas-distintas co-empréstimos + terceiros distintos). - ConsentimentoRecord (WORM, AiDecision Language + @PreRemove): TCPA/E-SIGN legal Provas; partidUid XOR rawNumber (E.164, for inbound STOP before a partition existe) — assertIdentified() + um DB num nonnulls=1 CHECK; consented at app-set (horário de captura legalmente preciso); instantâneos disclosure body sha256. - Texto de Divulgação (WORM + @PreRemove): o texto de consentimento do CORPO retido (um ponteiro sozinho é evidência TCPA insuficiente); corpoSha256 não null. - 6 novos enums (empréstimos pessoais, limites máximos + ausência de IN PORTAL/MEDIASTREAM/ MAIL). 8 testes verdes. Fundamentado por um fluxo de trabalho de investigação (código-verificado EsignConsent-is-a-pattern, KamoLOS staleness) + avaliação adversa 2 agentes (FIX-THEN-SHIP: add the consent-identity CHECK, the LoanParty unique index, sha snapshot, @PreRemove).

  23. · InitializerService

    DecisãoInput procedurency-integrity DDL (decisão-espina 2c)

    decision input cria automaticamente via ddl-auto; SchemaCleanupRunner adiciona as invariantes O hibernato não consegue emitir. - decision input one source chk: num nonnulls(11 FK cols) = 1 (exactamente um fonte imutável fixada por linha). - decision input kind colun chk: a coluna não null corresponde à input kind discriminador (tipo-coerência em um livro jurídico WORM; puro-SQL, sobrevive varrimento enum-whitelist). - decisão input decision idx (ai decision uid, date created) + o difícil FK Decisão input decision fk -> ai decision(uid) (responsável feedback). - NO HMDA-firewall DDL: código-verificado do documento de verificação é impossível (VerifiedFact não tem coluna factClass; dados demográficos em uma tabela separada; CRDB CHECK não pode subquery; sem gatilhos). O firewall é estrutural + camada de aplicativo, diferido.

  24. · kamo-shared-library

    DecisionInput — FK-pined input procedurency (decision-spin 2c)

    O filho imutável da AiDecision que toma cada decisão deterministicamente replayable (doc 03 §2.1). Unblocked by the now-complete catalog/cenario/pricing inventário — DecisionInput FK-pins the imutable rule/fact/version PKs. - WORM de bloco total (idioma AiDecision: @PreUpdate arremessos, no @PostLoad, no DB 11 colunas FK exatamente- um-não-null soft-UUID (o Tipo de Entrada) discriminador seleciona o que); somente ai decision uid é um FK duro. - InputKinnd(11)/InputRole(3) enums. scoreContribuição numérica(8,4); testLoan (CORE, espelhos StewardFeedback - WORM não pode retrofit a bandeira). - firewall HMDA (doc 03 §3.3) — CÓDIGO VERIFICADO O CONTROLO DO DOC é arquitetónico impossível: bloqueado Verificado Facto não tem uma coluna factClass/HMDA DEMOGRAFIC, os dados demográficos vivem em uma tabela SEPARATE BORROWER HMDA, CRDB CHECK não pode subconsultar, Sem gatilhos. Firewall é ESTRUTURAL (segregação de tabela; esta entidade não tem caminho de leitura de fatos) + regras diferidas da camada de aplicativos. NENHUM navio HMDA DDL (um navio que não trabalha O CHECK enganaria um examinador). - A coerência mono-não-null + tipo↔coluna CHECKs são KamoInitializer DDL. - 4 testes verdes; repo de decisão pkg já em @EnableJpaRepositórios. Fundamentado por um fluxo de trabalho de pesquisa (code-verified verifiedFact/HMDA) + inverso Revisão de 2 agentes (SIP-AS-IS; enviado o tipo↔column coerência CHECK).

  25. · kamo-shared-library

    Bloquear registro + evento de bloqueio (Fase-2 corte 12c)

    O cenário final/subdivisão de preços (doc 02 §6.3/§8.1) — completa o §6.3 Inventário de entidade de cenário/preço. Um bloqueio de taxa tomada sobre um resultado de preço + o seu Registo de eventos apenas para apêndices. - MlosLockRecord = PARCIAL-mutability WORM (MlosBulletin idiom): @PostLoad instantâneos dos termos bloqueados congelados **************************** âncoras/rate lock uid), @PreUpdate arremessa se alguma alteração mas o status de WHITELISTS (validada pela tabela do ciclo de vida do RateLockStatus) + lock expiration (monotonic-forward — nunca encurta a janela comprometida). - MlosLockStatus espelhos travados TaxaLockStatus exatamente (sem flutuação / cancelamento); rate lock uid = UUID soft FK -> locked RateLock.id (armadilha PK mista), DB- UNIQUE (1:1 lock<->registro; registro legal WORM, não suplanta id). - rate sheet + lock policy versão FK não null, diretriz nullable. - MlosLockEvent = WORM de bloco total somente anexo; tipo evento incl CÂNCEL (retirada do empréstimo, distinta do credor BREAK); price delta(9,4). - NUNCA adicione colunas ao RateLock bloqueado; RCE o escreve através LoanPricingService.createLock stamping lockedByMemberId from the actor. - 14 testes em verde. Todos os índices declarados por entidade (sem KamoInitializer DDL). Fundamentado por fatos bloqueados verificados por código (RateLock.id=UUID, RateLockStatus constantes) + revisão adversarial de 2 agentes (SIP-AS-IS; aplicado todos os 5 deve-se considerar: expiração monotônica, rate lock uid único, evento CANCEL, doc preço congelado, cobertura de teste).

  26. · kamo-shared-library

    Correção de preços + resultado + ajustamento aplicado (Fase-2 corte 12b)

    O recorde imutável de cotações a preços (doc 02 §6.3/§7.2/§8.1.): MlosPricingRun -> MlosPricedProductResult -> MlosApliedAdjustment, escrito em um tx pelo EPI. - Todas as 3 palavras imutáveis (em bloco total, idioma da decisão: @PreUpdate lança, sem @PostLoad). - Versão FK congelada. a execução (por resolução de produto; doc §6.3 linha 293/294). - Números de preços brutos BigDecimal correspondente às grades enviadas: preço base / final (9,4); **************** (9,6). total ajustes = ADITIVO-somente; multiplicativo em linhas de ajuste aplicado. - price adjustment id = obrigatória suave FK -> MlosPriceAdjustment (o § 6.5) cadeia de auditoria nunca suprimida). created by member id nullable=false. - elegibilidade status REUSES ElegibilidadeOutcome; inelegível razão código = new MlosAverseActionReasonCode enum (alvo FK do Doc ausente em código). - Corrigir revisão: diretriz / Lock-policy versão FKs + preços termos são NULLABLE assim As linhas KEPT CANNOT PRICE/NO COVERAGE persistem (sem UUID sentinela); a @PrePersist invariante restaura a integridade (ELIGÍVEL => preço + nenhuma razão; não-ELIGÍVEL => código da razão presente). - 19 testes em verde. Todos os índices declarados por entidade (sem KamoInitializer DDL). Fundamentado por uma pesquisa Workflow + Adversarial 2 agent review (FIX-THEN-SHIP: Aplicou a linha directriz-versão-nulable must-fix + o alargamento coerente).

  27. · kamo-shared-library

    Identidade do cenário — MlosLoanScenario + MlosScenarioBorrower (Fase-2 Slice 12a)

    Abre o cenário Doc-02 §6.3/§7/camada pricing (primeiro de 3 sub-slices). A o EPI pende + os seus mutuários. - FK- don't-recopy (§6.4): lojas de cenários valores **************************** + um cache aus recomendation); URLA attrs brutos lidos através de loan file uid, nunca armazenado. Um teste de reflexão allowlist bloqueia isso estruturalmente. - Núcleo bloqueado FK BY ID: loan file uid + mutuário uid são colunas longas simples (LoanFile.uid/Borrower.uid verificado por código = Long unique rowid; UUID do doc errado) **************************** NÃO @ManyToOne. loan scenario id = UUID FK interno. - (empréstimo cenario id, mutuário uid) DB-única chave natural (um mutuário por cenário; entidade declarada, sem DDL bruto). - Razões/pontuações derivadas DECIMAL (18,6) correspondentes limite do dólar do condado DECIMAL(18,2). Ambos MUTABLE (sem WORM — reprodutibilidade é congelado mais tarde no imutável PreciseRun/Resultado). - Todos os índices declarados por entidade (sem KamoInitializer SchemaCleanupRunner DDL). - 4 testes verdes (serielização longa-id String + FK-t-recopy allowlist). Fundamentado por um fluxo de trabalho de pesquisa (tipos de FK bloqueados por código) + inverso Revisão de 2 agentes (SIP-AS-IS; aplicou as correções allowlist-test + docstring).

  28. · kamo-shared-library

    Entidades de ingestão — MlosExtractionTemplate + MlosDocumentSegment (Fase-2 Slice 11)

    Abre o lado de ingestão doc-02 §6.3: o formato por investidor mapeia o analisador lê + uma região de um documento fonte com classificação e revisão. Quatro aterrados enums ******************* ****** ****** ************************************************************************************************************************************ estrutura de folha de taxa (290-file RateStack corpus survey). - Ambas as entidades MUTABLE (não o WORM version- spin guard): registo/revisão ciclo de vida, ausente do inventário imutável § 6.5 - MlosExtractionTemplate: forward suplated by self-FK + active flag; assertSupersessionConsistent () autoaplicado via @ PrePersist/@ PreUpdate (active=true => suplantated by null). header sinônimos = o §6.7 JSONB. - MlosDocumentSegmento: (source document id, segment locator) DB- unique âncora de idempotência; classificação confiança DECIMAL( 4,3) correspondência AiDecision.confidence; targetEntity defaults NONE, detectedType has UNKNOWN Segurança de falhas. - Todos os índices declarados por entidade (sem KamoInitializer SchemaCleanupRunner DDL). - 11 testes verdes (invariante + enum coluna-fit guarda). Fundamentada por um Workflow de pesquisa + revisão adversa do agente 2 (SIP-AS-IS); Aplicou os itens consistência/idempotência DEVER-CONSIDER).

  29. · kamo-shared-library

    Boletins + procedência de mudança de boletins + aplicabilidade de base efetiva (Fase-2 corte 10)

    Fecha o inventário de entidade doc-02 §6.3 do catálogo. Boletins são os anúncios de mudança de investidores que geram novas versões de catálogo e substituem os antecessores (§6.5). - MlosBulletin (mlos bulletin, WORM): investidorId FK, título, emitido at, eficaz from (LocalDate), Effective basis (BulletinEffectiveBasis LOCK/NOTE/FUNDING/APLICATION), pipeline avô, suplanta id self-FK, source document id FK, status (BulletinStatus DRAFT/ACTIVE/SUPERSED). Guarda WORM congelada pelo conteúdo (sem eficácia até à janela; correcções = um novo boletim). - MlosBulletinChange (mlos bulletin change): change type, target product id, created guideline/ ******************* (no máximo, nenhum para RETIRED/MODIFIED), acção cadeia de procedência do boletim>versão. 4 enumas. - BoletimAplicabilidadeResolver (ungado) + EmpréstimoEfectivoDatas + Boletim tri-estadoAplicabilidade: codifica a regra de conformidade §6.5 (desaplicar effective basis é um erro de conformidade) — aplica-se iff Ativos + data-base >= effective from + not mapted; data de base em falta -> DETERMINADO (defer, nunca silenciosamente "antigos termos"; avô usa um pipeline EXPLICITEntryDate (compromisso marco), não uma data de aplicação codificada. 14 testes verdes. Revisado adversamente (2-agente): MEDIUM fixo (avô aplicação codificada Data + interna contradição -> pipeline explícitoEntryDate), LOW (falso-base falha-direção -> tri-estado INDETERMINATE), + javadoc (no máximo um created version, supersession caller-contract). NÃO Mudança de código KamoInitializer.

  30. · kamo-shared-library

    Versão de política de bloqueio (WORM) + opções de período + taxas de extensão (Fase-2 corte 9)

    A camada de política de bloqueio do investidor — terceira coluna de versão WORM datada com eficácia (após a folha de taxa + diretriz), chaveada por investidor; alimenta o futuro RateLock/RateCommitmentEngine. - MlosLock PolicyVersion (mlos lock policy version, WORM): investorId FK, productId(null=all), effective of/til, sequence no, suplanta id auto-FK, status, source document id FK, + pior case window days, relock allowed, relock worst case, floatdown allowed, float fee price, floatdown min melhoramento bps, ponto de corte time. Mesma @PostLoad/@PreUpdate parcial-mutability WORM. - MlosLockPeriodOption (mlos lock period option): lock period days, padrão flag (um padrão por política através da unica parcial). MlosLockExtensionFee (mlos lock extension fee): extension days, fee price (braw BigDecimal), increment type (FeeIncrementType), max cumulative days. Crianças-valor. - Lock PolicyVersionStatus + FeeIncrement Digite enums. 3 repos. Resolução da Política de Bloqueio (terminada mlos.catalog.enabled): janela ponto-em-tempo, nunca última-linha, lança sobre sobreposição (mirrors EffectiveVersionResolver). 17 testes verdes (6 resolvedor + 11 WORM). KamoInitializer adiciona ux lock policy version active (um ativo aberto por org+investidor) + ux lock period default (um período de bloqueio padrão por política). Nenhum fluxo de trabalho de revisão (irror fiel de o já revisto Slice-1/7 WORM + coluna de resolução).

Seu universo está esperando.

Comece gratuitamente em minutos.Adicione produtos sempre que estiver pronto — sem migração, sem novos logins.

Gratuito para sempre — não é necessário cartão de crédito