- Shipped
- June 27, 2026 at 2:15 PM UTC
- Author
- Kamo
- Commit
- c1d20e8
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 tell which open conditions a BORROWER may act on. doc 09 §6.4 prescribes a borrowerActionable flag on the LoanConditionTemplate as a SIBLING entity — never a column on the locked core (doc 01 §1.1). The per-condition flag is DERIVED service-side from this template flag + the condition category. - ConditionTemplateExtension (com.kamo.z.shared.mlos.docs, mutable config/reference): soft FK loanConditionTemplateId → locked LoanConditionTemplate.id (UUID), DB-UNIQUE 1:1; denormalized organizationId (Long, String-serialized); borrowerActionable boolean @ColumnDefault false (fail-safe: internal-only unless curated actionable). - **************** (findByLoanConditionTemplateId + **************** mlos.docs already in @EnableJpaRepositories; the UNIQUE index is entity-declared (no SchemaCleanupRunner). - 3 no-DB tests green. Faithful mirror of the DocumentRequirement soft-FK-to-locked pattern (review-exempt).