// CHANGELOG

What's new

Every release, improvement, and fix — in one place. Subscribe via RSS to get notified the moment something ships.

  1. IMPROVED

    Performance: shared DB pool, GZip, analytics fixes, N+1 elimination

    A batch of four performance improvements shipped together: a shared Postgres connection pool across request handlers, GZip response compression, fixed analytics query limits, and N+1 query elimination across customer list endpoints.

    • Shared DB pool across request handlers — connection overhead cut by 70%
    • GZip compression on all JSON responses — payload sizes down 60%+
    • Analytics endpoints now respect per-query limits, preventing runaway queries
    • N+1 query patterns eliminated from customer and deal list endpoints
  2. NEW

    source_is_null and untagged filters for customers and bulk-tag endpoints

    Two new filter parameters let you find exactly the leads that need attention: contacts imported without a source, and contacts with no tags applied. Both filters are available on the list endpoint and the bulk-tag endpoint.

    • filter_source_is_null=true returns contacts with no import source
    • filter_untagged=true returns contacts with an empty tags array
    • Both filters work in combination with existing tag and search filters
    • MCP tools list_customers and bulk_tag_customers updated to support both flags
  3. NEW

    Instant org provisioning with zero-human onboarding

    First-time users are now auto-provisioned into a full org the moment they sign in via AINative auth. No manual setup, no waiting — your pipeline is ready before you finish the first tab switch.

    • Auto-provision org, pipeline, and default ICP profile on first login
    • Zero-human provisioning path: 100% agent-driven org bootstrap
    • MCP server ships with instant_provision tool for programmatic setup
    • Health probe aligned to direct Postgres for sub-50ms cold checks
  4. IMPROVED

    MCP server bumped to v0.2.0 — PyPI release + tag coverage tool

    zeropipeline-mcp v0.2.0 ships to PyPI. The package now includes get_tag_coverage for auditing how well leads are segmented, and a confirmation gate blocks bulk imports of more than 50 records without explicit approval.

    • zeropipeline-mcp v0.2.0 released to PyPI
    • New get_tag_coverage MCP tool returns tag distribution across your CRM
    • Confirmation gate added to bulk_create_customers for imports > 50 records
    • Audit logging added to all bulk_create_customers calls
  5. NEW

    JSONB tag filter and mandatory source/tags on import

    Tag filtering now uses Postgres JSONB operators instead of application-level filtering, cutting response times on large datasets from seconds to milliseconds. Bulk imports now require a source field and default_tags to enforce clean data hygiene.

    • JSONB @> operator replaces application-level tag filtering
    • Bulk import requires source field — rejected at validation if missing
    • default_tags applied to every record in a bulk import run
    • POST /customers/bulk-tag endpoint for mass tag operations
  6. IMPROVED

    Writes routed through direct Postgres, eliminating ZeroDB REST latency

    All mutating operations (create, update, delete) now bypass the ZeroDB REST layer and talk directly to the Postgres instance. Read operations still use ZeroDB for compatibility. P95 write latency dropped by 68%.

    • Direct Postgres adapter for all write paths
    • ZeroDB REST retained for reads and vector operations
    • Database adapter auto-selects path based on operation type
    • Connection pooling tuned for Railway's shared Postgres tier
  7. NEW

    MCP server for native agent integration

    ZeroPipeline now ships an MCP (Model Context Protocol) server, letting any Claude, GPT-4o, or Gemini agent call pipeline tools directly. Plug in your agent and it can create deals, move stages, and run outreach — no custom API wrapper needed.

    • 40+ MCP tools covering the full CRM surface
    • Published to npm as @ainative/zeropipeline-mcp
    • Works with Claude Desktop, claude-code, and any MCP-compatible host
    • SEO-optimized package metadata for registry discovery
  8. FIXED

    Password reset proxy and auth route alignment

    Password reset emails were failing silently when the user account was managed by AINative auth (SSO flow). Requests are now correctly proxied to the AINative auth service, and the /forgot-password route handles both local and SSO accounts.

    • Proxy password-reset requests to AINative auth for SSO accounts
    • Unified /forgot-password flow for local and SSO users
    • Fixed token expiry edge case on reset link click
    • Added E2E test coverage for the full reset flow