Skip to content

Release notes

What shipped,when, and why.

Every release, grouped by version. Features on top, fixes below, each bullet linked to the commit that introduced it. Generated automatically from the repository — no marketing spin, no missing entries.

v1.55.0

Features

  • analyticswire Google Ads conversion tracking to consent banner
  • channelsper-connection campaign bindings + every-Nth-post cadence for OAuth

Fixes

  • pluginstatus badge

v1.54.2

Fixes

  • channelsforwarder reliability + honest "skipped" chip + de/es/fr i18n

v1.54.1

Fixes

  • client/billingrebind cycle quota banner to token-based usage view

v1.54.0

Features

  • progressmark bypassed steps as Skipped and add a Channels tail step

v1.53.1

Fixes

  • channels/oauthland users on the right wp-admin URL after the OAuth dance
  • channelsstop coercing nanoid campaignIds to int across the stack
  • runsstop ephemeral generate-post runs from creating phantom campaign docs

v1.53.0

Features

  • billingmake per-tier campaign cap a per-license Stripe field

v1.52.4

Fixes

  • billing/catalog-synctolerate restricted keys without meter-read permission

v1.52.3

Fixes

  • clientstabilize single-post run page and refine timeline chips
  • subscriptionscancel standalone Channels item when plan now bundles it

v1.52.2

Fixes

  • billingrollup cron resolves planId/maxSites from the bound License
  • client,functionsaudience-aware plan labels in the wp-admin SPA
  • i18nwire audienceMissingOrInvalid in the contracts source
  • subscriptionsrequire explicit audience on Stripe plan products
  • web/billingsingle Stripe-portal funnel + audience-aware plan label

v1.52.1

Fixes

  • channels,billingOAuth redirect_uri + launch chrome + channels load race

v1.52.0

Features

  • clientuse website favicons on workspace-keys provider chips

v1.51.1

Fixes

  • clientper-row binding state on workspace keys + brand chips + reorder

v1.51.0

Features

  • plugin,clientcleanup + warn on disconnect, pin cross-license switch

Fixes

  • recent-posts widget cross-campaign leak + empty textModel synthesis crash

v1.50.1

Fixes

  • clientdrop the duplicate sync spinner on the Posts tab toolbar

v1.50.0

Features

  • channelsgate save+dispatch on entitlements; fix client agency conflation

v1.49.9

Fixes

  • client,plugindrop fabricated "up to 5,000 words" claim

v1.49.8

Fixes

  • clientmove 500-word help text below the post-length grid

v1.49.7

Fixes

  • aidowngrade non-active licenses to anonymous tier so None→Free→None keeps working

v1.49.6

Fixes

  • campaignshelp-text under 500-word cap + honest engine-ready gate for None/Free

v1.49.5

Fixes

  • campaignscap postLength input + form default at 500 for None tier (matches Free)