Skip to content

Changelog

User-visible Wazapin changes, milestones, and migration notes.

Updated View as Markdown

Wazapin is in active pre-release development. It evolved from a personal TypeScript project into a multi-tenant SaaS product, then into the current platform monorepo. The original stack used React, Hono, tRPC, and Cloudflare Workers. As the product grew, the API was progressively rewritten in Go to create clearer service boundaries, provider integrations, and operational reliability.

This timeline connects that lineage: the original wazapin repository, the frontend-focused wazapin-app transition, the platform-2103 and platform-oldd snapshots, and the current platform repository. It covers the available history through August 31, 2026, grouped by the week in which the work landed. Repeated checkpoints, generated files, and follow-up tests are consolidated into the result they support.

The 0.0.x labels are chronological working milestones, not formal releases. There is no 1.0.0 release.

0.0.8 — Accessibility, platform operations, and companion UX (August 2026)

Week of August 10 — Storefront quality and theme registry

  • Added: Introduced the first-party theme-registry worker, catalog index, mini shop-card previews, and full theme preview pages.
  • Added: Added WCAG AA contrast warnings for theme publishing and synchronized app presets with commerce themes.
  • Changed: Refined storefront scrolling, focus restoration, typography, forms, and desktop app-shell behavior.
  • Fixed: Improved dashboard insight interactions and storefront accessibility and polish.

Detailed commit trail — Week of 2026-08-10

  • 13ac9cc7 — align billing top-up error assertion with sanitized API error
  • e5aaaf91 — route platform page formatting through tenant i18n helpers
  • 3bf984a9 — style(app): apply vp fmt across the app (CI format gate)
  • 4836e251 — resolve govet shadow + staticcheck S1016 lint issues
  • 4b218c58 — versioned plan catalog (buat plan) + edit package from catalog + messages-sent on main dashboard
  • 5eb56700 — add org creation, org plan change, and message metrics (audited)
  • 661df2b9 — overview metrics 4-col, shell scroll on /platform, platform sidebar menu
  • dda921b1 — superadmin console phase 1 — /platform route, platform_operator grant, audit log, global directory
  • 14c3ae01 — ship interactive questions and chat polish
  • 904690d8 — unify broadcast reporting and status events
  • d5fd954f — cut over campaign reporting to shared backend
  • 1db62889 — redesign dashboard and companion chat

Week of August 17 — Platform administration and auditability

  • Added: Added CRM-style organization tables with selection, filters, sorting, pagination, and an identity-focused organization inspector.
  • Added: Added platform-operator access management and a platform audit-log page backed by a read endpoint.
  • Changed: Added Overview/Members tabs, plan history, and an operator picker to organization administration.
  • Fixed: Corrected audit-actor display, inspector scrolling, and checkbox alignment.

Detailed commit trail — Week of 2026-08-17

  • a71af5af — add smart CRM CSV field mapping
  • d8fb415d — ship UX remediation across broadcast, segment, inbox, and CRM
  • 91aa178a — refine inbox filters search and composer AI
  • 0fe1c849 — add copilot recovery and agentation
  • 7a4ef174 — guard Copilot suggestions across threads
  • e02f5c94 — harden inbox copilot and alpha reliability
  • 994bb3b8 — add development Agentation toolbar
  • 595ff02e — handle optional geo rollups safely
  • 67274fd3 — add isolated wzpn tunnel workflow
  • cd0b1bd3 — rebuild fluid message composer
  • e5e0dedb — add human-reviewed copilot foundation
  • 7278e90c — simplify contact context sidebar

Week of August 24 — CRM mapping, companion protocol, and deployment edge

  • Added: Merged smart CRM CSV field mapping and standardized the companion agent UI protocol.
  • Changed: Allowed the full frontend suite to finish in CI and formatted merged frontend surfaces.
  • Changed: Added the temporary Reflex root cutover and origin-certificate provisioning path.
  • Fixed: Removed obsolete inbox sidebar closers and corrected certificate upload flags and hostname coverage.

Detailed commit trail — Week of 2026-08-24

  • 17380ad9 — expose public discovery endpoints
  • 9b4008e4 — enable browser Faro telemetry
  • 6e58d54c — add host-local production telemetry
  • 53a6bc01 — ci(app): isolate vitest into sixteen shards
  • d0cc01ec — ci(app): split vitest suite into eight shards
  • 90a2486a — ci(app): use four vitest shards
  • a3aa7723 — ci(app): shard full vitest suite to avoid oom
  • 2ed757c7 — keep companion SSE streams alive
  • af3d1e16 — deduplicate streamed sources
  • 55c923ad — retry empty replay pages
  • 0d687260 — pin stream events to run identity
  • 6bc03696 — ci(app): raise Node heap for full Vitest suite

Week of August 31 — Labels, localization, and docs foundation

  • Added: Added safe, human-readable resource display labels and improved resource-picker copy.
  • Added: Added the Lingui catalog/build foundation and dynamic user-locale activation contract.
  • Added: Added natural Indonesian docs content and a compact language switcher.
  • Changed: Started the resource-label/audience UX pass and documented the localization foundation for future product surfaces.

Detailed commit trail — Week of 2026-08-31

  • e06daf48 — wire Lingui into production Vite config
  • 8bb32875 — integrate user UI locale provider
  • ea94d0a1 — add dynamic Lingui locale activation
  • d6fb43e2 — add user UI locale contract
  • 8b6c57a8 — add Lingui catalog build foundation
  • 605c6b63 — docs(i18n): natural Indonesian for docs-id + kotak LanguageSwitcher
  • b14e5c1e — keep resource picker labels human readable
  • c584ba5a — add safe resource display labels

0.0.7 — Inbox, AI, and infrastructure (July 2026)

Week of July 6 — Inbox interactions and form reliability

  • Added: Added outbound delivery ticks, directional list previews, reply aliases, and TanStack Virtual for thread and conversation lists.
  • Added: Established the useZodForm pattern for production forms.
  • Changed: Standardized billing dialogs, optional billing addresses, compact spacing, and WABA channel-health flows.
  • Fixed: Hardened create-draft waits, credential reconnect caching, stale credentials_expired state, and inbox SDK behavior.

Detailed commit trail — Week of 2026-07-06

  • 5b5d7fdb — green pre-existing unit tests blocking api-test CI
  • f9fdaaa1 — api-lint only-new-issues with full fetch-depth
  • 3c33948c — pin golangci-lint v2.12.2 for Go 1.26 toolchain
  • 7c4bcdd9 — ci(api): soft-gate govulncheck until residual deps ratchet (GC-60)
  • 206c0f42 — hygiene — IVR errors, goleak, fuzz, docs (GC-30–84 subset)
  • ccb912a2 — session SetActiveOrganization + HTTP op (GC-10/11/12)
  • 1e82c19f — ci(api): fortress — lint, race, vuln, build, dependabot (GC-20–27)
  • e106aff6 — set active_organization_id on session create
  • 727e9eed — allow m.wazapin.com on Vite dev host
  • f712adc0 — docs(tasks): close PERF-001 skip and mark hardening DoD green
  • cf6b7b95 — prefetch high-traffic list routes in loaders
  • e2a224a2 — isolate list tables from create dialog state

Week of July 13 — CI, deployment, and API contract cleanup

  • Added: Added Aiven Redis TLS support, always-on local stack scripts, and a one-shot Dokku deploy-key provisioning workflow.
  • Changed: Slimmed CI gates with path filters and aligned frontend formatting and package-manager behavior.
  • Fixed: Corrected OpenAPI operation counting, API-key context handling, and live Dokku public-key provisioning.
  • Fixed: Restored a green unit-suite path after the CI simplification.

Detailed commit trail — Week of 2026-07-13

  • d89e5cd1 — prose-first playbook authoring with inline @resources
  • 495dac5c — unique Huma schema names for executable playbook ops
  • b3f54da6 — merge metadata.output so completed path keeps plan identity
  • a48e3919 — production handoff E2E and real DB identity persistence
  • d9268864 — UUID-safe identity persist, grounded drafts, handoff tool alias
  • b285b283 — production handoff, live tool handlers, and trace identity persist
  • 0ff05392 — wire ai_executable_playbooks flag into AI service at boot
  • c4b284f4 — Lexical authoring, production run bridge, real parity, Release Gate
  • 7e4b0d5d — Playbooks library and CRM Notes-like floating editor
  • 751d8384 — executable playbooks backend contracts, compiler, and APIs
  • 2d14008a — docs: design executable playbooks
  • b401a8d0 — smooth MessageScroller turn anchors for setup chat

Week of July 20 — WAHA groups and webhook delivery

  • Added: Added WAHA group-event webhooks, group mentions through content.mention, and group send guides for text, images, and documents.
  • Changed: Moved WAHA session storage toward Postgres and documented Dokku networking requirements.
  • Changed: Made public Svix dispatch lazily provision an app ID.
  • Fixed: Recovered failed WAHA sessions, stopped QR polling after WORKING, and prevented group receipts from being truncated or duplicated.

Detailed commit trail — Week of 2026-07-20

  • c30ecd9c — stop restart storms that drop WhatsApp pairing
  • 02c26f2c — multi-sender labels and grouping in group threads
  • 46d24751 — Phase 3 group polish — filters, markers, automation skip
  • ef073120 — group thread peer — outbound, inbound, list UI
  • 42e0d0de — docs(plan): full group inbox thread-peer implementation plan
  • 7d008311 — Phase 0 multi-channel thread peer helpers + ADR
  • a14ee8aa — do not open inbox conversations for group JIDs
  • d1326798 — ops(waha): alpha uses one prod WAHA via Tailscale
  • 94978a07 — ops(alpha): start WAHA from local-run up/health scripts
  • e0f16cc9 — ops(waha): monorepo ensure-waha in alpha stack
  • 9e568e96 — scan message.search_tsv as string
  • 538bf64d — include contact.phone_digits in cdp/crm sqlc scans

Week of July 27 — Contextual AI retrieval and memory

  • Added: Added retrieval candidates, evaluation baselines, Voyage embedding and reranking adapters, and document-aware contextual chunks.
  • Added: Added contextual web/OKF ingestion, scoped lexical plus pgvector retrieval, and conversation-continuity memory.
  • Added: Added reviewed channel brand-style learning from message history.
  • Changed: Documented the rollout contract for contextual retrieval and conversation memory.

Detailed commit trail — Week of 2026-07-27

  • 89f318db — docs(runbook): AI pipeline production rollout (LlamaParse + Voyage + DeepSeek contextualizer)
  • d6cc3c66 — move companion manifest out of testdata/ for Docker embed
  • ee1b5f2d — unblock deploy-api-dokku test gate
  • a5ab2889 — session persistence, transcript fixtures, hooks UI
  • 9aa0dc98 — production contract — manifest authority, typed artifact, durable action lifecycle
  • e780e83f — compact multi-row table output
  • fa6b3f8a — compact single data result
  • 30fc1d1d — move read tools out of transcript
  • aa4ccba5 — docs(plan): 031 companion thinking-trace long-term UX (5 phases)
  • 118e002f — match HIDDEN_COMPANION_TOOLS to backend-emitted tool name
  • a458bd11 — hide internal tool calls + add reasoning-merged scenario
  • 4dd70b2f — cross-fade questionnaire + insight (plan 029 remainder)

0.0.6 — CRM, commerce, and workspace operations (June 2026)

Week of June 1 — Product UI polish and campaign surfaces

  • Added: Introduced design-engineering polish, restrained transitions, and clearer interaction feedback.
  • Added: Expanded campaigns with audience previews, metrics, and more focused composition flows.
  • Added: Improved the AI agent workspace, knowledge/actions/playbooks layouts, and animated metric values.
  • Changed: Tightened page widths, metric density, CRM headers, and campaign toolbars based on usability feedback.

Detailed commit trail — Week of 2026-06-01

  • 7c4b8a99 — booking calendar feed, multi-ticket checkout UX, and seed orders
  • 354fe8ee — sync commerce booking orders to contact timeline
  • 32fba23f — booking checkout guardrails and service-day calendar
  • e95b505e — right-align toolbar popovers without covering actions
  • d8fbc00d — add calendar component and storefront booking E2E
  • d2cfa1c0 — appointment booking modes, capacity, and calendar
  • 9231c646 — emit people created on inbound WA contact upsert
  • 9a292894 — emit people, import, and messaging catalog events
  • 3d515695 — complete CRM webhook emission for remaining events
  • 47f1bc2d — emit CRM events for notes and tasks
  • 5cf31846 — add CRM event catalog and outbox emission
  • 8e116e47 — show digital files on orders and enrich paid WA preview

Week of June 8 — Commerce, referrals, insights, and scrolling

  • Added: Added booking-calendar sync, Google Meet support, staff notifications, referral programs, attribution, and payout flows.
  • Added: Added dashboard insights with prioritized signals and reports tabs.
  • Changed: Added alternate workspace-slug suggestions and clearer marketing and external-page copy.
  • Fixed: Locked internal-scroll flex chains, order-detail loading states, and commerce/CRM validation issues.

Detailed commit trail — Week of 2026-06-08

  • e92adffd — ship workspace UI consistency migration across CRM, commerce, and shell
  • 516658ba — restore system fonts and CRM sidebar catalog icons
  • e572d7e2 — add missing inbox loading skeleton module for committed imports
  • 0fddae84 — resolve biome hooks and assertion issues on commerce/crm pages
  • 422ae45c — bound order detail loading states and strengthen scroll guard
  • e4d8452a — lock internal scroll flex chain with guard and pre-commit
  • 4e1fbaca — suggest alternate slug when workspace URL is taken
  • 54ae015d — complete phase 2-4 with commerce hook and payout flow
  • 68b6429b — add insights view with prioritized signals and reports tabs
  • d1f1b146 — rename Huma output types to avoid auth MeOutput clash
  • adb307e3 — add program, attribution, and shared EmptyState UI
  • 7940c854 — add booking calendar sync, Meet, and staff notifications

Week of June 15 — Design system, icons, and router migration

  • Added: Added the app-level Hugeicons wrapper, domain-grouped icon barrels, alternate icon states, and accessibility labels.
  • Added: Installed the TanStack Router compatibility layer.
  • Changed: Refined colors, font weights, chat bubbles, and shared layout primitives.
  • Fixed: Resolved circular icon-wrapper imports and a Vite HMR export issue.

Detailed commit trail — Week of 2026-06-15

  • ebd8b8af — change studio route path to avoid conflict with storefront redirect
  • 224765dc — pre-fill segment builder modal when editing
  • eca58506 — add storefront studio — block registry, Zustand store, 3-panel layout, drag-drop, preview, editor, block renderers, API integration, auto-save, and route
  • 53030022 — cohort retention query references undefined cohort_size column
  • 35be25ea — prevent empty-workflow Save 400
  • 46b6b1c7 — add storefront page_config draft/publish endpoints and frontend types
  • 56ec75b3 — hydrate saved workflow on open and relax publish validation
  • ffa83531 — remove unused vars, restore firstMatchingLine in scroll guard
  • 82f9dcfa — add native scroll + LoadingGate flex chain rules to internal-scroll guard
  • d57a99f5 — replace native overflow-y-auto with ScrollArea in AI agent pages and automation builder
  • 5d7fa98b — DetailPageShell use ScrollArea instead of native overflow-y-auto
  • 3d65fb2c — pass flex chain className to LoadingGate in campaign-detail-page

Week of June 22 — Studio layouts and scroll contracts

  • Added: Introduced the full-height WorkspacePage, accessible tabs, and reusable workflow-studio layout primitives.
  • Changed: Made previews use their real 448px logical size with scrollable containers, fixed sidebars, and a larger working area.
  • Changed: Extracted workflow-studio state and standardized canvas/sidebar behavior.
  • Fixed: Removed nested canvas scrolling, device-frame scaling, and hidden body-scroll failures.

Detailed commit trail — Week of 2026-06-22

  • 95aca06b — smith deprecation path (agent L)
  • 6b3d769e — golden eval and orchestrator flag (agent K)
  • 43767436 — supervisor specialists (agent J)
  • 6e6bed25 — server thread persistence (agent I)
  • 121df28e — page snapshots and global filters (agent H)
  • faff2cb4 — active agent and KB scope (agent G)
  • 98965386 — SSE streaming (agent F)
  • 8f93986b — approval resume flow (agent E)
  • d0966244 — session store and interrupts (agent D)
  • 24482990 — wire chat to eino runner (agent C)
  • c475cfab — workspace read tools manifest (agent B)
  • d4c53006 — eino runner core (agent A)

Week of June 29 — Automation hub and URL-driven navigation

  • Added: Started the companion automation hub, analytics routing, and stream foundation.
  • Added: Added createAppRouter, URL-driven Dashboard and Referral tabs, and URL-addressable detail tabs.
  • Changed: Completed the main TanStack Router remediation and improved tab type safety.
  • Fixed: Prevented IVR workflow tables from mounting twice and recorded the regression lesson for list pages.

Detailed commit trail — Week of 2026-06-29

  • 43b57b1c — patch attachment URLs after Meta media ingest
  • 3183b654 — ingest ephemeral Meta media and monitor inbox health
  • 0caeb896 — use synthetic id for participant bootstrap event
  • 78dfd4c0 — prevent dropped inbound on orphan conversations
  • 71f6c178 — docs(tasks): mark Smith v3 phases 18-21 complete
  • 346cea84 — draft_product_update with HITL and journey
  • 8877b373 — draft_promo_update with commerce service
  • f1abd33a — prevent duplicate view-transition on companion ask trigger
  • ffc08082 — docs(tasks): mark Smith v2 phases 14-17 complete
  • 27ca5c0f — draft_promo_create with commerce adapter
  • 671c4f42 — draft_segment_update filter rules v2
  • 5358425d — extend crm record update field types v2

0.0.5 — Messaging expansion and API parity (May 2026)

Week of May 4 — Rich CRM work items

  • Added: Added rich-text CRM work-item columns, persistence, and API exposure for notes and tasks.
  • Added: Built reusable Tiptap document utilities and editor components.
  • Added: Added CRM editor AI actions and navigation for notes and tasks.
  • Fixed: Supported plural CRM system-object kinds and plural record-detail routes.

Detailed commit trail — Week of 2026-05-04

  • 03dcd604 — address hardening review feedback
  • 7aa5b6b5 — make automation operations consistent
  • 51e45bd8 — harden automation run operations
  • e430f517 — add automation run operations
  • 201e39cf — harden trace linkage consistency
  • e6680f4c — expose automation run step timeline
  • 5355e10c — persist automation runtime failures
  • fc4df3de — harden checkpoint resume metadata
  • c569bb43 — harden eino callback span telemetry
  • 5a0b6d6b — validate automation executor configs
  • 6ded7e4f — cover rich calm eval assertions
  • 06f40897 — tenant scope automation step store

Week of May 11 — AI workspace, inbox performance, and campaigns

  • Added: Rebuilt the AI UI agent and replaced the evaluation page with a playground experience.
  • Added: Added message-list virtualization with TanStack Virtual and split inbox message rendering into maintainable content modules.
  • Added: Added the campaign audience-source schema and registered campaign dispatch work.
  • Fixed: Mapped JSONB message columns correctly and cleaned up accessibility and unused-variable issues.

Detailed commit trail — Week of 2026-05-11

  • b9646e18 — upload product image gallery
  • e5c11103 — move product forms to pages
  • aeca5e5d — remove inline commerce admin forms
  • f51a9048 — align commerce products with crm table flow
  • 7234f98a — group commerce routes in app sidebar
  • 695e94cc — split commerce dashboard into route pages
  • 43996c98 — add commerce page layout
  • 4bdafa87 — extract commerce shared ui helpers
  • d86b4826 — add commerce dashboard sidebar group
  • fc2b68a8 — avoid circular vite production chunks
  • cfc03931 — omit order id from fulfillment payload
  • 1383b170 — use unique commerce migration versions

Week of May 18 — Security hardening

  • Fixed: Addressed findings from the OWASP security audit across application and API surfaces.

Detailed commit trail — Week of 2026-05-18

  • 9d85c3a3 — address OWASP security audit findings

Week of May 25 — Secrets and operations dashboard

  • Changed: Moved API secret loading to a gitignored api/.env boundary.
  • Added: Revamped the operations dashboard for enterprise-oriented monitoring and reporting.
  • Fixed: Reduced the risk of accidentally committing local API secrets.

Detailed commit trail — Week of 2026-05-25

  • 53e45159 — revamp operations dashboard for enterprise
  • 02dfd3a0 — load API secrets from gitignored api/.env

0.0.4 — Inbox, billing, and CRM (April 2026)

Week of April 6 — Official channel setup

  • Added: Added manual official WhatsApp credential validation and setup endpoints.
  • Added: Introduced official-setup tabs so channel onboarding could distinguish setup modes.
  • Changed: Routed AI inbox behavior through conversation mode and worker execution.
  • Fixed: Enqueued and registered the AI inbox routing jobs needed for autonomous replies.

Detailed commit trail — Week of 2026-04-06

  • 4e3f12f9 — style(app): apply biome cleanup fixes
  • 9675c151 — enqueue and register AI inbox routing jobs
  • 9ce5e817 — execute autonomous inbox replies in worker
  • 289848ca — honor conversation ai_mode routing
  • 6ffb04aa — add official setup mode tabs
  • c0e3bf13 — add manual official setup endpoints
  • 57f7e8ef — validate manual official credentials

Week of April 13 — Identity and operational reliability

  • Added: Added phase-one interaction identity scaffolding and normalized inbound interaction writes.
  • Changed: Enforced foreign-key and service invariants around interaction records.
  • Fixed: Hardened admin smoke flows, realtime inbox scoping, and contact identity paths.
  • Fixed: Made deployment bootstrap and missing CDP identity responses more tolerant.

Detailed commit trail — Week of 2026-04-13

  • 18b4f34c — docs: capture phase1 interaction architecture plan
  • 4207df55 — complete phase1 interaction verification
  • 69bb2e66 — finalize phase1 interaction compatibility
  • 6becb91a — harden phase1 interaction reconciliation
  • b03d92f4 — add explicit participant linking flow
  • c18b275d — isolate and claim durable routing outbox
  • e7b740bb — remove direct inbound routing enqueue
  • 5f55b573 — stabilize inbound routing side effects
  • bf828723 — route internal outbox events safely
  • b52e1558 — restore durable inbound routing
  • 1ca668a5 — harden inbound duplicate recovery
  • 88cb0865 — tighten inbound replay and participant linking

Week of April 20 — CRM business-object foundation

  • Added: Introduced the phase-two CRM business-object schema, SQL queries, service layer, and API endpoints.
  • Added: Added custom-field definitions, value validation, and the first CRM list overlay.
  • Changed: Defined the business-object model through typed persistence and API boundaries.
  • Fixed: Improved CRM usability and rejected invalid custom-field values before mutation.

Detailed commit trail — Week of 2026-04-20

  • 8d221b07 — Attio-like CRM foundation
  • 33883f36 — resolve crm object records
  • fac956c1 — hydrate crm list entries
  • c30b436e — expose crm object catalog
  • 45c8a7cf — add crm list overlay
  • 3986247f — validate crm custom field values
  • 903a16c2 — add crm custom field definitions
  • 731fb7b8 — improve phase2 crm usability
  • 83630264 — expose crm business object APIs
  • 09958ee6 — add crm business object service
  • 029d8aef — add crm sqlc queries
  • d4283199 — add phase2 crm business object schema

Week of April 27 — Typed CRM data and views

  • Added: Added typed CRM attributes for lists, rich values, record references, comparisons, and custom-object search.
  • Added: Added custom-object views, lists, process lists, and filtering primitives.
  • Changed: Extended CRM search and filter hydration around typed values.
  • Fixed: Corrected custom-object search hydration and validated record-reference options.

Detailed commit trail — Week of 2026-04-27

  • 6ab72b06 — add attio-like object experience
  • c3f76b99 — advance attio parity object experience
  • c1317b5a — CRM record relationship detail flow
  • aef58719 — custom fields on CRM users and workspaces
  • 84fc15af — Attio-style CRM system relationships
  • 0a6de276 — CRM system object access
  • bd1481e1 — Show all standard CRM objects in sidebar
  • d0a4557c — generic CRM object grid routes
  • 4c63230b — Use shared checkbox in CRM columns menu
  • b0033dbd — Strengthen CRM grid column borders
  • c47f5c0c — alpha deploy healthchecks
  • cf22978b — Avoid blocking API startup on segment backfill

0.0.3 — Platform transition and API foundations (March 2026)

Week of March 9 — Repository and inbox foundation

  • Added: Created the repository and established the first Wazapin platform workspace.
  • Added: Built the initial inbox reply-preview contract, reply jumping, and bounded fetch behavior.
  • Changed: Scoped inbox queries and stale-request guards to the active organization and conversation.
  • Fixed: Preserved reply targets and optional sender labels while making preview rendering safer.

Detailed commit trail — Week of 2026-03-09

  • 89f0e7a0 — finalize inbox reply context flow
  • 955eda06 — expose normalized inbox reply preview contract
  • a2869358 — scope inbox queries by organization
  • f866a59c — Reset inbox jump state on org or conversation change
  • cfe551f5 — Synchronize inbox stale request guards with props
  • f2172f33 — Ignore stale inbox jump requests on conversation change
  • 4564f945 — Clamp reply jump fetches to remaining budget
  • 68284f4e — Strengthen reply jump budget test
  • 7b83008b — reply jump fetch budget accounting
  • 2236df6e — reply jump to preview affordance
  • aa1ea7b7 — reply jump flow to inbox message list
  • 45760792 — narrow reply preview safety heuristics

Week of March 16 — Provider parity groundwork

  • Added: Expanded provider interfaces for channel administration, privacy, profiles, labels, groups, contacts, calls, newsletters, and message actions.
  • Changed: Routed provider capabilities through concrete boundaries instead of generic message handlers.
  • Changed: Added Wago parity mappings for sync history, media downloads, newsletter invites, contact operations, and profile updates.
  • Fixed: Aligned provider payloads and semantics with upstream contracts, including group invite resets and media behavior.

Detailed commit trail — Week of 2026-03-16

  • 6122f23c — Commit all current workspace changes
  • d8871a9d — docs: refresh messaging API docs and examples
  • 3c346095 — switch public message types to noun-style
  • 4f25bb07 — normalize legacy send prefix on read paths
  • c2a31ff6 — scope saved replies listing by conversation channel
  • ed9f8060 — inbox: honor automation scope channel_type in evaluator
  • bfc5a518 — track SLA breaches only when thresholds are exceeded
  • 1da369e0 — inbox: enforce owner-only conversation unlock
  • 32c91489 — add sla metrics dashboard
  • 0c58498a — add sla metrics endpoint
  • 4d7b79ac — add sla metric queries
  • 556953f9 — add sla metrics table

Week of March 23 — Contacts, segments, and analytics

  • Added: Introduced CDP source onboarding contracts, contact identity merge flows, consent-center operations, and a unified contact timeline.
  • Added: Added segments v2 computed attributes and data-quality observability APIs with an admin surface.
  • Added: Started the WhatsApp analytics dashboard and its reporting foundations.
  • Fixed: Restored segment-builder type safety and polished the CDP runtime and detail flows.

Detailed commit trail — Week of 2026-03-23

  • d057f009 — document live AI schema compatibility repair
  • ca23b900 — missing AI agent foundation migrations
  • 07f69f1a — AI platform beta and fix app lint/check/build/test
  • 7fd461bc — align workspace page layouts
  • 0736db54 — default CDP segments and sync workspace changes
  • 8209b734 — shrink inbox contact sidebar when collapsed
  • 6f54d4c0 — harden template sync and feedback
  • bec47210 — template sync and streamline library builder flow
  • cf1ade46 — add typed template send sdk helper
  • 09734253 — add robust AudioPlayer component with waveform visualization for voice notes
  • 04167697 — redesign message bubbles, carousel, and location previews for tighter conversational scanning
  • 5fab1e46 — switch template send to nested v2 format

Week of March 30 — AI runtime and specialist routing

  • Added: Created the AI runtime state schema, backend services, event flow, and first frontend workspace components.
  • Added: Introduced feature flags, sentiment analysis, escalation signals, business-hours configuration, and multi-AI specialist routing.
  • Changed: Connected AI decisions to inbox conversations and worker-backed autonomous replies.
  • Fixed: Honored conversation ai_mode routing and registered the required API and worker jobs.

Detailed commit trail — Week of 2026-03-30

  • 45e407b1 — Meta webhook compatibility routing
  • ffb5215b — extract label string from routeMeta object
  • b12bb419 — implement best practices and cleanup dead code
  • 1220cc85 — persist inbox AI mode state in UI and API
  • bedb3be7 — SQL error in UpdateConversationAIState
  • c998fb81 — Add ai_mode support to PATCH /v1/conversations/{convID}
  • 3e6ced9f — Add AI mode toggle to conversation sidebar
  • 503761df — AI inbox filters and New agent button
  • afacc009 — database migration compatibility issues
  • 2c35bfe2 — Final Verification Wave fixes - TypeScript errors and boulder.json cleanup
  • 5ce13472 — complete Wave 6 and production deployment setup
  • 24933a8b — resolve TypeScript errors in 5 files

0.0.2 — Wazapin, WABA, and the first operational product (November–December 2025)

  • Added: Rebranded the product to Wazapin and established the first product-facing SaaS identity.
  • Added: Added WABA embedded signup, WAGO QR connection, channel management, and the WABA SDK refactor.
  • Added: Built the Omni Inbox with conversation management, outbound messages, realtime WebSocket updates, and the unified channel schema.
  • Added: Added WhatsApp REST API documentation, OpenAPI support, webhook processing, and the initial 19 Cloud API webhook types.
  • Changed: Expanded the product from a general SaaS foundation into a WhatsApp operations platform with CDP and customer-management foundations.
  • Fixed: Hardened authentication, CSRF boundaries, realtime subscriptions, message persistence, unread state, and Cloudflare Workers compatibility.

0.0.1 — Productization into a multi-tenant SaaS (June–September 2025)

  • Added: Introduced the multi-tenant authentication and organization database foundation on Neon PostgreSQL.
  • Added: Added database seed data, UUID v7 identifiers, backup/export tooling, and infrastructure setup with Terraform.
  • Changed: Migrated the application toward ShadCN UI, TanStack Router, Bun, and an independently deployable app/API architecture.
  • Changed: Split the marketing site from the main application and consolidated the edge worker into the API.
  • Added: Established Wazapin domains, deployment configuration, security policy, OAuth/passkey flows, email templates, and email OTP login.
  • Added: Created the first VitePress documentation site and the initial WhatsApp implementation documentation.

0.0.0 — Personal project origins (May 2021–May 2025)

  • Added: Started as a personal React-based SaaS project and experimentation space.
  • Changed: Evolved through Material UI, Vite, Firebase authentication, Recoil, Hono, React Router, and Cloudflare Workers foundations.
  • Added: Introduced early API route structure, client configuration, environment handling, and edge-runtime tooling.
  • Changed: This period is historical groundwork; it should not be read as a mature Wazapin product release.

Versioning policy

  • Keep active development below 1.0.0.
  • Use 0.0.x as chronological pre-release milestones across the full product lineage until a deliberate public release policy is approved.
  • This changelog is a curated history: repeated tests, checkpoints, generated files, and internal-only planning are merged into the user-visible outcome.
  • Mark breaking changes explicitly and link the migration guide when one exists.
Navigation

Type to search…

↑↓ navigate↵ selectEsc close