KamoCRM

RateSheetVersionPublisher — doc 02 §6.5 effective-dating supersession

Featurekamo-shared-library
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.

Mabadiliko yote

Je, unaona nini kuhusu usafiri?

Kila kitu kinaingia kwenye tovuti yako mwenyewe. Anza kwenye mpango wa bure na usome ukurasa huu tena katika mwezi mmoja.

Kuwa Huru MileleMtazamo wa bei