Wolverine Integration — Durable Outbox & Retry for Notifications
Granit.Notifications.Wolverine replaces the default in-process Channel<T> publisher with a durable IMessageBus-backed implementation. Notifications are persisted in the Wolverine outbox and survive application crashes.
[DependsOn(typeof(GranitNotificationsWolverineModule))]public class AppModule : GranitModule { }Local queues
Section titled “Local queues”The module configures two local queues:
| Queue | Message | Behavior |
|---|---|---|
notification-fanout | NotificationTrigger | Default parallelism |
notification-delivery | DeliverNotificationCommand | MaxParallelDeliveries (default 8) |
Retry policy
Section titled “Retry policy”Retry policy on NotificationDeliveryException:
| Attempt | Delay |
|---|---|
| 1 | 10 seconds |
| 2 | 1 minute |
| 3 | 5 minutes |
| 4 | 30 minutes |
| 5 | 2 hours |