P2a account-merge tool + P2b transaction backend

FeatureSecurityService
Shipped
July 5, 2026 at 9:25 PM UTC
Author
Kamo
Commit
55a5fe4

P2a — admin account merge (owner requirement A), gated by MERGE_ACCOUNTS: - AccountMergeService: reparents EVERY account_uid child via native UPDATE (bypasses JPA orphanRemoval so the loser's leads/apps survive), dedups the globally-unique account_members + (account,market,target) subscriptions, reconciles stripe_customer_id / primaryMember / pointer FKs (survivor-wins + keep-from-loser overrides), soft-deactivates the loser. Same-org only. - AccountController POST **************** gated by MERGE_ACCOUNTS (or god). P2b — deal-grouping backend: - LoanTransactionService: ensureTransactionForApp (auto single-loan group on create, idempotent), deriveStatus (rolled up from member LoanFileStatus via LoanTransactionStatusDeriver), **************** (TransactionSummaryDTO), isMemberPartyToTransaction (D52 generalized to the group), backfillOrganization. - MortgageAppController: create() now auto-groups the loan; GET /transactions lists per-transaction (operators=org pipeline, borrower=own account). - Register mlos.transaction + mlos.docs repos in SecurityServiceApplication @EnableJpaRepositories. Schema already created by KI (P1). Compiles clean against installed shared-lib.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing