KamoCRM

[08] ReconciledFactPublisher — los.pipeline.fact publish seam (D34)

FeatureSecurityService
Shipped
4 ஜூலை, 2026 அன்று 10:28 AM UTC
Author
Kamo
Commit
c2c68c0

doc 08 §3.3: the locked **************** must not gain a NATS publisher (that edits donotmodify). Add a non-locked ReconciledFactPublisher wrapper that reconciles, then on a non-zero change count emits los.pipeline.fact.<orgId> on the existing LOS_PIPELINE stream (los.pipeline.> already binds it — no new stream/ table), so the readiness loop can fire. Repoint the sole caller (MortgageConnectController's reconcile endpoint) at the wrapper; the locked service is untouched. Placement (D34): co-located in SecurityService with its only current caller, not in MLOSCapitalMarketsService as §3.3 tentatively suggested (that assumed an RCE-side caller that does not exist yet). The mandated invariant — never publish from inside the locked service — holds either way. Best-effort like LosPipelinePublisher: absent NATS or a publish failure is logged + swallowed, the count is still returned. 4 tests green.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing