Skip to content

Capture domain events and validate outbox delay options for sync SaveChanges callers#293

Merged
Vulthil merged 1 commit into
mainfrom
fix/outbox-sync-capture-and-validation
Jul 4, 2026
Merged

Capture domain events and validate outbox delay options for sync SaveChanges callers#293
Vulthil merged 1 commit into
mainfrom
fix/outbox-sync-capture-and-validation

Conversation

@Vulthil

@Vulthil Vulthil commented Jul 4, 2026

Copy link
Copy Markdown
Owner

Summary

  • DomainEventsToOutboxMessageSaveChangesInterceptor now also overrides the synchronous SavingChanges/SavedChanges EF Core hooks (previously only the async ones), so a bare synchronous SaveChanges() call captures domain events and wakes the relay identically to the async path instead of silently dropping them.
  • AddOutboxEngine now validates that MaxDelaySeconds is greater than or equal to OutboxProcessingDelaySeconds at startup, so a contradictory configuration (e.g. base delay 100s, max 1s) fails fast instead of silently clamping every poll delay to the max.

Verification

  • dotnet build on the full solution: 0 errors, PublicAPI analyzers green.
  • Full test runs (all green): Vulthil.SharedKernel.Outbox.Tests, Vulthil.SharedKernel.Outbox.EntityFrameworkCore.Tests.
  • Verified both new tests fail against the pre-fix code and pass once the fix is restored.

Backport to v1.0: no — adds public API (patch-ineligible).

@Vulthil
Vulthil merged commit caaa6d2 into main Jul 4, 2026
6 checks passed
@Vulthil
Vulthil deleted the fix/outbox-sync-capture-and-validation branch July 4, 2026 19:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant