Release notes
Superset desktop-v1.21.0
What's Changed
- chore(desktop): bump version to 1.20.2 by @Kitenite in https://github.com/superset-sh/superset/pull/6322
- fix(deps): sync bun.lock with the nanoid 6.0.0 bump from #6104 by @AviPeltz in https://github.com/superset-sh/superset/pull/6324
- fix(desktop): ship chat-runtime migrations + Claude SDK binary path to host-service by @saddlepaddle in https://github.com/superset-sh/superset/pull/6217
- feat(email): unified email layout system + activation email sequence by @saddlepaddle in https://github.com/superset-sh/superset/pull/5938
- feat(docs): widen sidebar text halo with smooth fade-out by @Kitenite in https://github.com/superset-sh/superset/pull/6332
- fix(api): resolve owner's relay when dispatching automations by @saddlepaddle in https://github.com/superset-sh/superset/pull/6337
- feat(marketing): Linear-style hero demo remapped to value-prop pillars by @Kitenite in https://github.com/superset-sh/superset/pull/6336
- feat(marketing): redesign join-us page with mission-first copy and WaaS embed by @Kitenite in https://github.com/superset-sh/superset/pull/6338
- refactor(host-service,desktop): consolidate terminal session listing into terminal.list by @saddlepaddle in https://github.com/superset-sh/superset/pull/6341
- fix(relay): resolve the flagged relay in every consumer by @saddlepaddle in https://github.com/superset-sh/superset/pull/6340
- fix(host-service): stop hot-looping git spawns on workspaces whose worktree dir is gone by @Kitenite in https://github.com/superset-sh/superset/pull/6334
- feat(api,desktop,trpc): client version header + per-procedure telemetry by @saddlepaddle in https://github.com/superset-sh/superset/pull/6331
- fix(desktop): stop workspace delete from crash-remounting the renderer via stale v1 routes by @Kitenite in https://github.com/superset-sh/superset/pull/6353
- refactor(desktop): loop-proof route redirects and contain content crashes by @Kitenite in https://github.com/superset-sh/superset/pull/6354
- fix(marketing): align join-us hero width and theme the WaaS embed by @Kitenite in https://github.com/superset-sh/superset/pull/6357
- fix(api,auth): surface cancellation reason and customer email in billing Slack alerts by @Kitenite in https://github.com/superset-sh/superset/pull/6358
- feat(marketing): pricing page and copy improvements by @Kitenite in https://github.com/superset-sh/superset/pull/6355
- fix(host-service): stop gh open-PR sweep dying on >1MB payloads and hot-looping on failure by @Kitenite in https://github.com/superset-sh/superset/pull/6335
- fix(relay2): liveness sweep for hosts that vanish without a close event by @saddlepaddle in https://github.com/superset-sh/superset/pull/6362
- fix(marketing): clip feature demos on mobile, in-flow hiring pill, align hero caret by @Kitenite in https://github.com/superset-sh/superset/pull/6365
- feat(ui): add @mention and /command suggestions to ChatComposer by @saddlepaddle in https://github.com/superset-sh/superset/pull/6225
- fix(desktop): stop workspaces list from swapping to the new-workspace screen by @saddlepaddle in https://github.com/superset-sh/superset/pull/6361
- feat(relay2): serve host presence from the Durable Object, drop DB presence writes by @saddlepaddle in https://github.com/superset-sh/superset/pull/6371
- fix(api): sync-presence may only flip hosts online, never offline by @saddlepaddle in https://github.com/superset-sh/superset/pull/6368
- feat(desktop,mobile): read host presence live from the relay by @saddlepaddle in https://github.com/superset-sh/superset/pull/6372
- feat(desktop): drag-and-drop pinning in the v2 sidebar by @Kitenite in https://github.com/superset-sh/superset/pull/6364
- perf(desktop): cut sidebar hover and polling render fan-out by @Kitenite in https://github.com/superset-sh/superset/pull/6377
- feat(desktop,mobile,trpc): replace Electric sync with plain tRPC + React Query by @saddlepaddle in https://github.com/superset-sh/superset/pull/6328
- fix(host-service): classify worktree-gone terminal failures as NOT_FOUND by @saddlepaddle in https://github.com/superset-sh/superset/pull/6387
- fix(desktop): classify ENOENT spawn failures as PRECONDITION_FAILED, not 500 by @saddlepaddle in https://github.com/superset-sh/superset/pull/6388
- fix(host-service): classify expected GitHub auth and 404 outcomes as non-500s by @saddlepaddle in https://github.com/superset-sh/superset/pull/6389
- fix(host-service): guard upgrade sockets in the desktop entrypoint against peer resets by @saddlepaddle in https://github.com/superset-sh/superset/pull/6390
- docs: weekly update for PRs merged 2026-08-05 to 2026-08-12 by @Kitenite in https://github.com/superset-sh/superset/pull/6391
- fix(desktop): keep the PR badge (merge chevron) from clipping in the right sidebar's mid-width dead zone by @andyst-dev in https://github.com/superset-sh/superset/pull/6386
- feat(relay2): typed close codes and Sentry exception capture by @saddlepaddle in https://github.com/superset-sh/superset/pull/6394
- feat(mobile,auth): add Sign in with Apple by @saddlepaddle in https://github.com/superset-sh/superset/pull/6392
- chore: drop dead EXPO_PUBLIC_ELECTRIC_URL from env examples by @saddlepaddle in https://github.com/superset-sh/superset/pull/6393
- chore(relay): drop Sentry from the deprecated v1 relay by @saddlepaddle in https://github.com/superset-sh/superset/pull/6396
- docs(readme): animated feature demos, targeted screenshots, and a CLI cell by @Kitenite in https://github.com/superset-sh/superset/pull/6378
- fix(host-service,shared): stop preset launches stalling 15s and silently losing typed commands across shell setups by @Kitenite in https://github.com/superset-sh/superset/pull/6367
- perf(host-service,workspace-fs): exclude gitignored build dirs from sidebar file tracking by @Kitenite in https://github.com/superset-sh/superset/pull/6379
- fix(desktop): retry terminal attach after transient server errors by @Kitenite in https://github.com/superset-sh/superset/pull/6399
…