Changelog

The latest updates, improvements, and fixes to Your Next Store. Subscribe via RSS.

· v1.309

Unify Generic 404 Pages

Other Features

  • analytics: Conversion funnel from visitors to orders
  • coupons: Protect the welcome-offer shared coupon and sync its code snapshot
  • feedback: Add a watchdog for stuck design sessions
  • feedback: Add shared staleness rules for design sessions
  • newsletter: Double opt-in confirmation for new subscribers
  • newsletter: Expiry reminder emails for welcome coupons
  • storefront: Auto-apply discount codes from ?discount links
  • store: Soft-delete stores instead of hard-deleting
  • subscribers: Attribution and welcome coupon in the detail sidebar
  • subscribers: Source badge and filter on the list
  • ui: Add a reusable CountryFlag component
  • ui: Show flags in every country picker
Fixes14
  • [admin]Reflect the actual prefix in the welcome-code example hint
  • [analytics]Make locked traffic widgets legible instead of blurred
  • [analytics]Return 204 for beacons from unresolvable store domains
  • [api]Stop /v1/me leaking the full store row
  • [billing]Re-sync store plan name from the billed Stripe price on renewal
  • [billing]Re-sync the plan name on subscription webhooks
  • [design]Let merchants escape a stalled design session
  • [newsletter]Record signup attribution
  • [shipping]Compact country selector
  • [store]Narrow @vercel/sdk deployment response unions
  • [subscribers]Keep the sidebar on screen and polish the list
  • [subscribers]Render detail links on hard loads
  • [subscribers]Sort the list newest-first
  • [support]Prevent double-sent replies and speed up submit
· v1.308

Expose WelcomeOffer In The Settings Endpoint

Other Features

  • builder: Paste clipboard files into the design chat
  • search: Make storefront product search typo-tolerant
Fixes11
  • [admin]Stop the welcome offer form reverting after save
  • [admin]Surface the welcome offer form on the newsletter module page
  • [builder]Force the branch switch when forking a template
  • [checkout]Stop 500 when the cart cookie is missing
  • [cron]Extend WAL job timeout to 300s
  • [elliot]Allow to paste images from clipboard
  • [furgonetka]Retry transient auto-fulfilment failures
  • [products]Accept legacy empty-object variant attributes
  • [settings]Salvage store settings when one field fails validation
  • [store]Surface domain-lookup DB errors instead of [object Object]
  • [test]Full-surface cart-cookies mock in checkoutActions test
· v1.307

Welcome Offer Settings Form And Popup Success S...

Other Features

  • analytics: Add first-party storefront view tracking
  • analytics: Plan-gated traffic widgets on the dashboard
  • analytics: Roll up raw storefront events into daily tables
  • checkout: Add Frame Payments as embedded card provider
  • checkout: Unify parcel-picker selection animation across carriers
  • create: Generate store meta description from creation prompt
  • design: Route quick edits through a fast-model subagent
  • furgonetka: Alert merchants when OAuth refresh fails
  • furgonetka: Native pickup-point list with map demoted to a tab
  • furgonetka: Share one search input across the list and map tabs
  • newsletter: Auto-send a welcome discount to new subscribers
  • onboarding: Require a pickup address before launch
  • products: Popularity badges on the admin products list
  • settings: Redesign general store form
  • Unify store publishing routes and improve state managmenet

Reverts

  • Remove "use client" from shadcn Slot-based components
Fixes28
  • [analytics]Whitelist /api/t in the proxy matcher
  • [billing]Price each step from the gateway's reported cost
  • [checkout]Unify Furgonetka point display between list and map picks
  • [checkout]Update the unavailable-checkout copy for the redesigned empty state
  • [design]Add storefront setup CTA, drop dead pending-creation flow
  • [elliot]Detect wedged runs and restore context when a session is replaced
  • [elliot]Drop maxReconnectAttempts from eve Client options
  • [elliot]Stop /design prompts from bouncing to the manage chat
  • [furgonetka]Harden the map embed's script-loading window
  • [furgonetka]Instantiate the map embed at the container's settled size
  • [furgonetka]Only anchor the map widget when the buyer's city is known
  • [furgonetka]Platform Map API key for admin picker
  • [furgonetka]Port the admin sender picker to the new point picker
  • [furgonetka]Rebuild the map onto a fresh host, un-share the search input
  • [furgonetka]Repair admin shipment panel i18n and redesign its UX
  • [furgonetka]Route /api/furgonetka-points through the domain proxy
  • [furgonetka]Serve the points route under /checkout so template stores reach it
  • [furgonetka]Widen the picker dialog while the map tab is active
  • [inbox]Use update-mode revalidation in markAsRead DAOs
  • [inpost,gls]Serve the points routes under /checkout like Furgonetka's
  • [newsletters]Allow sending a campaign without saving first
  • [order]Keep the withdrawal link from dead-ending (db8ce16), closes
  • [orders]Notify the customer when an order status changes
  • [publish]Close gaps found reviewing the publish pipeline
  • [stripe]Refresh connected account on requirement webhooks
  • [ui]Add missing "use client" to shadcn components using Slot
  • Update ratchet
  • Warning
· v1.306

Add A Back Link To The Product Edit Tab Bar

Queue Prompts Typed While A Turn Is Running

Fixes4
  • [addons]Compact Furgonetka settings
  • [addons]Refine Furgonetka settings drawer
  • [admin]Render Image Studio thumbnails from arbitrary hosts
  • [elliot]Unstick queue draining and rebuild queue UI on ai-elements
· v1.305

Add Placement To APISubscriberCreateBody

Other Features

  • api: Order-scoped shipment and label endpoints
  • billing: Gate Elliot turn starts on credit balance
  • builder: Offer a publish retry for stores stranded on Coming Soon
  • builder: Show publish status in the version history
  • checkout: Promote the preferred carrier's shipping methods
  • inpost: Add configurable origin lockers
  • inpost: Fallback parcel size setting and suggestion in the shipment form
  • inpost: Persist shipment parameters on the order
  • inpost: Suggest the locker parcel size from product dimensions
  • seo: Serve noindex for non-live stores instead of blocking crawl
  • shipping: Clarify carrier routes in order sidebar
  • shipping: Redesign the order-sidebar shipment UI
  • storefront: Auto-refresh the Coming Soon page
  • subscribers: Track signup placement (which form/page drove it)
Fixes1
  • Persist Elliot chats started in AI builder
· v1.304

Add EParagon Receipts + KSeF/eParagon Toggles T...

Other Features

  • admin: Add eparagony.pl KSeF e-invoice addon
  • admin: Show eparagony document status on order detail
  • api: Add public availability-notifications endpoint
  • api: Addon management endpoints for GLS, InPost and Furgonetka
  • api: Carrier addon linkage for shipping methods
  • checkout: Appearance controls for policy links, wallets, and font
  • checkout: GLS Szybka Paczka parcel-shop picker
  • checkout: InPost Paczkomat locker picker
  • checkout: Native search-first InPost locker picker and shipping row redesign
  • checkout: Native two-tab GLS parcel-shop picker
  • checkout: Polish shipping row and pickup point pickers
  • checkout: Provision shopper accounts from the save-my-info opt-in
  • checkout: Wire inset fields, footer bar, wallets flag, and save-info
  • gls: Addon connect flow and shipment actions
  • gls: ADE-Plus SOAP transport and fulfillment core
  • gls: Manual shipment creation and labels in the order sidebar
  • gls: Parcel-shop search API for the checkout picker
  • gls: Track & Trace status polling workflow
  • inpost: Locker search API for the checkout picker
  • inpost: Manual shipment creation and on-demand labels in the order sidebar
  • inpost: Rebuild the InPost addon on ShipX v1
  • inpost: Tracking webhook
  • ui: Shopify-style inset field variant for checkout inputs
Fixes12
  • [admin]Correct eparagony sandbox host + document payload issues
  • [admin]Normalize eparagony merchantTIN like consumerTIN
  • [admin]Use chat icon for Elliot sidebar entry
  • [blog]Repair media previews and cover "Change" button
  • [image-studio]Serve previews via image optimizer (YEX-202)
  • [images]Guide agents to attach generated photos to products
  • [inpost]Don't let a junk legacy env hide valid sibling credentials
  • [inpost]Improve locker search matching precision
  • [inpost]Repair the checkout Geowidget picker
  • [inpost]Type the webhook test context with ctxFor
  • [inpost]Use correct geowidget embed API in shipment form
  • [storefront]Use .slice().sort() instead of .toSorted() for browser compat (YNS-1152)
· v1.303

Append A Support Reference To Masked Server Errors

Other Features

  • admin: Checkout appearance editor with live preview
  • api-keys: Single persistent YNS Vercel Key per store
  • checkout: Add address autocomplete via Google Places
  • checkout: Redesign into a split layout with wallets, ETAs, and appearance settings
  • create: Redesign the store-creation error screen
  • elliot: Add bun to sandbox snapshot
  • health: Post-deploy module-eval probe + tests pinning the create/publish flows
  • settings: Redesign the API settings page

Reverts

  • cron: Drop WAL maxDuration cap
  • db: Drop Neon pool tuning
Fixes18
  • [admin]Reload stale clients instead of retry-looping server actions
  • [api]Let store operators read drafts by product slug
  • [builder]Wire ProductGrid Suspense via config, drop prepare failPhase change
  • [cart]Handle re-adding a bundle instead of 500ing on the unique index
  • [cron]Add maxDuration to WAL cron to prevent 504 timeouts
  • [db]Configure Neon pool timeouts for serverless resilience
  • [db]Retry transient Neon HTTP failures at the fetch layer
  • [deps]Dedupe prosemirror-model to a single version
  • [deps]Pin typescript back to 6.0.3
  • [nav]Pin the checkout nav to a fixed height
  • [perf]Slim categoryGetBySlug product columns to reduce RSC payload
  • [proxy]Add missing redirect for /product-tag/kapturek-zimowy/
  • [sandbox]Report Vercel 404 as already-deleted without mislabeling real deletions
  • [storefront]Add Suspense boundary to ProductGrid block
  • [store]Stop minting the unusable Auto-generated API Key
  • [test-elliot]Stop headless harness hanging after tool turns
  • [vercel]Mark not_modified alias errors as expected
  • [workflow]Make commitToolbarInjectionStep fail fatally on all sandbox errors
· v1.302

Add Elliot To Sidebar With Beta Badge

Other Features

  • admin: Add full-page search at /manage/search
  • admin: Add per-store recent search history
  • admin: Add test-mode edge indicator with info popover
  • admin: Move search trigger beside store switcher, link cmd-k to page
  • allegro: Actionable publish errors, category paths, readiness checklist
  • allegro: Bidirectional stock sync — close the oversell loop
  • allegro: Merchant failure alerts, publish preferences, GPSR safety info
  • allegro: Persistent in-form rejection list + parameter prefill from product data
  • api: Accept seo overrides on product create and update
  • create: Auto-publish template stores at their subdomain
  • Elliot: Add / commands for skills
  • elliot: Add autoPublush and deploying state to onboarding
  • elliot: Implement email and slack based communication channels
  • elliot: Introduce grow-store orchestrator skill as well as point solution marketing skills
  • elliot: Linear-style floating Elliot chat across the admin
  • elliot: Resolve Slack store per conversation with a picker
  • elliot: Show storefront provisioning progress after create_store
  • i18n: Add generated key type map and catalog check script
  • Improve tool call display
  • products: Show the product name as the edit-page title
  • tooling: Add convention enforcement gates (YNS-1527)
Fixes23
  • [admin]Clarify credits pill, modules button, and store-link labels
  • [admin]Match command palette density to sidebar
  • [admin]Restore address-form translations in manage payload
  • [admin]Reword "successfully" feedback to terse past-tense (YNS-1531)
  • [admin]Unify setup progress into a steps-to-launch count
  • [ai-test]Pin JS TypeScript for zod-to-ts under native TS7
  • [allegro]Surface Allegro API rejections in the publish toast
  • [bin]Port add-deploy-key script off removed ssh2 dependency
  • [build]Replace ssh2 with node:crypto for deploy key generation
  • [cache]Satisfy expire >= revalidate in custom cacheLife profiles
  • [db]Exclude chat_state_* tables from db:push
  • [deps]Downgrade typescript from 7.0.2 to 6.0.3
  • [deps]Pin next to canary.80 and eve to 0.22.1
  • Downgrade eve to 0.22.1 to make sure the app builds in prod
  • [elliot]Narrow create_store response on storeId not optional error
  • [elliot]Switch to adaptive thinking for anthropic models and discourage overthinking
  • Revert eve update and update next to canary.82
  • Revert typescript packages to 6.0.3
  • [tooling]Exclude generated files from convention ratchet
  • [ui]Dedupe lucide icon imports in carousel
  • [builder]Fail fast and delete half-wired forks on provision errors
  • [build]Trace sandbox agent assets into every function
  • [design]Don't flag benign image-404 log lines as a dev server crash
· v1.301

Span Contact-form Submissions In The Messages I...

Other Features

  • api: Add store-key publish endpoint
  • builder: Dispatch annotations directly from the chat composer
  • builder: Drive in-iframe annotation pins via the new wire contract
  • builder: Merge element selection into one blue annotation mode
  • builder: Move clone and feedback self-check agents to Sonnet 5
  • builder: Render annotation batches as a compact card in the chat
  • builder: Render annotation batches as a compact card in the chat
  • builder: Render error reports DevTools-style in the chat
  • builder: Switch the /design agent to Claude Sonnet 5
  • contact-messages: Route merchant notifications by storefront-assigned routingKey
  • design: Fold task review into the design-session collecting hub
  • design: Silent sandbox auto-wake, single button-free wake UX
  • elliot: Add product images creation to elliot onboarding
  • elliot: File bug/feature reports into Linear (c8c9dca), closes #customer-support
  • elliot: Further improvements to onboarding flow
Fixes13
  • [agent]Don't post issue reports to Slack outside production (e90f286), closes
  • [api]Publish status segment must not match the UUID param guard
  • [builder]Allow ending a feedback session while collecting annotations
  • [builder]De-jargon sandbox wake-up message
  • [builder]Re-broadcast annotation pins after iframe load
  • [builder]Restore toast-style error report styling
  • [builder]Self-heal zombie sandbox records in ensureSandboxAlive
  • [builder]Stop showing a Stop button while the socket is connecting
  • [deps]Pin esbuild to one version across the tree
  • [dev]Use per-boot deploymentId to cache-bust dev chunks
  • [elliot]Minor UX improvements
  • [feedback]Fail prepare sessions terminally, isolate prepare sandboxes
  • [test]Avoid unsafe optional chaining in event DAO tests
· v1.300

Allow Custom Domains On Stores Without A Builde...

Other Features

  • elliot: Human approvals for destructive ops with a friendlier card
  • elliot: Improve tool use UX
  • elliot: Onboarding flow prompt and tone of voice improvements, model changed to sonnet 5
  • i18n: Add admin hardcoded-string audit with build-time regression guard
  • i18n: Add admin translation keys for manage and design surfaces
  • i18n: Add admin.design translation keys
  • i18n: Add chatbot header/trigger/thread translation keys
  • i18n: Translate /design page chrome and preview toolbar
  • i18n: Translate admin home dashboard
  • i18n: Translate admin shell and layout chrome
  • i18n: Translate blog, loyalty, newsletters, and marketing areas
  • i18n: Translate builder chat composer and message rendering
  • i18n: Translate builder chat content and feedback session lock
  • i18n: Translate builder comments, design session, and panels
  • i18n: Translate builder file explorer
  • i18n: Translate builder site header, share, and comment input
  • i18n: Translate chatbot input and message list
  • i18n: Translate chatbot workspace, mentions, and sidebar
  • i18n: Translate customers, orders, coupons, invoices, and carts
  • i18n: Translate design builder chrome and store builder settings
  • i18n: Translate products, categories, brands, and inventory
  • i18n: Translate remaining admin surfaces
  • i18n: Translate sandbox creation loading slides
  • i18n: Translate store settings and domain management
Fixes11
  • Add version-skew protection
  • [admin]Keep server-only whats-new code out of the client bundle
  • [api]Derive store from session when minting API keys
  • [chatbot]Format money via formatMoney to stop 100x inflation
  • [checkout]Derive isPaid from Stripe instead of trusting the client
  • [checkout]Verify address ownership before attaching to cart
  • [create]Wrap onboarding routes in IntlClientProvider
  • [domains]Remove www counterpart redirect before its target domain
  • [elliot]Catch reopened chats up with the durable eve journal
  • [orders]Tolerate legacy snapshots missing originalPrice
  • [orders]Type test snapshot from the order schema