Add IDENTIFIER_SUPERSEDED event type key
Additive open-String event key (doc 11 §5.3/§7.3) for the registry renumber/supersession signal — the COMPLIANCE_TIMER_BREACHED precedent (no enum/schema/KI). C...
**************** — resolve the auto_execute_enabled ceiling alongside the wall threshold
Adds effectiveAutonomy(orgId, stage, floor) → EffectiveAutonomy{threshold, autoExecuteEnabled}: one chain-walk (profile → config → stage-override) that returns ...
Recreate deploy strategy so NATS durable consumers rebind on deploy
DaemonService binds EXCLUSIVE JetStream durable consumers (daemon-sync-trigger, **************** [the §2.8 breach loop], daemon-recording-received) in @PostCons...
Enable OutboxRelay @Scheduled backstop + @Async hot path
DaemonService activates the MLOS transactional outbox (mlos.outbox.enabled) and produces events (the compliance-timer breach emitter), but lacked @EnableSchedul...
Anti-double-lock partial-unique index for RCE lock records (doc 08 §7.3)
SchemaCleanupRunner adds **************** — a partial UNIQUE index on mlos_lock_record (organization_id, loan_scenario_id) WHERE status IN **************** At m...
Bootstrap universe-minio secret + ugc bucket note (§14)
Add step 6 to bootstrap-universe.sh: creates the universe-minio secret (ACCESS_KEY/SECRET_KEY from universe-backup-s3 root creds) and notes that the universe-ug...
Register com.kamo.z.shared.mlos.event repos (OutboxWriter dep)
Enabling mlos.outbox activates OutboxWriter, which requires MlosOutboxEventRepository (+ ProcessedEvent /DeadLetter) from com.kamo.z.shared.mlos.event — add tha...
MLOS compliance-timer escalation consumer (BLOCKED→STALE)
The consumer half of the compliance-timer breach loop (doc 03 §2.8; emit half already ships). ComplianceTimerBreachConsumer subscribes (durable JetStream) to **...
§2.4 anti-AUS-shopping partial-unique index on mlos_aus_run
One ACTIVE (non-superseded, non-frozen) AusRun per (loan_file_uid, source_label) — "duplicates look like AUS-shopping" (doc 10 §2.4/§2.5). Safe to land now that...
Persisted par_flag on MlosPricedProductResult + OrchestrationStepStatus.STALE
- MlosPricedProductResult gains par_flag (Boolean, default false): the §8.1-step-5 par cell of the row's lock-period ladder, frozen at insert (run-of-record p...
RateSheetSanityGate — §6.6 hard pre-publish sanity gate (range + monotonic)
A pure-logic ungated @Component (the PriceAssemblyEngine pattern) validating a candidate rate/price ladder BEFORE a rate-sheet version publishes (doc 02 §6.6): ...
LockPolicyVersionPublisher — §6.5 supersession completes the spine triad
The lock-policy-version sibling of **************** keyed per INVESTOR (ux_lock_policy_version_active = (organization_id, investor_id) WHERE status='ACTIVE' AND...
GuidelineVersionPublisher — §6.5 supersession for the guideline spine
The guideline-version sibling of RateSheetVersionPublisher, keyed per PRODUCT (ux_guideline_version_active = (organization_id, product_id) WHERE status='ACTIVE'...
RateSheetVersionPublisher — doc 02 §6.5 effective-dating supersession
The atomic prior-window close the MLOSCatalogService bootstrap bundle writer deferred. Publishing a new rate-sheet version for an existing (org, investor) scope...
EligibilityCellMatcher single-dimension reason-code attribution (ECOA specificity)
Closes the reason-code reachability gap the PriceAssemblyEngine review flagged: a cell miss on EXACTLY one containment dimension now becomes INELIGIBLE with its...
ComplianceTimerService emits mlos.compliance.timer.breached on SLA breach (doc 03 §2.8)
The javadoc-named follow-up to the shipped Slice-2c timers: "event emission to a Compliance queue is a follow-up." expireBreached() now emits a COMPLIANCE_TIMER...
ConditionTemplateExtension — borrowerActionable flag for the portal (doc 09 §6.4)
The net-new data dependency the borrower portal's "What's Left" view needs: the locked LoanCondition carries only staff/org member ids, so the portal cannot tel...
PriceAssemblyEngine — the deterministic §8.1 PPE core (Phase 2 Slice 13)
The first pure-logic mlos slice: the capstone that composes the shipped catalog resolvers into the authoritative server-side pricing math (doc 02 §8.1 steps 2-4...
Register pkg + RCE/pull-through DDL (docs 08/09)
@EnableJpaRepositories += **************** SchemaCleanupRunner: **************** (partial-unique) + rce_commit_ai_decision_fk + rce_commit_lock_record_fk + rce_...
Pull-Through — AiPullThroughPolicy + PipelineFundingProjection (doc 09)
The doc-09 pull-through entity foundation (same mlos.capitalmarkets pkg). AiPullThroughPolicy (RENAMED from doc-09's 'LenderProfile' to avoid the shipped config...
RceCommitmentDecision — the RCE lock-decision detail (doc 08 §10.1)
Opens **************** the net-new RCE persistence gap (lock lifecycle + config + decision-spine were all already shipped). Closes the audit chain RateLock <-> ...
Register com.kamo.z.shared.mlos.eclose in @EnableJpaRepositories (doc 05)
ClosingWorkflowTemplate + MersRegistration (doc 05 §6.2/§6.3) — COMPLETES the §6.3 eClose inventory
ClosingWorkflowTemplate (the eClose graph as DATA — version-bearing total-block WORM, stepsJson JSONB, effective-dated; scopeLevel most-restrictive). MersRegist...
EClose core — ClosingPackage + ClosingArtifact (doc 05 §6.3)
Opens com.kamo.z.shared.mlos.eclose: the eClose workflow-graph substrate. ClosingPackage (aggregate root, one per closing; partial-WORM — identity frozen, statu...
InternalRulesDecision — the §6.5 non-AUS rules-engine store (doc 10) — COMPLETES the aus_* inventory
The internal non-QM/DSCR/ITIN/Jumbo deterministic rules-engine result store: explicitly NOT an AUS (not AusFinding/AusKind, never disclosed as a GSE AUS, doc 01...
AUS finding children — aus_condition + aus_waiver + aus_validation (doc 10 §6.2)
Completes the doc-10 aus_* finding-children inventory (the InternalRulesDecision non-AUS sibling is a separate slice). AusCondition (parsed agency-feedback line...
Register com.kamo.z.shared.mlos.aus in @EnableJpaRepositories (doc 10)
New aus_* repo package (AusRun + children). mlos_aus_run created + verified.
AusRun keystone — the AUS submission-of-record (doc 10 §6.2)
Opens com.kamo.z.shared.mlos.aus: AusRun (child of locked AusFinding) carrying per- submission run state — phase, dual-AUS freeze/soft-lock, cost+credit-reissue...
Doc-03 §2.8 compliance entities — ComplianceFinding + RBPN + FCRA-AA + ChangedCircumstance
The §2.8 record-of-determination + the three INDEPENDENT notice/CC regimes, joining the shipped AdverseActionTimer/RegXTimer in mlos.compliance. All total-block...
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 ...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
