EventProjectionPolicy platform-default partial unique index (doc 07 §6.7)
**************** **************** WHERE organization_id IS NULL — pins the platform-default singleton (CRDB NULLs-distinct leaves null-org rows unconstrained ot...
Projection/mediastream substrate — EventProjectionPolicy + LoanStreamBinding (doc 07 §6.7/§7.2)
EventProjectionPolicy = the GLBA data-minimization allowlist ((eventKind x partyClass/role) -> allowed field-groups + channels); platform-default(null org)+org-...
Dispatch substrate — NotificationOutbox + NotificationRateWindow (doc 07 §6.4/§10.3)
The crash-safe per-recipient send queue + durable frequency-cap counter (co-transactional per §10.3). NotificationOutbox (partial-WORM, CommunicationArchive idi...
RuleVersionPin entry->pin hard FK (doc 06 §4.6)
mlos_rvpe_pin_idx + mlos_rvpe_pin_fk **************** -> mlos_rule_version_pin.uid), mirroring the satisfier->requirement FK. Applied + verified.
RuleVersionPin + RuleVersionPinEntry (doc 06 §4.6 per-loan freeze)
Completes the doc-06 rule-entity inventory: the per-loan point-in-time snapshot of the active rule/policy version set (determinism — an in-flight loan never sil...
Rule-layer DB CHECKs (doc 06 §4.2/§9.2)
3 platform-owned biconditional CHECKs (mlos_requirement_rule / _rule_set / mlos_freshness_policy: platform_owned = (organization_id IS NULL)) + the legal-wall b...
Versioned requirement-rule definition layer (doc 06 §4.2/§4.6)
The rule-engine half (part 1) of the Document System: MortgageDocType (52-of-~200 §3.3 taxonomy + non-tunable legalWall source-of-truth) + RequirementDriverType...
Schema for the 1-obligation/N-satisfier condition model (doc 06)
Register com.kamo.z.shared.mlos.docs in @EnableJpaRepositories (new repo pkg) + SchemaCleanupRunner backstop for mlos_requirement_satisfier (the append-only WOR...
Greenfield 1-obligation/N-satisfier condition model (doc 06 §4.2/§4.3)
The Document System foundation slice: DocumentRequirement (N satisfiers of an obligation) + RequirementSatisfier (append-only WORM acceptance record) + the two ...
NotificationPreference + CommunicationArchive (doc 07 §6.2/§9.2)
Completes the doc-07 §6 entity model — the mutable convenience ledger + the immutable record-of-business. Same pkg (no @EnableJpaRepositories change). - Notifi...
Notification party+consent ledger schema (doc 07 §6)
- KamoInitializerApp: @EnableJpaRepositories += **************** (new repo pkg for **************** - SchemaCleanupRunner: mlos_consent_one_identity_chk = num...
Party graph + TCPA/E-SIGN consent ledger (doc 07 §6)
New pkg **************** — the recipient/consent entity foundation. Consumer-agnostic (FKs only locked donotmodify; the dispatcher is a future MLOSxxxService, N...
DecisionInput provenance-integrity DDL (decision-spine 2c)
decision_input auto-creates via ddl-auto; SchemaCleanupRunner adds the invariants Hibernate can't emit: - decision_input_one_source_chk: num_nonnulls(11 FK cols...
DecisionInput — FK-pinned input provenance (decision-spine 2c)
The immutable child of AiDecision that makes every decision deterministically replayable (doc 03 §2.1). Unblocked by the now-complete catalog/scenario/pricing i...
Lock record + lock event (Phase-2 Slice 12c)
The FINAL scenario/pricing sub-slice (doc 02 §6.3/§8.1) — completes the §6.3 scenario/pricing entity inventory. A rate lock taken on a priced result + its appen...
Pricing run + result + applied-adjustment (Phase-2 Slice 12b)
The immutable priced-quote record (doc 02 §6.3/§7.2/§8.1): MlosPricingRun -> MlosPricedProductResult -> MlosAppliedAdjustment, written in one tx by the PPE. - ...
Scenario identity — MlosLoanScenario + MlosScenarioBorrower (Phase-2 Slice 12a)
Opens the doc-02 §6.3/§7 scenario/pricing layer (first of 3 sub-slices). The priceable-scenario aggregate root the PPE hangs off + its borrowers. - FK-don't-re...
Ingestion entities — MlosExtractionTemplate + MlosDocumentSegment (Phase-2 Slice 11)
Opens the doc-02 §6.3 ingestion side: the per-investor format map the parser reads + one classified, reviewable region of a source document. Four grounded enums...
Bulletins + bulletin-change provenance + effective-basis applicability (Phase-2 Slice 10)
Closes the doc-02 §6.3 catalog entity inventory. Bulletins are the investor change announcements that spawn new catalog versions and supersede predecessors (§6....
Check in pending WIP (no CI/CD on this repo)
- DataLoader: platform baseline security model + KamoCRM market-backfill wiring - add KamoCRMMarketBackfillLoader; remove superseded BillingGroupBackfillLoader ...
Regenerate maven wrapper (drop mvnw.real shim, vendor wrapper jar)
Stop per-boot customer_id FK tug-of-war in SchemaCleanupRunner
Remove the stale RetailCustomer->Account cleanup drops of commerce_carts.customer_id, **************** and **************** Those columns are now live, Hibernat...
Lock-policy version (WORM) + period options + extension fees (Phase-2 Slice 9)
The investor lock-policy layer — third effective-dated WORM version spine (after rate-sheet + guideline), keyed per investor; feeds the future RateLock/RateComm...
Guideline rules + conditions + evaluator, sharing the LLPA predicate engine (Phase-2 Slice 8)
The guideline-rule predicate conjunct of §8.1 step-2. Critically, REUSES the reviewed Slice-4 condition evaluator instead of duplicating the safety-critical pre...
Guideline-version no-overlap partial-unique index (Phase-2 Slice 7)
SchemaCleanupRunner: ux_guideline_version_active partial-unique ON mlos_guideline_version (organization_id, product_id) WHERE status='ACTIVE' AND effective_unti...
MlosGuidelineVersion (WORM) + GuidelineVersionResolver (Phase-2 Slice 7)
The immutable effective-dated guideline VERSION — the container eligibility matrices **************** and future guideline rules hang off. Faithful replication ...
Eligibility matrix + cells + cell matcher (Phase-2 Slice 6)
The §8.1 step-2 eligibility-first filter substrate (the cell conjunct; guideline_rule + AUS gate AND in later). - MlosEligibilityMatrix (mlos_eligibility_matri...
MlosMarginSchedule + MarginScheduleResolver (Phase-2 Slice 5)
The investor margin layer — the "+ margin_schedule" term of §8.1 step-4 price assembly. - MlosMarginSchedule (mlos_margin_schedule): rateSheetVersionId FK, pro...
Value-set platform-owned ownership CHECK (Phase-2 Slice 4)
SchemaCleanupRunner: ADD CONSTRAINT mlos_value_set_ownership_chk CHECK (platform_owned = (organization_id IS NULL)) — doc 02 §6.2: a platform taxonomy is platfo...
LLPA adjustments + value sets + condition evaluator (Phase-2 Slice 4)
The LLPA/adjustment layer + the deterministic predicate engine for §8.1 step-4 matching ("an adjustment matches iff ALL its conditions are satisfied"). - MlosP...
MlosBasePriceGrid + NoteRateLadder priceable cells (Phase-2 Slice 3)
The priceable rate/price cells — first catalog entity to FK BOTH a rate-sheet version (Slice 1) AND a product (Slice 2); the base of the §8.1 price assembly. -...
Mlos_product ARM-consistency CHECK (Phase-2 Slice 2)
SchemaCleanupRunner: ADD CONSTRAINT **************** CHECK ((amortization_type = 'ARM') = (arm_fixed_period_months IS NOT NULL)) — a fixed period is declared IF...
MlosProduct + MlosArmIndex product-taxonomy layer (Phase-2 Slice 2)
The product spine of the catalog (doc 02 §6.3): everything priceable downstream (base price grids, eligibility matrices, guideline rules) FKs to MlosProduct.uid...
Register catalog repos + rate-sheet-version no-overlap index (Phase-2 Slice 1)
- @EnableJpaRepositories += com.kamo.z.shared.mlos.catalog (the new MlosInvestor/ **************** repos; entities already covered by @EntityScan). - SchemaCl...
Catalog provenance + effective-dated versioning spine (Phase-2 Slice 1)
Smallest shippable slice of the Phase-2 catalog (doc 02 §6): the provenance chain ImgDat -> MlosSourceDocument -> MlosRateSheetVersion and the immutable effecti...
Per-tenant confidence-threshold gate overload (config↔gate wiring)
Additive DecisionGate.evaluate(stage, confidence, legallyRequiresHuman, BigDecimal tenantThresholdOverride) — the autonomy-tuned per-tenant wall resolved by ***...
Partial unique indexes + servicing invariants (Phase-1 config completion)
SchemaCleanupRunner DDL for the new mlos.config domains (mlos.config already in @EnableJpaRepositories; Hibernate ddl-auto:update creates the tables): - one-act...
Complete Phase-1 config domains + MlosActivationService (Slice 5)
Completes doc 04's config entity inventory **************** - Policy singletons (one-active-per-profile, effective-dated/append-only): PricingPolicy (ppeSour...
Channel Applicability engine (Phase-1 Slice 4)
The deterministic most-restrictive resolver (doc 04 §8) — Product x Channel x Investor -> {ALLOWED|DISALLOWED, executionPath, authorityModel, fundingBehavior}. ...
AuthorityConfig (underwriting authority + govt delegations) — Phase-1 Slice 3
- AuthorityConfig (singleton per LenderProfile): underwritingAuthority DELEGATED/NON_DELEGATED/HYBRID + manualUwAllowed + govtDelegation Set {FHA_DE,VA_SAR_...
AI autonomy config + safety-floor resolver (Phase-1 Slice 2)
- AiAutonomyConfig (singleton per LenderProfile; autonomyLevel **************** globalDefaultThreshold DECIMAL(4,3), autoExecuteEnabled) + AutonomyStageOver...
Register mlos.config repo pkg (Phase-1 Slice 1)
Add com.kamo.z.shared.mlos.config to @EnableJpaRepositories so KamoInitializer creates mlos_lender_profile + mlos_licensing_entry. Indexes (incl. UNIQUE market_...
LenderProfile + LicensingEntry config foundation (Phase-1 Slice 1)
New com.kamo.z.shared.mlos.config tenant-config foundation (doc 04 §3): - LenderProfile (root, UNIQUE per MORTGAGE marketId) — soft-FKs locked Organization (...
DaemonService compliance-timer SLA sweep (timer adopter)
First adopter of the MLOS compliance timers: a Quartz job (every 5 min) calls **************** to flip ARMED-but-past-deadline ECOA (AdverseActionTimer) + Reg X...
**************** for the DaemonService SLA sweep
Flips every ARMED-but-past-deadline AdverseActionTimer + RegXTimer to EXPIRED (the durable escalation signal the Compliance steward screen surfaces; event emiss...
Wire license-aware assignment into DecisionSpine (Slice 2b-ii)
DecisionSpine.record() now stamps StewardTask.assignedMemberId from the StewardAssigner when a routed decision carries the loan's jurisdiction: - DecisionReque...
License-aware StewardAssigner (decision-spine Slice 2b-ii)
Adds the license-aware steward selector (doc 03 §3.2; doc 01 §6 #9) — picks a steward whose MLOS StewardLicense is valid TODAY for the act's required license ty...
Register mlos.compliance repo pkg (Slice 2c-i)
Add **************** to @EnableJpaRepositories so KamoInitializer creates mlos_adverse_action_timer + mlos_regx_timer. Indexes entity-declared via @Table — no S...
ECOA + Reg X timer substrate (decision-spine Slice 2c-i)
New **************** package (doc 03 §2.8) — kamo-owned compliance-timer analogues of the locked donotmodify.TridTimer. Substrate-first: - AdverseActionTimer (...
Register mlos.legal repo pkg (Slice 2b)
Add com.kamo.z.shared.mlos.legal to @EnableJpaRepositories so KamoInitializer creates mlos_licensed_act_registry / mlos_ron_eligibility / mlos_steward_license. ...
Like what you see shipping?
Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.