April 24, 2026
Healing inbox + account surfaces
Four surfaces landed as one sub-project.
Healing inbox got filters (severity + walkthrough), cursor pagination, open/resolved tabs, 30-second
polling for new alerts, and a deep-link from every alert back to the exact step in the editor.
Team got a role popover, seat meter, destructive confirms, invite resend, and a proper invite email
(via Resend, with a log-only fallback for local dev). The page now marks the current user and blocks
self-removal.
API keys got a per-plan active-key cap (Free=1, Starter=5, Team=20), a reveal-once modal with
copy-to-clipboard and an "I've saved it" gate, and a show-revoked toggle.
Billing got the Stripe Customer Portal link (covers invoices, cancel, downgrade, payment-method),
a three-column plan comparison matrix, seat-quantity readback, walkthrough usage card, trial countdown,
and past-due recovery strip.
Shared infra that all four routes use: a `@healdemo/mailer` package with a Resend adapter + log-only
fallback, `sonner`-based toasts with A3-palette overrides, an `ActionResult<T>` return-type contract
for server actions, and a `ConfirmDialog` primitive for destructive confirms.