v0.18.137 — unified contact touchpoints timeline
One append-only timeline per contact across WhatsApp, calls, email and SMS.
Read release notesv0.18.138 — Twenty CRM sync foundation
Per-workspace Twenty CRM settings and an idempotent sync ledger, in dry-run only.
Read release notesv0.18.139 — inbound call ingestion
Inbound calls now resolve to a customer record, creating one when the number is new.
Read release notesv0.18.140 — Twenty CRM backfill runbook
Canary-first operational plan for migrating contacts into Twenty, plus a read-only analyzer.
Read release notesv0.18.136 — RUM navigation-timing milestones
Record document navigation milestones so the pre-paint window is measurable instead of inferred.
Read release notesv0.18.133 — inbox RUM boot marks for FCP diagnosis
Emit shell/list/thread/cache RUM marks from navigationStart so /inbox FCP waterfalls are diagnosable (BORD-995 remaining instrumentation).
Read release notesv0.18.134 — inbox RUM long-tail forensics
Selection-relative deltas, hydrate path tags, and boot visibility/longtask companions so super-long /inbox loads are classifiable (BORD-995).
Read release notesv0.18.135 — inbox shell-first code-split
Defer selected-thread and secondary inbox panels out of the eager /inbox chunk so first paint parses list shell first (BORD-995).
Read release notesv0.18.130 — Pause Robot Full STOP
Pause Robot primary click is forever Full STOP, sticky across refresh races, and cancels in-flight GBCA draft floods into the composer.
Read release notesv0.18.131 — worker realtime capacity under campaign storms
Reserve true realtime worker capacity so campaign/status storms cannot starve inbound webhooks and replies.
Read release notesv0.18.132 — durable inbox template header media plane
Stop blank WhatsApp template header images in /inbox when Meta media ids expire; unify object-storage env re-pointing for MinIO/S3/Blob.
Read release notesv0.18.127 — Inbox Bio pane re-hydration fix
Fixes the Bio pane silently dropping Travio client context and contact attribute rows when switching conversations with the drawer already open.
Read release notesv0.18.128 — Inbox localStorage quota crash fix
Stops /inbox from crashing with QuotaExceededError on wedged browsers: the inbox persist write is now guarded with a slim-blob retry, and the unbounded persisted maps are capped.
Read release notesv0.18.105
Read release notesv0.18.107
Read release notesv0.18.108 — GB-Agent autosend stuck-violet timeout + retry cap
Per-workspace GBCA generation timeout and outbox retry cap with a client-side self-timeout safety net for the autosend / Draft-with-me violet 'thinking' cell.
Read release notesv0.18.109 — Inbox composer lifecycle
Clear stale responder drafts automatically and manually from the Inbox composer.
Read release notesv0.18.110 — Explainable amber cells
Every GB-Agent human-review handoff now shows the GBCA safety-trip reason, so operators know why a cell is amber.
Read release notesv0.18.114 — Leaner inbox message reads
Reduce database and network work for inbox previews and message history without changing what operators see.
Read release notesv0.18.115 — Fixed a crash accepting drafts with escaped punctuation
Accepting a GB-Agent draft whose text contained a backslash (e.g. a markdown-escaped star rating like 4\* or 5\*) could fail instead of sending. Fixed.
Read release notesv0.18.117 — Faster draft acceptance, more detail on review reasons
Accepting a long, unedited draft could silently hang for over a minute. Fixed. The review card also now shows exactly which safety rule was triggered for the most common review reason.
Read release notesv0.18.102 — durable inbox flags
Adds workspace inbox rules that flag matching inbound chats and send them to the top.
Read release notesv0.18.101 — bounded worker realtime wakeups
Prevents realtime outbox insert storms from bypassing worker concurrency and lane reservations.
Read release notesv0.18.100 — GB-Agent YOLO auto-send mode
Adds an explicit dangerous opt-in to auto-send eligible GB-Agent all-inbound drafts.
Read release notesv0.18.93 — Inbox at production scale: virtualized list, unread overlay, refresh union
Unread conversations are never cut off by the inbox window, the conversation list is virtualized for thousands of rows, and realtime refreshes no longer drop paged-in conversations.
Read release notesv0.18.95 — Wildix click-to-call in the inbox
GB operators can enable a Wildix click-to-call integration so visible inbox phone numbers start a server-side Wildix call without exposing the WMS token to the browser.
Read release notesv0.18.96 — release-only patch alignment
A release-only patch that advances Switchbord's displayed version and changelog after the latest green inbox and settings stabilization train.
Read release notesv0.18.98 — inbox thread cache staleness fix
Prevents selected inbox chats from showing stale or missing recent messages after switching between conversations.
Read release notesv0.18.99 — inbox Bio pane detail hydration
Restores rich client and contact context in the /inbox Bio pane for normally selected conversations.
Read release notesv0.18.81 — Website widget: GBCA AI replies (tawk.to replacement)
The website chat widget can now pipe visitor messages into your own GBCA AI agent — draft-for-review or full auto-send until a human takes over — plus live inbox delivery, unread badges, adaptive polling, and author labels in the visitor UI.
Read release notesv0.18.75 — Inbox stability: Draft-with-me freeze fix
Fixes the hard browser freeze when generating a Draft-with-me response, plus two related main-thread performance hardenings in the inbox.
Read release notesv0.18.52 — Inbox contact attributes
The inbox Info bio pane now shows populated workspace-defined contact attributes without leaking them into list/cache paths.
Read release notesv0.18.15 — Compact inbox controls
The inbox chat pane recovers vertical space with compact composer actions and tighter contact metadata.
Read release notesv0.18.14 — Inbox conversation tabs
Operators can keep their most recent inbox conversations open as tabs above the chat pane.
Read release notesv0.18.13 — Inbox chat JSON export
Operators can copy the full open inbox conversation as structured JSON, including context and the current composer draft.
Read release notesv0.18.10 — WhatsApp billing insights
Read release notesv0.18.11 — Meta Marketing API setup docs
Read release notesv0.18.8 — Insights: channels, conversation sources & Meta campaigns
Read release notesv0.18.9 — WhatsApp Business Messaging CAPI
Read release notesv0.18.3 — Inbox context stays put
Read release notesv0.18.4 — Webhook workflows dry-run bridge
Read release notesv0.18.5 — Draft with me status hardening
Read release notesv0.18.6 — Realtime listener self-heal & connection-pool hardening
Read release notesv0.18.7 — UDB travel context enrichment
Read release notesv0.16.86 — Client travel context in inbox & draft-with-me
Read release notesv0.16.87 — Travel context import tool
Read release notesv0.18.1 — Workflows landing surface
Read release notesv0.18.2 — Workflows data foundation
Read release notesv0.16.82 — Attribution RLS hardening and webhook reprocessing
Read release notesv0.16.83 — GB-Agent active inquiry context
Read release notesv0.16.84 — Meta label for link-only referrals
Read release notesv0.16.85 — Migration hygiene
Read release notesv0.16.76 — WhatsApp formatting and reaction picker
Read release notesv0.16.70
Renders inbound WhatsApp interactive button and list replies as structured inbox chips with realtime and cache coverage.
Read release notesv0.16.71
Prevents inbox 500s when filtering large conversation lists by labels or assignees.
Read release notesv0.16.68
Fixes missing mobile inbox translations that could trigger Italian /inbox hydration errors.
Read release notesv0.16.59
Inbox conversation list now scales past 250 with keyset pagination, search spans name + chat text + email + phone, and send-side bubbles are translucent emerald again.
Read release notesv0.16.56
Hardens outbound inbox bubbles so sent messages keep visible theme-token styling.
Read release notesv0.16.57
Restores Meta campaign attribution cards in virtualized inbox threads.
Read release notesv0.16.58
Hardens inbox thread hydration after message virtualization.
Read release notesv0.16.52
Memoizes inbox message bubbles to reduce row render fan-out.
Read release notesv0.16.53
Adds safe inbox timing instrumentation for long-frame diagnosis.
Read release notesv0.16.54
Virtualizes the desktop inbox message history.
Read release notesv0.16.50
Restores the inbox thread view by moving Vercel Analytics behind a client boundary.
Read release notesv0.16.49
Repairs Railway-hosted GB-Agent connector connection tests.
Read release notesv0.16.46
Adds per-campaign automation for negative WhatsApp button replies.
Read release notesv0.16.47
Improves inbox responsiveness on long message threads.
Read release notesv0.16.48
Defers Fingerprint identification until browser idle.
Read release notesv0.16.40
Adds the immutable template version foundation for future WhatsApp template performance analytics.
Read release notesv0.16.41
Improves inbox timeline scanning and restores image-header visibility for outbound WhatsApp templates.
Read release notesv0.16.42
Preserves Meta template lifecycle history and drift events against immutable template versions.
Read release notesv0.16.43
Attributes outbound template sends to immutable template versions.
Read release notesv0.16.44
Adds template version performance rollups and a Templates Performance surface.
Read release notesv0.16.45
Fixes blank outbound campaign bubbles for templates whose Meta body lives only in component JSON.
Read release notesv0.16.39
Reduces CSP report-only noise by aligning Nosecone with the app enforcement policy.
Read release notesv0.16.38
Improves billing setup UX with Stripe return banners and fresh-workspace defaults.
Read release notesv0.16.30
Adds the GB-Agent settings API and Settings → Integrations → GB-Agent admin UI.
Read release notesv0.16.31
Enforces GB-Agent workspace/mode/user access gates in the inbox trigger and draft review paths.
Read release notesv0.16.32
BORD-720 hardens canonical Meta phone-number identity routing with Option B constraints and sync guards.
Read release notesv0.16.33
Meta webhook redeliveries now treat duplicate process-webhook outbox jobs as idempotent success.
Read release notesv0.16.34
BORD-721 introduces additive idempotency_key compatibility for legacy dedupe-key tables.
Read release notesv0.16.36
BORD-722 adds event hot-path indexes and documents analytics/LLM coverage.
Read release notesv0.16.37
BORD-723 documents canonical soft-delete and archive semantics.
Read release notesv0.16.12
Adds the first generic connector contract layer for draft-only external agents such as gb-agent.
Read release notesv0.16.14
Persists draft-only connector run outcomes for external agents such as gb-agent.
Read release notesv0.16.15
Add validated phone and email format constraints for clean DB fields.
Read release notesv0.16.16
Adds workspace-scoped gb-agent connector settings and safe test connection support.
Read release notesv0.16.17
Constrain broadcast outbox status values at the database layer.
Read release notesv0.16.18
Adds the worker runtime for draft-only gb-agent connector calls.
Read release notesv0.16.19
Add targeted DB indexes for hot message, webhook, and responder-run paths.
Read release notesv0.16.20
Denormalize workspace scope onto campaign MM metrics.
Read release notesv0.16.21
Adds the inbox trigger route for draft-only gb-agent connector runs.
Read release notesv0.16.22
Moves the gb-agent enqueue release marker onto a fresh post-merge patch version.
Read release notesv0.16.23
Prevents app proxy auth checks from timing out unprotected API routes.
Read release notesv0.16.24
Defense-in-depth fixes for the Supabase pool incident — bounded auth timeouts and Meta retry-on-503 webhooks.
Read release notesv0.16.25
Bounded worker dispatch concurrency and thicker realtime payloads so two operators no longer double-answer the same chat.
Read release notesv0.16.26
gb-agent connector human_review drafts now render a review-only handoff preview card in the inbox, and Meta post referrals now surface as operator-visible Meta attribution.
Read release notesv0.16.27
conversation-label link rows now carry a direct workspace_id with parent-match constraints and trigger validation.
Read release notesv0.16.28
Adds a manual gb-agent inbox trigger that queues draft-only connector runs from a selected chat.
Read release notesv0.16.29
Adds the GB-Agent workspace settings and per-user access foundation without enabling the settings UI yet.
Read release notesv0.16.09
Add the live Supabase DB hardening discovery baseline.
Read release notesv0.16.10
Add the RLS and tenant-policy audit for the DB hardening sweep.
Read release notesv0.16.11
Keep selected inbox thread history loading independent from the cache kill switch.
Read release notesv0.16.13
Enforce tenant resolution for stored webhook events.
Read release notesv0.16.06
Operator-only campaign client context lands in the inbox bio pane — resort, target dates, gross price quoted, family, last reservations, and a host-validated Travio pratica link.
Read release notesv0.16.07
Harden the GB/Travio inbox context rollout to practice-ID links only, behind a server-side GB workspace gate.
Read release notesv0.16.08
Add an ID-only Travio practice-link importer for identity-expansion output.
Read release notesv0.16.04
Harden the public launch path with enforced secret scanning, fail-closed compatibility webhook auth, safer token handling, current repo metadata, and a Next.js advisory patch.
Read release notesv0.16.05
Require explicit shared-secret headers on legacy compatibility contact and journey-trigger routes before they can touch default workspace data.
Read release notesv0.16.02
Make inbox assignment feel instant and stable with additive toggle/unassign behavior, background roster refresh, and explicit remove-assignee intent wiring.
Read release notesv0.16.03
Polish the inbox assignment dropdown with i18n-backed status copy, persistent trigger feedback, explicit remove/undo affordances, and lower request chatter.
Read release notesv0.15.67
Keep the app inbox loading on older mobile Safari and iOS WebViews.
Read release notesv0.15.68
Make inbox assignment interactions instant with optimistic updates, coalescing, and inline feedback.
Read release notesv0.16.01
Start the native Android/iOS mobile MVP with an Expo skeleton, safe config diagnostics, and tested operator-inbox scaffolding.
Read release notesv0.15.54
Meta click-to-WhatsApp attribution becomes first-class in the inbox and insights.
Read release notesv0.15.55
Established WhatsApp workspaces can get back to the inbox even when historical onboarding completion state is stale.
Read release notesv0.15.56
Meta ad-to-WhatsApp inbound conversations keep their freeform reply window.
Read release notesv0.15.57
WhatsApp service-window badges and send eligibility honor future close timestamps even when the stored state is stale.
Read release notesv0.15.58
Inbox conversations can be flagged for review, highlighted in purple, and closed by assigned operators with a required internal note.
Read release notesv0.15.59
Campaign opt-out replies now preserve the friendly acknowledgement before archiving, and campaign launches can require rendered-body sanity checks.
Read release notesv0.15.60
Click-to-WhatsApp ad attribution is fully hardened — every CTWA conversation gets the meta label, a worker enriches the conversation with Meta Ads campaign/adset/ad/creative names, and an operator-only orange info card above the chat pane shows the full ad context.
Read release notesv0.15.62
Adversarial review fixes for the CTWA ad attribution rollout — Meta access tokens now travel in the Authorization header, Graph error classification is JSON-parsed, and CTWA image URLs are allowlisted against Meta's CDN at write and render time.
Read release notesv0.15.64
The orange CTWA ad attribution card no longer disappears after a conversation is read.
Read release notesv0.15.66
Tighten the CTWA attribution hot path — inbound-only enforcement and cheap gating for non-CTWA conversations.
Read release notesFlow-response cards and warmer Italian replies
The inbox now shows completed WhatsApp Flow answers as orange question/response cards and customer-response prompts steer drafts toward casual Italian WhatsApp copy.
Read release notesMeta usage monitoring and group conversation foundations
Settings now exposes Meta WhatsApp usage and estimated delivered-template costs, and the inbox adds the first Groups-only conversation filter for internal team group testing.
Read release notesConversation handoff links
Operators can copy a direct inbox conversation link from the actions menu and share it with teammates in the same workspace.
Read release notesFutura qualification Flow routing
Futura campaign replies can now route positive WhatsApp button taps into a qualification Flow, with visible-title fallbacks and a per-campaign kill switch.
Read release notesInbox Flow response bubbles
Operators can see completed WhatsApp Flow submissions as structured temporary bubbles in the inbox.
Read release notesSafer Flow response bubble backfill
WhatsApp Flow response bubbles now use centralized redaction and QA completions created before deploy can render in the inbox.
Read release notesRealtime deploy notifications in the inbox
Operators now receive an in-app toast and persistent banner when a new Switchbord build goes live, so nobody stays stuck on a stale bundle after a release.
Read release notesAudio transcription re-landed + outbox hardening
Voice-message transcription is back, with the underlying ESM fix that caused the v0.15.38 rollback. Worker outbox now self-heals from crashed leases and no longer starves operator sends behind webhook backlogs.
Read release notesHardened draft review and idempotency
Campaign responder drafts are now concurrency-safe, with DB-level unique indexes, claim-safe accept, and canonical reject.
Read release notesJourney handoff nodes now escalate to human operators
Journey handoff nodes set needs_human on the conversation and guard the AI auto-reply path.
Read release notesDeterministic Futura campaign reply classifier
Pure classifier resolves opt-out, nurture, and booking signals before LLM invocation.
Read release notesFutura campaign responder AI executor
LLM execution layer for Futura campaign replies — schema-validated, draft-only, opt-out short-circuit.
Read release notesManual Futura campaign responder pilot runner
Operator CLI script for running the Futura draft responder pilot — dry-run by default, workspace-scoped, audit-logged.
Read release notesCampaign read metrics from WhatsApp read receipts
Campaign performance read rates now reflect outbound WhatsApp provider read receipts instead of inbound replies.
Read release notesAI draft metadata in inbox review card
Route badge, intent, confidence, qualification signals, and reject-with-reason now visible in the draft review card.
Read release notesOutbox channel propagation release
Release-train bump after channel ID propagation across automation jobs.
Read release notesTemplate WABA ownership validation
Template-send paths now validate that selected channels belong to the WABA that owns the template.
Read release notesInbox/auth/operator UX polish
Inbox background, auth completion, desktop notifications, assignment picker, internal notes, and nav polish.
Read release notesNotification opt-in and inbox visual polish
Makes Chrome desktop notification permission explicit in the inbox, records local browser consent, and tightens chat/sidebar visual polish.
Read release notesNotification preferences, diagnostics, and test coverage
Server-syncs sound and visual notification preferences, adds a diagnostics panel to user settings, and ships 31 new tests for the browser notification layer.
Read release notesItalian translation push
Translates 258 previously untranslated strings in the Italian locale file across all operator app surfaces.
Read release notesRelease bump to v0.15.25
Version bump following Italian translation push and notification stack improvements.
Read release notesInbox conversation filters
Adds server-backed inbox filtering by conversation labels and assigned operators.
Read release notesSupabase Auth Email via Resend
Routes Supabase Auth email through Resend, adds branded TokenHash templates, and preserves App Router auth redirects.
Read release notesInbox selected-thread hydration patch
Ensures selected inbox conversations hydrate their full thread after the optimized list payload returns only the latest message preview.
Read release notesv0.15.10 — Transactional webhook integration docs
Adds API reference and integration guides for transactional template sends, receipt links, PDF receipts, and inbound webhook dry-run rollout.
Read release notesv0.15.12 — Canonical inbox conversation tags
Fixes inbox label state leakage, hydrates conversations from normalized label tables, adds server-side label filters, and lets campaigns tag conversations explicitly.
Read release notesInbox realtime hardening release train
Aligns the release train baseline for scoped WhatsApp realtime inbox hardening.
Read release notesInbox realtime performance patch
Ships scoped WhatsApp webhook broadcasts and immediate operator inbox realtime materialization.
Read release notesInbox private realtime delivery hotfix
Restores live inbox message materialization by aligning server broadcasts with private Supabase Realtime channels.
Read release notesInbox realtime pipeline consolidation
Eliminates message-disappearance race conditions and simplifies the realtime transport to a single broadcast path with Dexie cache enabled by default.
Read release notesTransactional Template API and Webhooks
Adds utility-first transactional template sends, receipt templates, and the inbound webhook configurator foundation.
Read release notesv0.15.5 — HMAC-only inbound webhook authentication
Read release notesv0.15.8 — Guided webhook mapping builder
Adds a guided Settings builder for inbound transactional webhooks, including Utility template requirements, sample-payload preview, and safe mapping validation.
Read release notesInbox Local Cache Foundation
Adds the first foundation for cached-first inbox history: architecture plan, message delta API, and browser-safe local cache primitives.
Read release notesSidebar-09 Navigation Refresh
Operator sidebar now follows the sidebar-09 navigation pattern with in-rail search, collapsible filtering behavior, and localized empty/search states.
Read release notesDraft-Only Campaign Responder Foundation
Adds structured responder output, campaign inbound attribution, and a draft-only finalizer for operator-reviewed campaign replies.
Read release notesInbox Long-Thread Refresh Fix
Selected inbox conversations now refresh by id instead of filtering the first inbox page, preserving full message history for long threads.
Read release notesWorker outbox latency hotfix
Restores the Railway worker's low-latency outbox path after operator sends queued behind webhook-status bursts.
Read release notesMSN-Style Inbox Pop-Up Notifications
Eligible inbound WhatsApp messages can now show an old-school bottom-right pop-up when Switchbord is minimized or in another tab.
Read release notesExplicit Assignment Intent Safety
Conversation assignment updates now require explicit assign or unassign intent so ambiguous payloads cannot clear ownership.
Read release notesInternationalization Runtime Hardening
Locale runtime wiring for marketing, Languine coverage for web bundles, app locale allowlist fixes, and a documented docs-localization workflow.
Read release notesFutura Campaigns v1 & Launch Readiness
Futura campaign release: typed segmentation, recipient materialization, personalized template dispatch, safe launch flow, reconciliation, and runbook/compliance artifacts.
Read release notesAlpha UX Polish & Agent Drafts
Alpha UX polish release: inbound agent drafts, first-run onboarding, inbox density, design tokens, and landing-page presentation improvements.
Read release notesBuilder, Journey Editor & Public Changelog
Builder release: template renderer/builder, graphical journey editor, command palette, public changelog route, footer expansion, docs strip, and GitHub social proof.
Read release notesWebhook Operations & Audit Hardening
Webhook and operations release: account alerts, audit visibility, multi-tenant verification fixes, and channel validation repairs.
Read release notesSecurity & Multi-tenancy Foundation
Security and workspace-scoping release: auth guardrails, workspace threading, PII redaction, GDPR retention, asset storage, and v25 Meta API alignment.
Read release notes