KamoCRM

Consumer-side idempotency, DLQ + steward replay (Slice 2)

Featurekamo-shared-library
Ya
26 Juni 2026, 01:48 UTC
Mwandishi
Kamo
Ahadi ya
419acb5

Adds the reliability core that any MLOS consumer plugs into: ProcessedEvent dedup ledger (unique consumer_name+event_id) + MlosDeadLetter DLQ + MlosDeadLetterStatus; IdempotentEventProcessor (INSERT-or-skip dedup in the handler's tx so a failure rolls back the marker; dead-letters past maxAttempts instead of looping; deadLetterUnprocessable for unparseable poison); DeadLetterReplayer (re-enqueues a DEAD letter through the outbox as a NEW eventId with causationId lineage -> no msg_id-unique/dedup-window collision, marks REPLAYED). MlosEventEnvelope gains @Jacksonized for round-trip deserialization. New @Components share the mlos.outbox.enabled opt-in; repos are in the already-scanned package. Live AbstractMlosDurableConsumer (NATS subscription) deferred to its first concrete consumer.

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