changelog

What shipped

New features, improvements and fixes, as they land. Anything that needs your attention before you upgrade is marked breaking.

rss markdown roadmap page 3 of 4

August 2026

Alerts

Alert notifications now include a chart of the metric

Slack, Discord and email alerts show the metric over the incident so far, with the threshold drawn in, so you can tell recovering from worsening.

A repeat notification used to say 4.2% > 2% every thirty minutes, and you couldn’t tell a recovering incident from a worsening one without opening Maple.

Alert notifications in Slack, Discord and email now include a chart of the metric over the incident so far, with the threshold drawn in. Each one also carries a text sparkline, so the trend still shows on a lock screen, in a push preview, or in a client that doesn’t load images.

The chart is drawn from the same checks the alert evaluated, so it always agrees with the value printed above it. It also shows the rule as it was when the alert fired: renaming the rule or changing its threshold later doesn’t change a chart you already received.

Get started with notification destinations.

Dashboards

Share a dashboard by link, and keep it refreshing

Share a dashboard with your org or with anyone who has the link, and set an auto-refresh interval for boards left on a wall screen.

You can now share a dashboard with people outside Maple, and keep a board on a TV or wall monitor up to date without anyone clicking Reload.

Open the ⋮ menu in the dashboard header and choose Share…. Pick Anyone in this organization for signed-in members of your org, or Anyone with the link for a public link that needs no sign-in. Switching between the two keeps the same link. Replace issues a new link and cuts off the old one, and Not shared turns sharing off.

A shared board looks like the one you built: same layout, groups and tabs, and the same variable values. Add ?var-<name>= to the URL to set a variable. Maple builds every query on its side, so a link only ever shows the widgets on that board. Public links also unfurl in chat apps with the board’s name, description and sections.

Auto-refresh

Pick an interval next to Reload: off, 5s, 10s, 30s, 1m, 5m or 15m. It works on signed-in and shared boards, and pauses while the tab is hidden. Choosing an interval adds ?refresh= to the URL, so a read-only viewer can start or stop it for themselves. In edit mode it also saves as the board’s default.

Get started with building dashboards.

Dashboards

Collapsible groups and tabs on dashboards

Organize a large dashboard into sections you can collapse, and split a section into tabs when it holds more than one view.

Dashboards used to be one flat canvas, so a board with thirty widgets was one long scroll. You can now organize widgets into groups that collapse, and give a group tabs when it holds more than one view.

  • Add a group from the toolbar, or with the + on any group. Double-click a group name to rename it, reorder groups with move up and move down, and mark a group Collapsed by default.
  • Move a widget between groups from its menu with Move to….
  • Delete safely. Deleting a group asks whether to keep its widgets or delete them. Deleting a tab asks which tab should receive its widgets, and names that tab in the button.
  • Your view is yours. Which groups are collapsed and which tab is open live in the URL, so collapsing a group changes nothing for the next person who opens the board, and you can share a link that opens on a specific tab.

Get started with building dashboards.

July 2026

Integrations

Setup audit, Cloudflare over OAuth, and a new Ingestion page

Check your whole Maple setup in one report, connect Cloudflare without Logpush or an agent, and find your endpoint and keys in one place.

  • Setup audit. Open Settings → Setup Audit for a report of 41 checks across alerting, ingest coverage, attributes and trace completeness. It catches problems that otherwise fail silently: an alert rule routed to a deleted destination, a service whose logs and traces use different service.name values, or traces with spans whose parent never arrived. The same report is available through the audit_setup MCP tool.
  • Cloudflare over OAuth. Connect a Cloudflare account from Integrations and Maple pulls its analytics for you, with no Logpush jobs or agent to run. Cloudflare gets its own page under Infrastructure → Cloudflare, and zone analytics can be filtered by path, country and client.
  • Ingestion settings. Settings → Ingestion puts your endpoint and keys on one card, with a live status banner showing whether data is arriving. API keys can be revealed from a masked value, and you set scopes and expiry when you create one.
  • Integrations. The integrations list, empty states and drill-ins were redesigned. Searching Kubernetes and host lists now filters in place instead of reloading the page.
  • Local mode gained metrics, services and errors views, plus telemetry archives.
  • Chat anywhere. Maple AI moved out of the sidebar into a slide-over you can open from any page. Press C, or use the button in the header.

Get started with the Cloudflare integration.

Platform

Fewer freezes, faster loads, and errors that recover

Data-heavy pages no longer freeze or crash the tab, traces and dashboards load faster, and connection errors retry on their own.

This release focused on making Maple feel steady on large orgs and long sessions.

  • No more freezes. Fixed the main-thread freezes and tab crashes on data-heavy pages, and added checks so regressions get caught before they ship. The app also loads much less JavaScript up front.
  • Smoother rendering. Removed rerenders that rippled across the whole app, and moved loading skeletons and page transitions off the main thread.
  • Faster loads. Traces and dashboards load faster, and searches over wide time ranges are quicker.
  • Errors that recover. A transient “Cannot reach Maple API” error now retries on its own, and retries right away when your connection or tab comes back.
  • Clearer failures. Data that fails to load shows an error state with a retry button instead of an empty panel, and a crash shows a proper error screen.
  • Deep links. Hard-refreshing a deep link no longer sends you back to the home page.
  • Other fixes: duplicate alert notification emails, session replays that wouldn’t play, and the time jumping when you picked a custom range.
AI

Issues, investigations and escalations in one workflow

AI investigations get their own workspace, can read your connected GitHub source, and feed escalation policies you can test before saving.

Investigations: an issue, its investigation thread, an evidence-backed diagnosis and an approved action.

AI triage used to be spread across short-lived runs, cards and chat panels. It is now one workflow: an issue opens an investigation, the investigation produces a diagnosis backed by evidence, proposed actions wait for approval, and every escalation is recorded.

  • Investigations. Every investigation is listed under Investigations in the sidebar and opens in a workspace with the transcript, diagnosis, evidence, actions and approvals. Error issues, alerts and anomalies all open the same kind of investigation. Transcripts are stored, so a reload or another device shows the full thread, and tool results render as structured views instead of raw JSON.
  • Source code. With the GitHub integration connected, an investigation can search and read your repositories at the commit your telemetry reports, so a finding can point at the code involved. Access is read-only, and source findings stay hypotheses until telemetry confirms them.
  • Settings → Automation. Automatic investigations, severity and confidence routing, and recent escalation deliveries share one page. The Policy simulator shows whether a given severity, source and AI confidence would escalate, and to which destinations, before you change anything.

Learn how issues work in the errors guide.

Dashboards

Dashboard templates sorted by what your data supports

The templates page now shows which dashboards would fill with data today, and says exactly what's missing for the rest.

The templates page used to show every template as a card and dim the ones your org couldn’t use, without saying why. It now splits templates into Ready for your data and Needs setup, so you can see at a glance which dashboards would render something today.

Templates under Needs setup name what’s missing, such as no k8s.pod.* for a metric prefix you aren’t sending yet, or not connected for an integration. Select any template to open a preview panel that renders its real widgets against your own data before you create it.

Also in this release:

  • Raw SQL widgets and query builder widgets now share the same chart types.
  • Better default widget heights, a proper loading screen, and a rebuilt dashboards list.
  • Fixed: stacked area charts outlining the whole stack instead of each series.
  • Fixed: an “Update failed” banner that could get stuck and leave a dashboard read-only.
  • Fixed: two templates (NATS and RabbitMQ) were missing from the templates page.

Get started with building dashboards.

Alerts breaking

Alerts rebuilt on one evaluation engine

Rule previews now come from the evaluator that runs the rule, failed evaluations show up on the rule, and email is a destination.

Alerts rebuilt: one engine, and a preview chart produced by the evaluator that runs the rule.

Every alert rule (built-in signal, query builder or raw SQL) now runs on one evaluation engine. The preview chart you see while building a rule comes from that same engine, with the same windows, filters and reducers, so it matches what the rule does once saved. Raw SQL rules get a preview too: use the $__timeGroup(column) macro to return one row per window.

  • Failures are visible. A failed evaluation is recorded as an error check on the rule instead of a silent gap. The rule page’s Why is this alert failing? panel walks each stage, from query and data to threshold, incident and delivery, and shows where it broke.
  • Overview first. Alerts opens on firing, needs-attention, healthy and disabled rules, each with a 24-hour strip of checks and its last value.
  • Email destinations. Send alerts to members of your organization without setting up a webhook.
  • Fewer false alarms. Anomaly detection raises fewer false traffic-outage alerts.

Breaking changes

Existing rules were migrated when this shipped:

  • Rules on the legacy metric signal type were removed. Recreate them as query-builder rules on metrics.
  • Slack incoming-webhook and Hazel destinations were removed. Slack alerts now go through the Slack app.
  • Rules left without a destination were disabled. Attach one and re-enable them.

See alert rules for the full setup.

오늘 첫 트레이스를 확인하세요.

SDK를 추가하고 OTLP 익스포터를 Maple로 향하게 하면 트레이스가 도착합니다.

maple.dev: OpenTelemetry 위의 옵저버빌리티