Fix view-backed insight charts using invalid dataset ID
Details
When generating insights from a saved query view, the dataset_id was
set to "view:{queryId}" which is not a valid UUID. The Rust aggregate
FFI rejected it with "invalid dataset id". Added ResolveChartDatasetIdAsync
which extracts source:Name references from the view SQL, looks up the
matching dataset by name, and returns its actual UUID for chart aggregation
queries. Regular dataset insights are unaffected.
Version: 1.18.0 → 1.18.1
Add debug logging to chart data loading
Details
Added debug logging in ChartDataLoader.LoadDatasetAsync to log the
aggregate query parameters and result counts, making it easier to
diagnose chart data loading issues in AI-generated insight pages.
Version: 1.55.1 → 1.55.2
Fix table blocks not rendering on initial page load
Details
TableBlockEditor.OnLoaded now posts RebuildTable via Dispatcher at
Loaded priority instead of calling it synchronously. This ensures the
table grid's async rebuild runs after the parent layout pass completes,
fixing the issue where programmatically-created inline tables (e.g.,
from AI insight pages) rendered empty until the user toggled markdown
mode and back. The markdown round-trip worked because it replaced
CurrentBlocks entirely, forcing fresh DataTemplate instantiation with
proper layout sequencing. Version 1.55.0 → 1.55.1.
Migrate chart rendering to LiveCharts with 6 new chart types
Details
Replaces ~1300 lines of custom Canvas/SkiaSharp chart rendering with LiveCharts
for bar, line, pie, stacked bar, grouped bar, horizontal bar, scatter, area, and
donut charts. Timeline remains custom Canvas (no LC Gantt equivalent).
ChartBlockEditor is now a ~280-line orchestrator that delegates data loading to
ChartDataLoader and series construction to ChartSeriesFactory. The AXAML adds
buttons for all 10 chart types plus a Group By column selector for stacked/grouped.
ChartExportRenderer uses LiveCharts off-screen rendering (SKCartesianChart/SKPieChart)
instead of manual SkiaSharp drawing, ensuring export matches interactive rendering.
ChartConfigViewModel gains SelectedGroupByColumn and emits GroupBy, Orientation, and
InnerRadiusRatio fields for the new chart types.
Bumps Notes plugin from 1.54.2 to 1.55.0.
Add chart infrastructure: ChartData, ChartDataLoader, ChartSeriesFactory
Details
Creates unified chart data loading (ChartDataLoader) supporting dataset
server-side aggregation, grouped aggregation for multi-series, plugin
query client-side aggregation, scatter, and timeline data. ChartSeriesFactory
maps chart types to LiveCharts ISeries arrays (bar, line, stacked, grouped,
horizontal, scatter, area, pie, donut). Extracts timeline rendering and
config wizard wiring into partial classes for modularity.
Get notified about new releases