- Shipped
- 26 Juni 2026, 23:31 UTC
- Author
- Kamo
- Commit
- 7d1d09a
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-recopy (§6.4): scenario stores ONLY derived-for-reproducibility values **************** + an aus_recommendation cache); raw URLA attrs read THROUGH loan_file_uid, never stored. An allowlist reflection test locks this in structurally. - FK locked core BY ID: loan_file_uid + borrower_uid are plain Long columns (code-verified LoanFile.uid/Borrower.uid = Long unique_rowid; doc's UUID wrong) **************** NO @ManyToOne. loan_scenario_id = internal UUID FK. - (loan_scenario_id, borrower_uid) DB-unique natural key (one borrower per scenario; entity-declared, no raw DDL). - Derived ratios/scores DECIMAL(18,6) matching **************** county dollar limit DECIMAL(18,2). Both MUTABLE (no WORM — reproducibility is frozen later on the immutable PricingRun/Result). - All indexes entity-declared (no KamoInitializer SchemaCleanupRunner DDL). - 4 tests green (Long-id String serialization + FK-don't-recopy allowlist). Grounded by a research Workflow (code-verified locked FK types) + adversarial 2-agent review (SHIP-AS-IS; applied the allowlist-test + docstring fixes).