- Ya
- 27 Juni 2026, 19:48 UTC
- Mwandishi
- Kamo
- Ahadi ya
- e8d78ce
The atomic prior-window close the MLOSCatalogService bootstrap bundle writer deferred. Publishing a new rate-sheet version for an existing (org, investor) scope now closes the predecessor (ACTIVE→SUPERSEDED + effective_until = successor.effective_from), links the successor (supersedes_id, next intraday sequence_no) and flushes the prior's close BEFORE the candidate INSERT — Hibernate orders INSERTs before UPDATEs in a flush, so saveAndFlush(prior) is required to avoid a self-inflicted ux_rate_sheet_version_active partial-unique violation. Shared-lib @Component gated mlos.catalog.enabled (the EffectiveVersionResolver sibling pattern); the close is WORM-legal by construction against the entity's @PreUpdate guard. 15 no-DB tests (Mockito) incl. flush-order InOrder + WORM-guard re-run. 2-agent adversarial review → FIX_THEN_SHIP (1 must-fix applied: sourceDocumentId validated up front → clean 400, not a post-side-effect 500). No new entity/table/repo-interface → no KamoInitializer run.