Skip to main content
This is the platform changelog. It tracks notable user-facing changes to KaireonAI — new features, APIs, UI additions, and behavioral shifts — in reverse-chronological order. New capabilities land here when they are deployed to playground.kaireonai.com. For the forward-looking view, see the roadmap.

2026-04-17 — Action Insights + Reporting Platform

Four coordinated phases shipped as a single milestone: close analytics gaps, make alerts actually fire, ship a full report builder and scheduler, and deliver a C-suite executive dashboard with Export + Save-as-Report across every view.
Pilot deployment posture. This release ships as manual-only automation. The alert evaluator, report scheduler, and scheduled report runner all run through /api/cron/tick, but CRON_TOKEN and AWS EventBridge are intentionally not wired during pilot to avoid runaway LLM / notification cost. Run Now buttons, Export buttons, ad-hoc notification sends, and on-demand alert evaluation all work unconditionally. See EventBridge Setup for the optional wiring path, and the roadmap for the pilot guardrails we plan to ship before enabling automation by default.

Phase 01 — Analytics Foundation

New analytical primitives that power every downstream surface in this milestone.
  • New dashboard-data case selection_frequency — per-offer eligibleCount, scoredCount, selectedCount, selectionRate, avgRank, and rankDistribution[]. Accepts channelId, categoryId, decisionFlowId, segmentId filters.
  • New dashboard-data case anomaly_candidates — compares current vs. baseline period across acceptance rate, revenue, and degraded scoring rate; classifies severity (info / warning / critical) from z-score + absolute percent change.
  • New dashboard-data case why_not_ranked — aggregate misses per offer: scoredTooLow, filteredByContactPolicy, filteredByQualification, and beatenBy (top-5 competing offers).
  • Segment dimension added to acceptance_rate, offer_performance, offer_performance_grouped, channel_effectiveness, daily_trend, revenue_trend.
  • Enriched DecisionTrace JSON shapes — structured rejectionReason, rankBefore / rankAfter on scoring results.
  • Cross-decision narrative helpers in src/lib/ai/intelligence/decision-explainer.ts: explainOfferUnderperformance, explainSegmentCoverage, explainAnomaly.
Docs: AI Insights · Dashboards · Dashboard Data API

Phase 02 — Notification Providers + AlertRule Execution

Pluggable notification system and live alert evaluation.
  • NotificationProvider interface + registry with Slack, Microsoft Teams, outbound webhook, and Ops-Email (SES) adapters.
  • New notifications tab in /settings/integrations — add / test / enable / disable / delete destinations.
  • Encrypted credential storage in PlatformSetting vault (AES-256-GCM); GET endpoints return redacted configs.
  • AlertRule evaluator — compares observed vs. threshold over windowMinutes, derives severity, fans out to every destination in channels, respects cooldownMinutes.
  • New settings page /settings/alerts — CRUD for alert rules.
  • New API surface:
    • GET|POST|PATCH|DELETE /api/v1/notifications/providers
    • POST /api/v1/notifications/providers/:id/test
    • POST /api/v1/notifications/send
    • GET|POST|PATCH|DELETE /api/v1/alert-rules
    • POST /api/cron/tick (token-authenticated; intended caller is an external scheduler such as AWS EventBridge).
Docs: Notifications · Alert Rules · Notifications API · Alerts API · Cron API · EventBridge Setup (optional during pilot)

Phase 03 — Report Builder + Scheduler

User-configurable reports with LLM narration, four output formats, and scheduled delivery through Phase 02 providers.
  • New Prisma models ReportTemplate, ReportSchedule, ReportRun (additive migration; no changes to existing models).
  • Report data-source registry — 10 built-in sources (offer_performance, channel_effectiveness, selection_frequency, anomaly_candidates, why_not_ranked, decision_traces_summary, funnel, revenue_trend, daily_trend, budget_burn). Extension point: drop a new file in src/lib/reports/data-sources/ and register it.
  • Report format registry — built-in PDF (via @react-pdf/renderer), CSV, Markdown, HTML.
  • LLM narrative engine (src/lib/reports/narrator.ts) — uses tenant AI provider; produces executive summary + per-section narratives + key takeaways; caps input at ~5000 tokens worth of rows with explicit truncation signals.
  • Report runner (src/lib/reports/runner.ts) — loads template, runs sources, calls narrator, renders formats, creates ReportRun, dispatches to destinations.
  • Full API surface:
    • GET|POST /api/v1/reports/templates, GET|PATCH|DELETE /api/v1/reports/templates/[id]
    • POST /api/v1/reports/templates/[id]/preview (transient render, no persistence)
    • POST /api/v1/reports/templates/[id]/run-now (immediate run; works without the cron)
    • GET|POST /api/v1/reports/schedules, PATCH|DELETE /api/v1/reports/schedules/[id]
    • GET /api/v1/reports/runs, GET /api/v1/reports/runs/[id]
    • GET /api/v1/reports/runs/[id]/artifacts/[format]
  • /settings/reports builder UI — compose sources, pick formats/narrative, schedule + destinations, live preview, runs history drawer.
  • /api/cron/tick extended to also process due report schedules; response JSON gains reportsEvaluated, reportsRan, reportErrors.
Docs: Reports · Report Templates · Report Schedules · First Scheduled Report guide · Reports API

Phase 04 — Executive Dashboard + Share-as-Report

C-suite-ready view and one-click sharing across every dashboard.
  • New page /dashboards/executive — LLM-narrated weekly summary, six KPI cards with period-over-period deltas and sparklines, anomaly feed (last 7 days), segment × offer heatmap, and quick-links to operational dashboards.
  • Reusable dashboard components:
    • PeriodDelta — headline + Δ% vs. prior period + sparkline.
    • AnomalyFeed — severity pill / metric / delta / explain button.
    • SegmentOfferHeatmap — top-10 × top-10 selection rate grid.
    • ExportMenu — PDF / CSV / Markdown / HTML dropdown (uses /api/v1/reports/preview under the hood; no cron required).
    • SaveAsReportButton — modal pre-filled from the current view; creates a ReportTemplate + ReportSchedule in one click.
  • Export + Save-as-Report wired into every dashboard — Business, Operations, Model Health, Data Health, Attribution (in addition to Executive).
  • Backend support for period-over-period (summary_with_comparison, model_auc_summary_with_prev, and sparklines on core metrics).
Docs: Executive Dashboard · Dashboards · Share a Dashboard guide

Earlier changes

Earlier changes are tracked in commit history — see the platform repo. Notable recent work prior to this milestone:
  • Mar–Apr 2026 — Docs remediation and sample-data corrections (connector count corrected to 24, transform count to 15, API response shapes aligned end-to-end with code).
  • Apr 2026 — Repo open-sourced under a single “Initial open source release” commit. CI and CodeQL workflows temporarily disabled pending the public repo cut-over.
  • Apr 2026 — API Explorer auto-creates an API key on first visit to the playground for streamlined onboarding.
This changelog starts with the 2026-04-17 milestone because that’s when we introduced it. For older history, consult the commit log.