> Changelog

Everything we ship, version by version.

v0.19.0

April 20, 2026

Custom Event Pipeline, Tag Manager Bridge & SDK Hardening

  • new
    DataLayer Bridge plugin: auto-captures GTM dataLayer.push() events as Gurulu tracking — zero GTM config needed
  • new
    GTM templates: client-side and server-side tag templates ready for Community Template Gallery submission
  • new
    Per-tenant custom event mapping: event-name-mapper now supports site-specific mappings with L1/L2/L3 cache
  • new
    CLI goals and funnels CRUD: gurulu goals list/create/update/delete and gurulu funnels list/create/update/delete
  • new
    Sourcemap upload API: POST /api/tracker-config/sourcemaps enables error deobfuscation via CLI or CI/CD
  • new
    ServerApiKey management: new endpoint for creating/listing/revoking server-side API keys
  • new
    Node SDK identify(): server-side identity resolution with direct send + retry
  • new
    CAPI DLQ retry worker: failed conversion events automatically retried with exponential backoff (max 3x)
  • new
    Meta CAPI batch sending: up to 1000 events per request (was 1-by-1)
  • new
    Flutter & React Native: 13 canonical event helpers (purchase, subscribe, addToCart, etc.) now exposed
  • improved
    Web SDK pre-load buffer: events fired before t.js loads are queued and replayed automatically
  • improved
    AI setup auto-mapping: preSeedIntentProposal now creates EventNameMapping rows for proposed events
  • improved
    Goal cache invalidation: goals activate immediately after creation (was 5-min stale window)
  • improved
    CLI add-server: correct Gurulu class import, real ServerApiKey creation, working identify() example
  • improved
    Node SDK timeout enforcement: AbortController with configurable timeout on all HTTP calls
  • improved
    Server ingest rate limiting: per-tenant plan-based rate limit added (was IP-only)
  • fixed
    iOS & Android consent: track() now respects consent=rejected (was only blocking identify)
  • fixed
    Android consent persistence: consent level persisted to SharedPreferences, survives app restart
  • fixed
    End-to-end integration tests: 17 tests covering custom event mapping → goal evaluation pipeline
v0.18.0

April 20, 2026

Web SDK, CLI Hardening & Billing Events

  • new
    @gurulu/web SDK published to npm with React component (<GuruluProvider />) and vanilla JS API
  • new
    CLI v0.3.4: AI assistant integration prompt shown after install (Claude Code / Cursor / Codex)
  • new
    CLI client-side fallback: 12 events + 2 funnels generated when LLM API unavailable
  • new
    Ingest health endpoint (/api/ingest/v1/health) for CLI verification
  • new
    $purchase, $subscribe, $churn event definitions for SaaS billing tracking
  • improved
    CLI install defaults: --auto-instrument, --auto-properties, --verify now all true by default
  • improved
    Generic web-app fallback expanded from 6 to 12 events with 2 funnels
  • improved
    Script tag src changed from /gurulu-tracker.js to https://gurulu.io/t.js (CDN URL)
  • improved
    Post-install guidance: doctor, events tail, dashboard link, MCP server prompt
  • fixed
    CLI idempotency: detects existing tracker tags, prevents duplicate injection on re-install
  • fixed
    Layout duplicate Script tag no longer injected on repeated gurulu install
v0.17.0

April 20, 2026

Event Pipeline, CLI Publishing & Dogfooding

  • new
    Smart event matching: 5 strategies (eventName, CSS selector, text, URL pattern, JSON fingerprint) for custom event definitions
  • new
    Real-time goal evaluation: DiscoveredGoal patterns evaluated against live events with conversion counting
  • new
    Funnel pre-computation: hourly background job computes windowFunnel() metrics, cached for instant dashboard display
  • new
    Published @gurulu/cli (27 commands), @gurulu/mcp-server (37 tools), @gurulu/node SDK to npm
  • new
    Stripe analytics bridge: $purchase, $subscribe, $churn events emitted from billing webhooks to ClickHouse
  • new
    Full session replay: all sessions recorded continuously (was error-only), MinIO blob storage integrated
  • new
    Auto-identify: $login, $signup, $logout, $session_start, $first_action events auto-tracked on auth state changes
  • new
    Real-time event definition counter: totalMatches incremented inline on ingest with Redis cache
  • new
    CLI dogfooding: auth via device-link, doctor, events tail, install — all verified end-to-end on gurulu.io
  • new
    Use-cases page overhaul: CLI setup flow section, 12 feature cards, session replay + AI chat + sourcemaps showcased
  • improved
    Scheduler reliability: heavy task timeout 300s (was 60s), rollup interval 1h (was 6h), CDC pull 5min (was 1h)
  • improved
    Rollup query resilience: all analytics queries accept both event_type and event_name as fallback
  • improved
    SDK event_type mapping: pageview, click, session_start correctly typed instead of all 'custom'
  • improved
    Integrations page blur gate with Coming Soon overlay
  • improved
    MiniMax references replaced with generic LLM terminology across all user-facing content
  • fixed
    Redirect loop fix: stale session cookies no longer cause ERR_TOO_MANY_REDIRECTS between login and dashboard
  • fixed
    SSL/Nginx: Let's Encrypt certificates + nginx reverse proxy added to Docker Compose for production HTTPS
  • fixed
    ClickHouse query fixes: plan column name, Array(String) parameter formatting, capi_payload JSON escaping
  • fixed
    React #310 infinite re-render fix in cross-property journeys and milestones pages (unstable useMemo deps)
  • fixed
    Duplicate page_view dedup: 200ms guard prevents Next.js App Router double-firing on initial load
  • fixed
    time_on_page fix: first page view no longer reports raw Unix timestamp as duration
  • fixed
    Identity consent default changed to 'full' (opt-out model) — identify calls no longer silently rejected
v0.16.0

April 19, 2026

Dashboard Redesign, SDK Publishing & Full i18n

  • new
    Sidebar redesign — 6 collapsible sections (Analytics, Users, Behavior, Error Tracking, Intelligence, Integrations) with 38 previously hidden pages now accessible
  • new
    Session Replay page — list recorded sessions with rrweb player, MinIO segment loading, error markers
  • new
    Detailed Features page at /features — 30+ features across 6 categories with descriptions
  • new
    Custom Plan self-service configurator — slider-based pricing, auto Stripe product/price creation
  • new
    Mobile SDK published — iOS (SPM), Android (JitPack), React Native (npm @gurulu/react-native), Flutter (pub.dev gurulu_flutter)
  • new
    CLI mobile framework detection — iOS/Android/React Native/Flutter auto-detect, setup snippets, doctor checks
  • new
    MCP mobile tools — get_install_snippet supports all platforms, events list has platform filter
  • new
    Error stability KPIs — crash-free rate, error rate, uptime with trend comparison and color thresholds
  • new
    Ad Performance blur overlay — shows 'Coming Soon' when ad platform credentials not configured
  • improved
    Complete dashboard i18n — 36 pages + sidebar translated to EN/TR/ZH (~400 translation keys)
  • improved
    Onboarding simplified — merged snippet+discover into single setup step with AI/CLI/Manual methods
  • improved
    AI setup prompt includes error tracking, source maps, and full SDK examples per platform
  • improved
    Settings platform management — add/remove Web/iOS/Android platforms per site with toggle chips
  • improved
    Dynamic Stripe pricing — auto-creates products and prices on first checkout, no manual setup needed
  • fixed
    Heatmap SDK enhanced — click coordinates (x/y/page/viewport/scroll) added to click events
  • fixed
    Site deletion with 30-day grace period — confirmation dialog, token revocation, archived state
  • fixed
    SEO optimization — sitemap (24 pages), OG metadata (21 pages), JSON-LD (5 pages), docs metadata (30 pages)
v0.15.0

April 19, 2026

Storage, Privacy & Performance

  • new
    ClickHouse Tiered Storage — hot/cold disk separation with automatic partition migration after 6 months
  • new
    Compression Codecs — Delta, Gorilla, DoubleDelta, ZSTD applied to 80+ columns for 30-50% storage reduction
  • new
    KVKK/GDPR Pseudonymization — strip PII without full erasure, preserving anonymous analytics data
  • new
    Right to Restriction (GDPR Article 18) — reversible processing freeze for legal dispute scenarios
  • new
    Error Tracking Onboarding — dedicated setup step with one-click error + replay activation
  • new
    Error Tracking Plan Limits — per-plan quotas for error events, replay retention, and alert channels
  • improved
    Analytics API parallelized — overview dashboard queries run concurrently (13 queries via Promise.all)
  • improved
    Entry/exit page aggregation pushed to ClickHouse subquery — eliminates OOM risk on high-traffic sites
  • improved
    Cache headers added to 15 analytics API routes (s-maxage=30, stale-while-revalidate=60)
  • improved
    Tree-shaking optimized for lucide-react and recharts via optimizePackageImports
  • fixed
    Mobile SDK endpoint URL construction fixed — identify and deeplink calls were hitting wrong paths
  • fixed
    iOS SDK thread safety — serial DispatchQueue protects all mutable state
  • fixed
    CLI status command now calls health endpoint instead of showing TODO placeholder
v0.14.0

April 18, 2026

Error Intelligence

  • new
    Source Map Deobfuscation — automatic stack trace symbolication for minified JS
  • new
    Error Alerting — hybrid z-score anomaly detection + rule-based threshold alerts
  • new
    Environment Filter — scope error views by production/staging/development
  • new
    Custom Fingerprinting Rules — JSON rule engine with regex/contains/equals operators
  • new
    Suspect Deploy Detection — correlate error spikes with recent releases
  • new
    Advanced Error Search — full-text search with type, browser, and date range filters
  • new
    Stability Score — session-based crash-free rate with 7d/30d rolling windows
  • new
    Revenue Impact Engine — LTV-weighted revenue loss calculation with funnel position
  • new
    AI Priority Score — 7-factor scoring (frequency, users, revenue, trend, recency, stability, churn)
  • new
    Error-Churn Correlation — link error patterns to user churn signals
  • new
    Funnel Error Overlay — visualize errors at each funnel step
  • new
    Privacy-First Session Replay — rrweb recording with MinIO storage and error-only mode
  • new
    Self-Healing Actions — feature flag kill switches + webhook-triggered rollbacks
  • new
    Error Budgets & SLOs — burn rate tracking with multi-threshold exhaustion alerts
  • new
    Predictive Error Detection — linear regression trend analysis with deploy risk scoring
  • improved
    Dashboard enhanced with Priority, Revenue, Stability, and Deploy Risk columns
  • improved
    Churn prediction enriched with error frequency and severity signals
  • improved
    Anomaly detector expanded with error_rate and error_trend probes
v0.13.0

April 18, 2026

Multi-Platform Onboarding

  • new
    Multi-platform onboarding: Web + iOS + Android with dynamic setup steps
  • new
    Canonical Event Catalog: 18 standard events with typed SDK helpers
  • new
    Event name normalization: 50+ default mappings (order_completed → $purchase)
  • new
    AI Event Discovery: 3-step flow (scan/review/setup) — works without CLI
  • new
    $app_install + $first_open tracking for iOS and Android
  • new
    Universal Links (AASA) + App Links (assetlinks.json) auto-generation
  • new
    Deeplink campaign attribution with deferred deeplink support (48h TTL)
  • new
    Settings → Devices page for connected device management
  • new
    Settings → Mobile Apps for Universal Links / App Links configuration
  • new
    Settings → Event Mappings for custom normalization rules
v0.12.0

April 18, 2026

Cross-Site Intelligence

  • new
    Tenant-level identity federation — soft-link users across sites without merging
  • new
    Auto-link engine: same email/phone/OAuth across sites → automatic TenantIdentityLink
  • new
    Deduplicated unique user count with Union-Find algorithm
  • new
    Cross-site presence badge on user profiles ("Active on 3 sites")
  • new
    Tenant analytics dashboard: KPI cards, per-site breakdown, overlap heatmap
  • new
    Privacy-first: tenant-scoped hashing, no raw PII at federation level
v0.11.0

April 18, 2026

Identity Resolution Engine

  • new
    Site-level identity resolution with 6 claim types (email, phone, OAuth, device, external ID, anonymous ID)
  • new
    Non-invasive device fingerprinting across Web, iOS, and Android SDKs
  • new
    Claim confidence decay with type-specific half-lives (email ~693d, anonymous_id ~69d)
  • new
    Probabilistic matching with behavioral similarity scoring
  • new
    4-level consent tracking (none/analytics/marketing/full) with KVKK/GDPR compliance
  • new
    Cross-browser real-time merge on identify() — instant multi-person deterministic merge
  • new
    Phone number (E.164) normalization and OAuth provider ID claims
  • new
    Reverse merge with full edge restoration
  • new
    $identity_merge audit events for debugging and compliance
v0.10.0

April 17, 2026

Launch Readiness & AI Discoverability

  • new
    About page with mission, values, and company story
  • new
    4 new blog posts: Error Tracking Guide, GA4 Migration, Autonomous Analytics, Privacy-First Analytics
  • new
    SEO infrastructure: sitemap.xml, robots.txt, web app manifest, JSON-LD structured data
  • new
    Open Graph & Twitter meta tags on all key pages
  • new
    OG image (1200x630, dark theme with neon green branding)
  • new
    LLM-readable content: /llms.txt index, /llms-full.txt, 21 per-page markdown routes with cross-navigation
  • new
    Custom 404 page with dark theme design
  • new
    Root error boundary component
  • new
    Dashboard loading skeleton
  • new
    Launch preparation: LAUNCH-READY.md with ProductHunt/HackerNews copy
  • improved
    Onboarding flow: welcome screen, inline error toasts, 2-minute event verification with retry, skippable agent setup, "You're all set!" celebration screen with next steps
  • improved
    10 dashboard pages with proper empty state cards (heatmaps, flow-graph, audit, warehouses, cross-property journeys, CDC sources, transfers, alert channels, alert routing, LTV)
  • improved
    Docs quick-start expanded with framework-specific guides and troubleshooting
  • improved
    New dashboard features documentation page
  • fixed
    Double navigation bar on /compare, /blog, /changelog and blog post pages
  • fixed
    Pricing page external docs link changed to internal /docs route
  • fixed
    Events sparkline replaced misleading fake chart with "7d trend" label
  • fixed
    Playground token stub TODO comments cleaned up
  • fixed
    Production console.log statements removed from auth and database modules
  • fixed
    Landing page and status page missing metadata
v0.9.0

April 16, 2026

Frontend Overhaul & Marketing Launch

  • new
    18 competitor comparison pages
  • new
    Blog with first 2 posts
  • new
    Legal pages (Terms, Privacy, Security)
  • new
    Pricing page (MVP — $0 forever)
  • improved
    Sidebar restructured (6 grouped sections, 27 items)
  • improved
    Error boundaries + loading skeletons
  • improved
    182 i18n keys added (TR/ZH complete)
  • fixed
    Hardcoded strings replaced with i18n
v0.8.0

April 16, 2026

Infrastructure & Performance

  • new
    ClickHouse TTL + cold storage tiering
  • new
    Postgres + ClickHouse daily backups
  • new
    Disk monitoring (6h interval)
  • improved
    Rate limiting (200r/s IP, AI 50/day)
  • improved
    6 API endpoints paginated
  • improved
    7 useMemo performance optimizations
  • fixed
    All ClickHouse schema mismatches resolved
v0.7.0

April 16, 2026

Agentic Setup & CLI

  • new
    Device-link auth flow (OAuth device grant)
  • new
    Mobile QR pairing (iOS/Android/RN/Flutter)
  • new
    CopyButton component + pair modal
  • new
    Onboarding "Connect Agent" step (CLI/Mobile/MCP)
  • new
    Key lifecycle jobs (expire, stale notify)
  • improved
    Doctor + status commands use correct API
  • fixed
    CLI dual API client bug
v0.6.0

April 15, 2026

Production Deploy

  • new
    Hetzner server setup (12 core, 62GB RAM, NVMe + RAID1)
  • new
    Docker Compose production stack (8 containers)
  • new
    Traefik + Let's Encrypt SSL
  • new
    Cloudflare DNS + proxy
  • improved
    UFW firewall + fail2ban
  • fixed
    Next.js route export bug

Subscribe via RSS