Back to changelog

April 24, 2026

Healing inbox + account surfaces

healingteamapi-keysbilling

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.