882 B
882 B
| id | date | status | supersedes | superseded-by | affected-paths | affected-components | ||||
|---|---|---|---|---|---|---|---|---|---|---|
| 0003 | 2026-02-15 | Accepted |
|
|
0003 — Route all job notifications through central NotificationService
Context
Job handlers called notification code directly, causing tight coupling and inconsistent delivery.
Decision
All outbound notifications (webhooks, emails, events) routed through taskq.notifications.NotificationService. Handlers submit notification requests, not execute them directly.
Consequences
Decoupled handlers from notification details. Single place to change delivery policy or add retry logic to notifications. Slightly higher latency (service batches notifications).
Alternatives rejected
Pub/sub system rejected: overkill for current scale. Direct calls rejected: tight coupling.