Roadmap¶
Pulse is built in the open, capability by capability, across the full customer-data lifecycle. This page is the canonical "what's shipped and what's next" — the pages marked Coming soon elsewhere in these docs link here.
Dates are targets, not commitments. See the Component Map for the components behind each capability.
Shipped — v0.1 (the ingestion plane)¶
- Multi-tenant schema registry — classes, field groups, datatypes, schemas, descriptors, with a draft → published → archived lifecycle and reference protection.
- Streaming ingestion —
POST /v1/collect, PDM-validated, to per-tenant Kafka topics. - Exactly-once worker — Kafka → Iceberg, micro-batched, deduplicated via Postgres.
- Data lake + preview — per-tenant Iceberg tables on object storage, queried with DuckDB.
- Tenant isolation — Postgres row-level security, per-tenant topics and Iceberg namespaces.
- Observability — Prometheus metrics, OpenTelemetry traces, Grafana, health checks.
- Admin portal — Next.js UI for tenants, schemas, and datasets.
Month 2 — Identity & Profiles¶
- Identity Resolution — stitch fragmented identifiers into a graph (Apache AGE).
- Real-Time Customer Profile — unified profile assembled across datasets.
Month 3 — Segmentation¶
- Segments — rule-based and streaming audience definitions over the profile store.
Month 5 — Journeys¶
- Journeys — event-triggered, multi-step orchestration across channels.
Ongoing / unscheduled¶
- Batch ingestion — bulk upload to a dataset.
- Governance & consent — data-usage labels and PDPA/GDPR enforcement.
- SDKs — Python, JavaScript/Web, and Mobile client libraries.
- Kubernetes deployment (Phase 9) — Helm charts, autoscaling, operators.
- Backup & recovery, SLOs — operational runbooks and capacity guidance.
Versioning¶
Doc and product versions track repo SemVer (not calendar). Snapshots are published at minor versions (0.1, 0.2, 1.0); critical fixes are backported to the previous minor only. See the Release Notes for the policy in full.