Skip to main content
Estado: Propuesto · Refs: DEC-E1..E8, standards/notifications.md
Traducción. Autoritativo: ../../adr/adr-019-notification-cascade.md.

Decisión

La resolución de canal es una función pura de core sobre cuatro niveles de configuración (plataforma → tenant → módulo → tipo de evento) más las compuertas del destinatario (consentimiento, supresión, preferencias, quiet hours y caps para marketing). Los adaptadores (NotificationChannelPort) solo entregan. Los canales llegan como filas de catálogo y puertos desde el día 1; los adaptadores aterrizan por fase (email, in-app y webhook, push en F1a-F1b; SMS en F1b tras el ADR del proveedor; whatsapp y live_activity en F2). Trazabilidad completa por correlation_id + send_status_history. Fallback entre canales: F2, configurable por evento (anotado, no construido).

Consecuencias

  • Todo módulo gana notificaciones multicanal por configuración, no por código. + Un solo lugar donde razonar sobre las compuertas de cumplimiento. − La superficie de configuración necesita buena UX de consola (F1b).