open-design-v0.20.2

mahimailabs/voicegatewayopen-design-v0.20.2Aug 21, 2026by github-actions[bot]

AI Summary

Open Design 0.20.2 optimizes export performance to complete in under a minute, improves HTML preview persistence, and fixes pricing and entitlement logic to display accurate plan information.

Key Highlights

  • A stuck export now takes under a minute instead of ten, delivering the image or PDF even if a resource fails to load.
  • Come back to an open HTML preview and it's still where you left it, preserving scroll and edits.
  • First-run setup only completes once a connection test passes, preventing dead-end setups.
  • Pricing page localization is consistent, and 'Unlimited' badges now correctly reflect actual entitlements.

Full Release Notes

⚑ **Production exports now finish in under a minute: when a font or an image in
your work never comes back, Open Design no longer holds the whole pipeline for
ten minutes β€” it stops waiting and delivers the image or PDF anyway.** An HTML
preview you already opened keeps its state, and first-run setup only lets you
continue once it really connects. Alongside that, the pricing, entitlement
badges and upgrade paths that shipped with Go Plan got a careful calibration
pass, so what plan you're on, where you can go from it, and where a click will
take you all read honestly.

## ⚑ Performance & reliability

- πŸ“€ **A stuck export now takes under a minute instead of ten.** When a font or
  an image in your work never loads, Open Design stops waiting on it and
  finishes the image or PDF anyway. Work that loads normally still exports at
  full quality, and a genuine failure now names its reason so you can act on it.
  (#7182) Thanks @lefarcen.

- πŸ–₯️ **Come back to an open HTML preview and it's still where you left it.**
  Switching projects, switching file tabs and toggling Preview/Code no longer
  trigger a blank flash or a full reload β€” scroll position, live documents and
  your edits survive, and text changes show up the moment you save. (#7156)
  Thanks @lefarcen.

- βœ… **A run that produced files is no longer reported as producing nothing.**
  When the browser doesn't finish syncing files in time, Open Design trusts what
  the daemon confirmed was delivered. Runs that genuinely produced nothing still
  show the original error. (#5750) Thanks @ferrarifankid04.

- 🧩 **Interactive scripts in a project preview survive URL rewriting.** Inline
  scripts are delivered untouched while CSS and other assets stay
  workspace-scoped, so script-driven interactive previews actually run. (#6938)
  Thanks @mturac.

## πŸ› Fixed

### First-run setup

- 🚦 **"Continue" now means you are actually ready to continue.** Picking a local
  CLI during first-run setup keeps the button inert until the CLI is detected.
  With BYOK, filling in the key, base URL and model runs a real connection test
  on click β€” a failure or a rate limit keeps you on the page with an actionable
  error, and setup only completes once the test passes. (#7164)
  Thanks @alchemistklk.

### Pricing, plans & upgrades

- 🌐 **The language you enter Pricing in is the language you stay in.** The
  locale the app hands over now applies before the page paints, instead of
  flashing the wrong one first. Direct visits without an explicit locale still
  follow your browser and saved preference. (#7197) Thanks @Siri-Ray.

- ↩️ **Checkout returns you to the Cloud Console you came from.** Pricing
  handoffs from test, feature-validation and local environments come back to
  their own entry point instead of landing in production. An invalid target
  shows a localized error and disables checkout rather than silently falling
  back. (#7219) Thanks @nettee.

- ⬆️ **Your current plan, and where you can go from it, read at a glance.** The
  plan you're on is marked Current plan, anything below it is no longer
  clickable, and higher tiers keep their upgrade entry. Savings amounts, model
  order, the status column, the recommended accent and the monthly/annual toggle
  all match the approved design. (#7191, #7222) Thanks @Siri-Ray.

- ♾️ **"Unlimited" only appears on models your plan actually includes.** Go,
  Plus, Pro and Max badge according to their own entitlements; Team workspaces
  no longer inherit a personal plan's badge, and BYOK no longer claims
  platform-side unlimited use. A subscriber whose balance is exactly zero stops
  seeing a balance chip they can't act on, while overdrafts, free plans and Team
  still surface the balance that needs attention. (#7190, #7202, #7196)
  Thanks @lefarcen, @Siri-Ray.

- The low-balance dialog's action buttons return to a consistent visual
  hierarchy. (#7138)

### Interface & navigation

- ⬇️ **The update button stops crowding the account capsule.** Once a new version
  finishes downloading, the green update button appears as its own control to
  the right of the avatar/balance capsule, so the account menu and the update
  action stay in their own places. (#7237) Thanks @Siri-Ray.

- πŸ”” **The message center is a plain list again.** Read and unread messages share
  one view with no filter tabs; unread items carry a compact dot, and opening one
  still marks just that message read. (#7231) Thanks @Siri-Ray.

- πŸ”— **Community links live at the bottom of the nav rail.** Social links moved
  out of the account menu into the footer of Home's navigation β€” the Chinese
  interface shows the Feishu group, other languages show Discord, and X and email
  stay the same. (#7232) Thanks @alchemistklk.

## 🌐 Website

- The homepage's first screen and capsule header got a round of tightening: a
  clearer brand claim, lighter capability chips, more restrained CTAs, and a
  video demo that loads on click. Visitors who already clicked download stop
  being prompted again. (#7178, #7186) Thanks @joeylee12629-star.
- Chinese visitors get a Feishu community entry while other languages keep
  Discord, and the event recap pages are localized. (#7120, #7119)
- The product menu now carries the Codex Plugin entry, and the DeepSeek Harness
  guide switches to a per-platform one-line installer with a more direct
  getting-started flow. (#7139) Thanks @joeylee12629-star.

## πŸ™ Thanks to everyone who shipped 0.20.2

@alchemistklk Β· @ferrarifankid04 Β· @joeylee12629-star Β· @lefarcen Β· @mturac Β·
@nettee Β· @PerishCode Β· @Siri-Ray