OpenWPAgent

Of record · published as it ships

Changelog.

Every customer-visible change. Source of truth is CHANGELOG.md in the repo — this page is regenerated on every deploy.


2026-04-08
  • Resend event mirror — every delivery, bounce, open, and complaint Resend sends now writes to a local email_events table via a signed webhook, so /admin/email shows full history instead of just the last 100 live API rows. Cursor-paginated; 90-day retention via nightly cron.
  • Onboarding nudge email — orgs that sign up but don't connect a site or add a credential within 24 hours get a friendly one-shot reminder. Deterministic A/B variant assignment per user, performance visible at /admin/email/variants.
  • One-click unsubscribe — lifecycle emails carry an HMAC-signed footer link so recipients can opt out without signing in. Auto-stamps every active org the user owns so they're never nudged again.
  • Weekly deliverability digest — Monday 08:00 UTC Slack post with 7-day delivered / bounced / complained rates, week-over-week volume delta, and top-5 bounce addresses. Red header when bounce >2% or complaint >0.1%.
  • Bounce auto-suppression — hard bounces and complaints from the Resend webhook now write to a suppressed_emails table; future sends to those addresses are refused before they reach Resend. Protects sender reputation automatically.
  • Upcoming invoice line on /account/billing — live from Stripe's invoices.retrieveUpcoming, shows your next scheduled charge with amount and date. Graceful no-show if the subscription is cancelled.
  • Stripe Customer Portal config — dedicated branded configuration with plan switcher (Pro / Studio / Agency monthly + annual), immediate cancellation with proration, and an 8-option "reason for leaving" survey. Bootstrap script + setup doc at docs/STRIPE_PORTAL_SETUP.md.
  • Admin "Resend yesterday's digest" button on /admin/orgs/[orgId] — support reps can trigger an on-demand resend scoped to a single org, rate-limited to 10/hour/engineer.
  • Test digest + test nudge preview buttons on /account/notifications so any signed-in user can verify email deliverability against their own inbox without waiting for the cron. Force-variant buttons let QA flip between nudge A and B copy side-by-side.
  • 7-day deliverability KPIs on /admin/email — platform-wide delivery / bounce / complaint rates with a stacked-bar sparkline for daily volume.
  • Weekly executive summary email now ships Monday 09:00 UTC with week-over-week cost comparison and top-3 agents by spend.
  • Email preferences at /account/notifications — toggle each digest independently. Operational notices (payment declined, invitations) bypass the toggles.
  • Admin org drilldown at /admin/orgs/[orgId] plus a searchable /admin/orgs list with plan + status filters.
  • Per-agent budget caps — layer a spend limit on a specific agent on top of the org-wide cap. Surfaced on /account/health.
2026-04-07
  • Topup UI on /account/usage — buy one-off AI credit packs ($25 / $50 / $100 / $250) via Stripe Checkout when you hit your monthly cap.
  • Organization switcher in the account header — switch between orgs you belong to without signing out.
  • Budget exceeded → topup CTA surfaces inline when a manual agent run is refused. One click takes you to Stripe Checkout with a suggested amount pre-selected.
  • Daily digest email at 09:00 UTC summarizing yesterday's agent runs, cost, and errors.
2026-04-06
  • Phase 3 multi-tenancy — RLS across every per-org table, credential vault (AES-256-GCM), pairing flow, brain scoping by site_id.
  • WordPress plugin: Connect to Dashboard button — pair a site to an org in 3 clicks.
  • Danger zone at /account/danger-zone — GDPR-clean org deletion with Stripe cancellation, 7-day data export download, and a goodbye email.
  • Launch readiness probe at /api/launch-check + visual /account/launch-check page that auto-refreshes every 30s.
2026-04-05
  • Initial Phase 2 release: Pro/Studio/Agency licenses, Stripe Checkout + webhook + portal, WP.org plugin submission.

Want this in your feed reader? Subscribe to /changelog.rss.