Changelog

What changed in ZeroReach, by date.

Each entry is one merged batch of work. Ticket numbers (RO-...) refer to the internal board.

23 October 2026

  • AI credit alerts, cost preview, member limits, usage breakdown, in-flight policy. RO-380..384
  • Ask Zero names, choice form, run details, cheap small talk, chat orb, voice mode. RO-372..377
  • Developer documentation site generated from code. RO-378
  • Top bar, feedback, pins, credit cap, reply locks, draft-ahead, morning prep, plain-words lists, record view 2.0. RO-325, 314, 310, 326, 311, 369, 371, 341, 335
  • Autonomy rule, deal room follow-ups, meeting prep, after-call. RO-361, 365-367, 338, 349
  • Deal room, forecast, agent pause/tools/timezone. RO-350, 352, 362-364
  • Agents hub, deal detail, pipeline settings, lists actions. RO-351, 357-360
  • Deals, tasks, lists, planner token cut. RO-333, 334, 330, 332
  • Landing, command menu, first run. RO-356, 342, 309
  • UI v1 theme, Home, sidebar, appearance, rename. RO-353, 354, 355, 346 web

22 October 2026

  • Zero full action coverage, attachments, scope guard. RO-322..324
  • Calm Home, Zero chat app, model picker + lifecycle, AI credits and usage. RO-315..321
  • Ember design, Zero assistant, morning-desk Home, help centre. RO-313
  • Ask Zero chat assistant, human-only draft approval, locked compose sends. RO-301..305
  • MCP assistant tools, personal export, mailbox pools, window-aware planner. RO-300, 295, 271, 272
  • MCP OAuth connectors, instant sign-out, suspended AI jobs, super-admin management. RO-284, 296, 297, 289, 299
  • Profile, team, workspaces, platform console. RO-291..294

21 October 2026

  • RO-253 (lead/workspace language), RO-254 (language routes editor), RO-256 (WebSocket test connection), RO-223 (optional OTel + traceparent), RO-175 (a11y + smoke e2e). RO-253
  • RO-246 (voice provider SSRF re-check), RO-245 (enrichment overrides, caller ID, search buckets in usage), RO-247 (duplicate merge, stricter compliance wins), RO-249 (voice fast path with cached prompts). RO-246
  • RO-244 (SSRF re-check on every provider use), RO-243 (runner throughput 2.6x at 8 runners), RO-242 (per-member notification reads), RO-233 (KG graph explorer), RO-227 (KG recall/duplicates/retention/rebuild), RO-208 (company from call). RO-244

18 October 2026

  • Postgres token-bucket limiters on every send/dial path, cross-channel contact pressure, deliverability health + DNS checks.
  • Outbound webhooks (signed, retries, SSRF-pinned), privacy export/erasure + workspace deletion, UI audit log. RO-225
  • RO-060 (Node 22, toolchain, audit), RO-085 (Playwright e2e, manual workflow), RO-100 (voice LLM budget), RO-134 (callbacks scheduler + handoff tasks), RO-221 (research on import + domain cache). RO-060

17 October 2026

  • Post-call pipeline (transcript, calls.post_process job, AI analysis via /internal, timeline). RO-042
  • Speed-to-lead (lead webhook -> compliance gate -> calls.speed_to_lead job -> LiveKit SIP dial). RO-041
  • Opt-in enrichment jobs for imported leads on CSV commit.
  • Prune dead Python functions and core-only settings (AI OpenAPI identical).
  • Lead enrichment as a core job (ENRICHMENT_ASYNC, default off). RO-194
  • Prune Python code only the removed public routes used (AI OpenAPI identical). RO-197
  • Rust parity (zoneinfo time zones, NaN/Infinity JSON, pre-year-1 datetimes); RO-192 obsolete. RO-145
  • Compose app profile uses the combined image. RO-198
  • Job queue hardening (NOTIFY herd backoff + exclusive claim, cheap stats, per-kind policies, Python enqueue helper). RO-185
  • RO-186 tx rollback on error, RO-183 CORS outer layer, RO-184 single unsubscribe module, RO-188 single internal token. RO-186

16 October 2026

  • Run DB-backed cargo tests and the auth interop proof in the core CI job. RO-140
  • Answer HEAD on Rust routes with FastAPI's 405 + Allow. RO-141
  • Draft list context + approvals counts endpoint (no N+1). RO-110
  • Voice-call service endpoints (per-call HMAC tokens, calls/meetings, opt-out, dial gate). RO-062
  • Calling-window and call-frequency policy engine in can_contact. RO-032
  • Make uuid7 monotonic within a process; deterministic list ordering in tests. RO-079
  • Merge branch 'ro-103-follow-up-postal-address-in-onboarding-s' into ro-096-follow-up-web-settings-mailboxes-page-re. RO-096
  • Merge main (0016 email drafts + lead imports). RO-103
  • Approvals queue UI (AI emails + reply drafts, bulk approve, pending badge). RO-106
  • CSV lead import (mapping, E.164 normalization, dedupe, suppression-aware) + import dialog. RO-027
  • Free-tier AI providers (Groq/Gemini/OpenRouter/Ollama) with fail-closed quota guards. RO-099
  • Onboarding wizard + workspace profile (ICP/offer/tone/persona); delivers RO-078. RO-050
  • Reply classifier + grounded reply drafts (actions in code, approval-only sending). RO-038
  • Sequence runner (SKIP LOCKED claims, idempotent sends, caps/windows/jitter, stop on reply) + worker cron. RO-036
  • Enrichment (Apollo + PDL adapters, waterfall, credits ledger, cache, provenance, compliance-safe merge). RO-028
  • Web leads table + lead detail with timeline (TanStack Query, workspace-scoped cache). RO-049
  • Mailbox connection via Unipile (hosted auth, encrypted secrets, webhooks, compliant send). RO-034
  • Sequences (steps, scheduling windows, templates, enrollment with compliance checks). RO-035
  • Lead research agent (grounded hooks, Exa search, lead_research table). RO-030
  • Consent ledger, suppressions, can_contact() decision engine. RO-031
  • Web signup/login/logout, session refresh, same-site API proxy, workspace switcher. RO-047
  • Lead timeline (append-only events, registry, timeline + notes routes). RO-026
  • FK kb_documents/kb_chunks.workspace_id -> workspaces (cascade). RO-067
  • Require auth + membership on KB routes (CurrentWorkspace). RO-069
  • RBAC (require_role, members + workspace settings endpoints, last-owner protection). RO-020
  • Companies + leads CRUD (workspace scoped, dedupe, cursor paging). RO-025
  • Auth (signup/login, JWT access, rotating refresh tokens, rate limit, /me). RO-019
  • Verified api image + compose; Dockerfile healthcheck follows $PORT; configurable Redis host port. RO-057
  • Knowledge base (documents, crawl ingest, pgvector search). RO-024
  • Workspaces, users, memberships. RO-018
  • Typed API client generated from FastAPI OpenAPI. RO-048
  • Board.py validate + tests, used by CI. RO-063
  • Document accepted DATABASE_URL/REDIS_URL forms for hosted dev. RO-061
  • Test call flow offline and document tools and API contract. RO-040
  • GitHub Actions CI for all apps + board check. RO-016
  • Database foundation (async SQLAlchemy, Alembic, mixins). RO-015
  • Add app shell, placeholder pages, theme toggle and API helper. RO-012
  • Require anthropic SDK 1.x. RO-023
  • LiveKit voice worker scaffold. RO-013
  • Api service in docker-compose (app profile). RO-056
  • FastAPI api scaffold. RO-011
  • Worker scaffold (arq + Redis). RO-014