Migration for borrower-facing brand + disclosure columns
Adds the seven nullable columns the kamo-shared-library Organization entity now declares (TAGLINE / NMLS_ID / PHONE_SUPPORT / EMAIL_SUPPORT / EQUAL_HOUSING_DISC...
Emit lender brand + disclosure fields into per-org config.json
Two changes that finish the kamo-los borrower-facing branding pipeline: 1. OrganizationController gains a public GET /api/security/org/domain/{host} endpoin...
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...
node-config: raise k1m1 kubelet max-pods 110 -> 200
Default RKE2 max-pods=110 was being hit, blocking kamolos rolling-update deploys (maxSurge:1,maxUnavailable:0 needs slot to create new pod before killing old; d...
MortgageConnectController — connections + verified-facts + reconcile endpoints
Exposes the connect-first capture surface at **************** - GET/POST /connections + POST /connections/{id}/complete - GET/POST /verified-facts + POST /verif...
Connection + VerifiedFact foundation for connect-first capture
Adds the M3a backend foundation for vendor connections and provenance-tracked verified facts. Stub-only end-to-end — real vendor SDK wiring (Plaid, Persona, ATT...
Add MortgageProgramController — list programs, set persona, set selected program
Add setPersona + setSelectedProgramCode methods
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
Bump for kamo-shared-library 1.5.0 snapshot refresh (M2 programs catalog)
ProgramSeederRunner - seed 17 baseline LoanProgramCode programs (idempotent)
Repositories, DTOs, ProgramService (read-only catalog with naive overlay merge)
Drop duplicate IS_ACTIVE column; rely on EmbRecordState.isActive
Add lenderModel column (additive; null = BROKER default at app layer)
Add persona + selectedProgramCode columns (additive)
Add Program + OrgProgramOverride entities (catalog + per-org overlay)
Retourner "feat(los): introduire le marqueur de paquets d'entités LOS"
Cela revient à l'engagement
Ajouter Entité de Douaner
Add Property entity
Add Borrower entity
Add LoanApplication aggregate root entity
Add LOS enum types (status, role, persona, program, lender model)
Document myloan alias for KamoLOS
Adds `myloan` to the SUBDOMAINS recognition list and rewrites the comment to make the list's purpose explicit (it's documentary; the dynamic Traefik log scan is...
Travailleur de by-passe pour les fiattes de fixation et d'images en ligne
Cliquez sur une ligne de pièce jointe "télécharger" a navigué vers le fichier au lieu de le télécharger. Le travailleur du service de courrier électronique inte...
Resolve cid: inline images at sanitize time to stop signature flicker
Cid: rewriting was happening in a post-commit useEffect, so the sanitized HTML hit the DOM with literal src="cid:..." and the effect mutated each img on the nex...
Expose Prometheus metrics endpoint
Adds micrometer-registry-prometheus and configures management.endpoints to expose /actuator/prometheus alongside health/info. Required so the counters/timer add...
Micrometer counters/timer for transitions, conditions, webhooks
LoanPipelineService increments los_transitions_total{from,to} per successful transition. LoanConditionService increments **************** for cleared/waived. We...
Surface previousMilestoneSha256 in pipeline timeline
The hash-chain link is rendered as a small monospaced 'prev <hash>' chip next to the existing snapshot hash, with the full value in the title tooltip. No new tr...
Hash-chain LoanPipelineMilestone rows for tamper detection
LoanPipelineMilestone gains PREVIOUS_MILESTONE_SHA256. On every transition, LoanPipelineService computes the SHA-256 of the previous milestone's canonical form ...
Surface HMDA LAR validation issues in the UI
HmdaLarRecordDTO now carries an issues array; HmdaLarClient renders: - an amber banner above the table summarising rows-with-issues (Σ errors / Σ warnings) ...
GET /mortgage-apps/hmda/lar/issues count summary
Aggregates validation issues across the LAR for the given year and returns {errors, warns, rowsWithIssues} so the UI can render a one-line banner before the ope...
HMDA LAR pre-export validation
New HmdaLarValidationIssue DTO (ERROR/WARN severity, field name, message). HmdaLarService now annotates each row in buildLar() with a list of issues covering th...
Unify all dashed empty-state boxes into <EmptyState />
A dozen inline copies of "rounded-xl border-dashed border-white/10 bg-white/[0.015] …" across the section files, the kanban column, the HMDA LAR list, and the a...
Surface preTransitionLint warnings in TransitionDialog
Both TransitionDialog implementations (detail Pipeline section + kanban board) now fire the lint endpoint when the user picks a target status and render an ambe...
Expose GET ****************
Surfaces **************** as an advisory pre-flight check the TransitionDialog fires when the user picks a target status.
PreTransitionLint advisory for APPLICATION_TAKEN
New @Transactional(readOnly) method on LoanPipelineService returning a list of human-readable warnings for the APPLICATION_TAKEN target: missing SSN (last 4), D...
Global toast queue with provider + useToast hook
New ToastProvider at the layout level renders a Framer Motion stack of context-managed toasts and exposes a typed useToast() API (success/error/info/warn). Pipe...
Promote ModalShell/ModalActions and SaveSpot to shared modules
Eight section files plus the webhooks admin page each defined their own copy of ModalShell + ModalActions and/or a SaveSpot save-state chip. All now live in [ui...
Consolidate controller session/rights/response helpers in BaseLosController
Six LOS-area controllers (MortgageApp, MortgagePipeline, MortgagePricing, MortgageDisclosure, MortgageHmda, WebhookSubscription) each copied the same ~80 lines ...
Merge partial DTOs into local state, drop refetch-after-patch
Every edit-style autosave (name fields, employment, assets, liabilities, REO, declarations, military, HMDA demographics, originator) used to issue a full mortga...
Collapse pipeline kanban N+1 to a single grouped count query
listForOrganization() used to issue one condition-fetch per loan (201 queries at 200 loans). Now a single grouped JPQL aggregate keyed by loanFile.uid projects ...
Webhook consumer + worker config in configmap
Backs the JetStream durable consumer in WebhookDeliveryWorker. Env-var overrides for the durable name, deliver-policy (set to All to replay backlog one-time), m...