-
Result
-
{error || JSON.stringify(result, null, 2) || "No run yet."}
+
+
+
+
+
+
+
+
+
+
+
+
+ Grounded answer
+ {result?.ok ? (
+ <>
+ {result.answer}
+
+ - Rows
- {result.row_count}
+ - Numeric column
- {result.numeric_column}
+ - Receipt
- {result.receipt_id || "pending"}
+
+ Source rows
+ {result.source_rows?.map((row) => Object.entries(row.values || {}).map(([key, value]) => (
+ | {key} | {String(value)} |
+ )))}
+ Chart-ready data
+
+ {(result.chart_data || []).map((point) => {
+ const max = Math.max(...(result.chart_data || []).map((p) => p.value), 1);
+ return
{point.label}{point.value}{point.value}
;
+ })}
+
+ >
+ ) : result ? (
+ {result.code || "Unable to analyze CSV"}
{result.message}
+ ) : (
+ No analysis yet
Run the sample fixture or upload your own CSV to see the answer, rows, and chart data.
+ )}
+
+
+ Saved analyses
Reload-safe history
+ {history.length ? (
+ {history.map((item) => )}
+ ) : Saved analyses appear here after a successful run for this signed-in user.
}
+
);
}