Changelog
A curated timeline of what has shipped during the Emban alpha, grouped by month. Dates are drawn from when schema and major feature changes landed on the primary deployment; patch-level fixes are not individually listed.
Alpha cadence. Emban is in alpha, not yet under semantic versioning. Breaking changes are rare but possible; when they happen, they are called out in the entry below and given a lead time of at least two weeks before the next monthly cut.
April 2026
Late April
Observability & ops.
- Webhook deliveries observability. New
webhook_deliveriestable persists every alert and report webhook attempt (status_code,response_excerpt,duration_ms,attempt,error). Admin → Webhooks page aggregates 24h success/fail counts and the last response per rule. See Webhooks. - Saved queries promoted from localStorage to Postgres. Previously per-browser; now org-scoped with starring and admin-only write. Accessible via
GET /v1/saved-queries. See Query Builder. - Cross-org 404 discipline.
POST /v1/dashboards/{id}/publishandPOST /v1/dashboards/{id}/unpublishnow return404for cross-org or missing IDs instead of500/ silent204. Matches the existence-leak model of the cross-orgGET. - Query Builder upgrade. CodeMirror 6 editor with schema-aware autocomplete (SQL keywords + columns), Format via
sql-formatter, schema browser with abbreviated type labels (DateTime64(3, 'UTC')→DateTime64,Map(String, Float64)→Map),query.adhoc.runwritten toaudit_logon every run. - Docs expansion. New pages for Alerts, Scheduled Reports, Webhooks, Query Builder, Widgets, Vanilla JavaScript, Pricing, Security, and this Changelog. Sidebar grouping reorganized into Automation / Billing / Security / Operations / Reference.
Mid-April
Chart range + reports.
- Scheduled reports. Daily/weekly/monthly delivery of a dashboard as CSV (per-widget sheets), PNG, or PDF (headless Chrome server-rendered). Email via SMTP relay and webhook via raw-artifact POST. See Scheduled Reports.
- Standalone widgets. Widgets now exist as first-class library entries, not only as inline rows on dashboards. Alerts can attach directly to a standalone widget without requiring a dashboard.
- New chart kinds: dual-axis, scatter, pivot.
dual_axisdraws two metrics on separate y-axes in a timeseries widget.scatterplots two aggregates (x, y) with optional size.pivotproduces a 2D matrix from two group-by dimensions. - Gauge zones + reference lines. Gauges accept an array of colored severity bands (green/amber/red by
targetfraction). Line/area/bar/stacked-bar accept horizontal reference lines with labels (e.g. "SLO 500ms"). - Text / markdown widget. New
kind=textwidget renders arbitrary markdown into the grid — section dividers, context notes, links. - Interactivity polish. Cross-filter chips on all cartesian charts (click a bar, chip appears in the filter bar, click chip to clear). Synced crosshair across time-series widgets via
echarts.connect. Drag-to-zoom on line/area/bar overrides the global period with a custom range.
Early April
Entitlements + alerts.
- Entitlements framework. Four plans (Free / Starter / Growth / Scale) with events and queries meters, published-dashboard cap, editor seat cap, API key cap, feature flags (remove branding, custom theme, audit log, embed permissions). Violations returned as
402with a machine-readable code. See Pricing. - Alerts. Threshold, delta, and no-data conditions with cooldown and email/webhook delivery. Alerts attach to widgets and read their published config. Every firing writes an
alert_eventsrow for audit. See Alerts. - Per-plan theme normalization. Custom themes are clamped to the plan's allowed range at publish time; Free-tier embeds always use the default palette.
- Billing status semantics. Independent of plan:
active,trialing,past_due,canceled. Past-due blocks writes for up to 14 days; canceled downgrades to Free limits without deleting data.
March 2026
Late March
Multi-user foundation.
- Multi-user auth. Session login with bcrypt-hashed passwords. Four roles (
owner,admin,editor,viewer) with rank-based authorization. Full audit log of logins and role changes. See Security. - Invite + accept flow. Org owners/admins invite members by email; invitees accept via a signed link. Pending invites count against the editor seat cap.
- Published vs draft dashboards. Explicit state machine for dashboards: draft → published, with a stored
published_configsnapshot so draft edits don't leak to customer embeds until you hit Publish.Restore Publishedreverts a draft to the last published version. - Embed sessions. HS256-signed JWTs minted from an admin API key, TTL 1–24 hours. Encode org, tenant, dashboard, and locked filters. Cannot be forged client-side. See Embed Runtime.
Earlier in the alpha
Before the March push, Emban consisted of the core ingestion and dashboard model:
- ClickHouse-backed event ingestion.
POST /v1/eventsaccepts up to 1000 events per batch, withtenant_id,event_name,string_props,numeric_props, andtimestamp. - Dashboard + widget model. 12-column grid, widget kinds (KPI, timeseries, breakdown, table, heatmap), compare against previous period, formatting and units.
- Dataset discovery.
/v1/discoverintrospects the events schema and proposes widgets./v1/discover/auto-createbuilds a starter dashboard in one call. - Embed runtime. Static HTML dashboard served from the embed domain, driven by postMessage from the host page for theme, filters, and reload commands.
- Tenant isolation. ClickHouse
additional_table_filtersenforces org + environment scoping on every widget query, invisible to the user's SQL.
Coming soon
Scoped for the next few weeks of alpha, not yet shipped:
- HMAC-signed webhooks. Per-rule signing secret and
X-Emban-Signatureheader so receivers can cryptographically verify the sender. - Billing UI. Self-serve upgrade/downgrade flow, invoice history, and usage dashboard.
- Status page. Public health page at
/status/covering ingestion, query, embed, and scheduler uptime. - SDK hardening. Publish-ready package flow, stronger examples, and CSR/SSR parity for the typed React surfaces.
- Audit log export. CSV/JSON export and configurable retention (Enterprise license).
Feedback. Alpha customers drive the release priorities. If something on "Coming soon" matters to your rollout, email hello@emban.sidelabs.dev and we'll factor it into the next iteration. If you hit a regression, file it to bugs@emban.sidelabs.dev with a short repro.