Skip to content

Variable: GenieSummaryItemSchema

const GenieSummaryItemSchema: ZodDiscriminatedUnion<[ZodObject<{ text: ZodString; type: ZodLiteral<"string">; }, $strip>, ZodObject<{ dataset: ZodObject<{ chart: ZodOptional<ZodObject<{ chartId: ZodString; chartType: ZodUnion<readonly […, …, …, …, …, …, …, …, …, …, …, …, …]>; }, $strip>>; data: ZodObject<{ columns: ZodArray<ZodString>; rowCount: ZodNumber; rows: ZodArray<ZodRecord<ZodString, ZodUnknown>>; }, $strip>; }, $strip>; description: ZodOptional<ZodString>; statementId: ZodString; title: ZodOptional<ZodString>; type: ZodLiteral<"visualize">; }, $strip>], "type">

One item inside the Genie workflow’s final summary. The workflow produces a mixed sequence of:

  • string: a markdown paragraph (interpretation, callouts, transitions between data blocks).
  • visualize: a request from the agent step to visualize a specific Genie statement at this position in the prose. The finalize step hydrates dataset.data (rows from the matching statementId) and attaches dataset.chart after running the chart-planner. The agent NEVER picks the chart type - it only marks where a visualization belongs.

The host UI walks the array in display order to compose the final assistant message.