Changelog

What changed, when. Every entry is a markdown file in the repo, rendered by the same shared reader every product uses.

  1. 0.2.02026-09-19

    The wand takes notes.

    What's new in 0.2.0:

    The magic wand (AiReviseField)

    • A second button opens a one-line note. Tell the AI what to change, and the instruction reaches your onRevise(current, instruction) on its own, instead of being guessed from the field's text. The sparkle click and ⌘J work exactly as before.
    • Unlimited undo and redo through every AI rewrite. A hand edit made after a rewrite survives stepping back.
    • AiReviseErrorProvider routes the wand's failures into your own notification surface. Without it, errors toast as before.
    • planer's title wand uses the note: "shorter" or "no puns" goes to the title prompt, never into your draft.

    Security

    • Next.js 16.3.5, closing two critical remote-code-execution advisories.
    • planer enforces the MFA step-up on its workbench.
    • cutlist's free-plan cap can no longer be bypassed.

    Billing and platform

    • BillingRedirectButton and useBillingRedirect: one checkout-and-portal redirect loop for every product.
    • A Stripe webhook whose handler failed is retried, not written off as a duplicate.
    • Deleting an org cancels its Stripe subscriptions without tripping over comped or already-dead ones.
    • secrets: an AES-256-GCM helper for keeping third-party OAuth tokens encrypted at rest.
    • Org invites gain extension points for product-specific flows.
    • Clean tenant URLs keep their query string through the rewrite.

    SEO

    • Every page gets a self-referencing canonical by default, and sitemaps carry each page's real content date.

    Upgrading: the wand change is backward compatible. Existing onRevise handlers simply ignore the new instruction argument.

  2. 0.1.02026-08-03

    First cut.

    What ships in 0.1.0:

    • One Next.js app carrying three products, each on its own domain.
    • Shared auth with MFA, org invites, and account lifecycle.
    • Shared Stripe billing with a test-mode harness and scenario suite.
    • Multi-tenant core: host to tenant proxy, brand rows, per-product CSP.
    • AI layer with model tiers, streaming, and a usage ledger.
    • Three worked products: studio (this site), cutlist (billing) and planer (streaming AI).
    • Docs, recipes, AGENTS.md, and skills so an agent can run the setup.
Changelog · millroom