You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Platform notification system (product-wide): email + UI notices #99
Several products need member-facing notifications but cloud-api has no generic notification infrastructure (the auth email sender is purpose-built; no reusable template/helper exists). The workspace-slot lifecycle currently logs structured warnings only — members get no email when their workspace stops at period end, enters the deletion grace window, or is about to be deleted.
What
A small platform-level notification system covering all products (workspaces/slots, memberships, spaces, future ones):
A reusable email sender in cloud-api (template + recipient + product tag), built on the existing Resend client, with suppression-list respect.
Product-neutral event hooks so features request notifications without owning delivery: e.g. workspace.stops_at_period_end, workspace.grace_deletion_pending, workspace.deleted_after_grace.
UI inbox/banners as a later slice (start with email only).
First consumers
Workspace slot lifecycle: stop-at-period-end warning, grace-pending warning, final deletion notice (the free-workspace churn lifecycle needs the same three).
Membership dunning already has its own emails — migrate it onto the shared sender only if cheap.
Out of scope
Real-time channels (push/Discord) — later.
Per-product template ownership — each feature supplies copy.
Note: the workspace lifecycle emails (grace period started, 48h before deletion, and deleted) are being built now with the existing email client, ahead of this issue. When the notification system lands, they should be migrated onto it.
Activity
sre-helmcode commentedon Sep 30, 2026
Note: the workspace lifecycle emails (grace period started, 48h before deletion, and deleted) are being built now with the existing email client, ahead of this issue. When the notification system lands, they should be migrated onto it.