feat(notifications): user notifications, recipients, audiences and the bell API (phase a) #9

Merged
KofTwentyTwo merged 2 commits from feature/notifications-a-tables into develop 2026-10-13 15:09:02 +00:00
2 Commits
Author SHA1 Message Date
james.maesandClaude Opus 5.5 81407f88c0 chore: license headers on the new notification classes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 10:06:28 -05:00
james.maesandClaude Opus 5.5 4a94a23314 feat(notifications): user notifications, recipients, audiences and the bell API (phase a)
- alerts_notification (user notifications), alerts_notification_recipient
  (one row per user, read/dismissed) and alerts_notification_preference
  (per-category mute and email settings), with entities, changelog and
  test DDL.
- The delivery log becomes alerts_delivery and alerts_inbox_item is
  retired (guarded changesets 16-17); in-app alert delivery writes ALERT
  notifications and recipient rows.
- Audiences resolved at send time (all users, roles, permission, users)
  through a pluggable user directory; record actions Preview audience,
  Send now, Schedule and Retract; scheduled sends and retention purge in
  the delivery job.
- Bell API: summary with banners, a paged page endpoint with filters,
  read, unread and dismiss; alerts_recipient security key and
  alerts.notification.admin.
- NotificationSignal / NotificationAudience in the SPI stand-in, and the
  sink's notify.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 10:03:47 -05:00