robotrock 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/eve/agent/index.d.ts +1 -1
  2. package/dist/eve/agent/index.js +20 -8
  3. package/dist/eve/agent/index.js.map +1 -1
  4. package/dist/eve/index.d.ts +1 -1
  5. package/dist/eve/index.js +131 -8
  6. package/dist/eve/index.js.map +1 -1
  7. package/dist/eve/tools/admin/assign-tasks.js +20 -8
  8. package/dist/eve/tools/admin/assign-tasks.js.map +1 -1
  9. package/dist/eve/tools/admin/get-workspace-usage.js +20 -8
  10. package/dist/eve/tools/admin/get-workspace-usage.js.map +1 -1
  11. package/dist/eve/tools/admin/manage-groups.js +20 -8
  12. package/dist/eve/tools/admin/manage-groups.js.map +1 -1
  13. package/dist/eve/tools/admin/manage-team-members.js +20 -8
  14. package/dist/eve/tools/admin/manage-team-members.js.map +1 -1
  15. package/dist/eve/tools/admin/query-tasks.d.ts +3 -3
  16. package/dist/eve/tools/admin/query-tasks.js +20 -8
  17. package/dist/eve/tools/admin/query-tasks.js.map +1 -1
  18. package/dist/eve/tools/catalog/generate-image.js +20 -8
  19. package/dist/eve/tools/catalog/generate-image.js.map +1 -1
  20. package/dist/eve/tools/catalog/generate-random-chart.d.ts +10 -4
  21. package/dist/eve/tools/catalog/generate-random-chart.js +65 -26
  22. package/dist/eve/tools/catalog/generate-random-chart.js.map +1 -1
  23. package/dist/eve/tools/catalog/search-products.js +20 -8
  24. package/dist/eve/tools/catalog/search-products.js.map +1 -1
  25. package/dist/eve/tools/identity/my-access.d.ts +9 -9
  26. package/dist/eve/tools/index.js +71 -15
  27. package/dist/eve/tools/index.js.map +1 -1
  28. package/dist/{index-Drj0Rzf_.d.ts → index-amkHKVGs.d.ts} +161 -12
  29. package/dist/index.d.ts +1 -1
  30. package/dist/index.js +20 -8
  31. package/dist/index.js.map +1 -1
  32. package/package.json +1 -1
@@ -151,17 +151,17 @@ type FormatToolQueryResultOptions = {
151
151
  rowsPath?: string;
152
152
  ui?: ToolResultUiMeta;
153
153
  };
154
- type WithReplyGuidance<T> = T & {
154
+ type WithReplyGuidance$1<T> = T & {
155
155
  replyGuidance: string;
156
156
  };
157
- type WithUiMeta<T> = T & {
157
+ type WithUiMeta$1<T> = T & {
158
158
  ui: ToolResultUiMeta;
159
159
  };
160
- type WithUiHintField<T> = T & {
160
+ type WithUiHintField$1<T> = T & {
161
161
  uiHint: ToolUiHint;
162
162
  };
163
163
  /** Attach agent narration hints to plain tool JSON. No display/ui envelope. */
164
- declare function formatToolObjectResult<T extends Record<string, unknown>>(data: T, options: FormatToolObjectResultOptions): WithReplyGuidance<T> & Partial<WithUiMeta<T>> & Partial<WithUiHintField<T>>;
164
+ declare function formatToolObjectResult<T extends Record<string, unknown>>(data: T, options: FormatToolObjectResultOptions): WithReplyGuidance$1<T> & Partial<WithUiMeta$1<T>> & Partial<WithUiHintField$1<T>>;
165
165
  /** Wrap an array field as plain tool JSON with reply guidance and list layout hint.
166
166
  *
167
167
  * Include `url` on each item when you know a navigable link — the dashboard
@@ -169,14 +169,113 @@ declare function formatToolObjectResult<T extends Record<string, unknown>>(data:
169
169
  * for file downloads (Attachment layout). Set `entity` so the dashboard caches
170
170
  * a reusable row layout under that name.
171
171
  */
172
- declare function formatToolListResult<const K extends string, T extends Record<string, unknown>>(listKey: K, items: T[], options: FormatToolListResultOptions): WithReplyGuidance<Record<K, T[]>> & WithUiMeta<Record<K, T[]>> & WithUiHintField<Record<K, T[]>>;
172
+ declare function formatToolListResult<const K extends string, T extends Record<string, unknown>>(listKey: K, items: T[], options: FormatToolListResultOptions): WithReplyGuidance$1<Record<K, T[]>> & WithUiMeta$1<Record<K, T[]>> & WithUiHintField$1<Record<K, T[]>>;
173
173
  /** Format a query-style result: shared meta fields + typed row array. */
174
- declare function formatToolQueryResult<M extends Record<string, unknown>, T extends Record<string, unknown>>(meta: M, rows: T[], options: FormatToolQueryResultOptions): WithReplyGuidance<M & Record<string, T[]>> & WithUiMeta<M & Record<string, T[]>>;
174
+ declare function formatToolQueryResult<M extends Record<string, unknown>, T extends Record<string, unknown>>(meta: M, rows: T[], options: FormatToolQueryResultOptions): WithReplyGuidance$1<M & Record<string, T[]>> & WithUiMeta$1<M & Record<string, T[]>>;
175
175
  declare function isAgentAdminErrorResult(result: unknown): result is {
176
176
  ok: false;
177
177
  message: string;
178
178
  };
179
179
 
180
+ /** Matches TRL `<Chart type="…">` / shadcn chart variants. */
181
+ type ToolChartType = "line" | "bar" | "area";
182
+ /**
183
+ * Wide-format chart payload for dashboard TRL Chart.
184
+ *
185
+ * Each `series` row is one x-axis point. Numeric series are **columns**
186
+ * (not a long-format dimension column):
187
+ *
188
+ * ```ts
189
+ * {
190
+ * type: "line",
191
+ * xKey: "date",
192
+ * yKeys: ["NL", "BE"],
193
+ * series: [
194
+ * { date: "2025-07-21", NL: 100, BE: 40 },
195
+ * { date: "2025-07-22", NL: 120, BE: 50 },
196
+ * ],
197
+ * }
198
+ * ```
199
+ *
200
+ * Do **not** return long-format rows like
201
+ * `{ date, country: "NL", visitors: 100 }` — use
202
+ * {@link pivotLongFormatToWideChartSeries} first, or
203
+ * {@link formatToolChartResultFromLong}.
204
+ */
205
+ type ToolChartResultData = {
206
+ title?: string;
207
+ description?: string;
208
+ type: ToolChartType;
209
+ xKey: string;
210
+ yKeys: string[];
211
+ series: Array<Record<string, string | number>>;
212
+ };
213
+ type FormatToolChartResultOptions = {
214
+ replyGuidance: string;
215
+ /** Defaults to `metric_point`. */
216
+ entity?: ToolResultUiEntity;
217
+ /** Defaults to `true` so the chart card always presents. */
218
+ present?: boolean;
219
+ ui?: Omit<ToolResultUiMeta, "rowsPath" | "layout">;
220
+ };
221
+ type PivotLongFormatToWideChartSeriesArgs = {
222
+ rows: ReadonlyArray<Record<string, unknown>>;
223
+ xKey: string;
224
+ /** Dimension column to spread into series columns (e.g. `country`). */
225
+ seriesKey: string;
226
+ /** Numeric metric column (e.g. `visitors`). */
227
+ valueKey: string;
228
+ /** Cap number of series columns (default 20). */
229
+ maxSeries?: number;
230
+ };
231
+ type WithReplyGuidance<T> = T & {
232
+ replyGuidance: string;
233
+ };
234
+ type WithUiMeta<T> = T & {
235
+ ui: ToolResultUiMeta;
236
+ };
237
+ type WithUiHintField<T> = T & {
238
+ uiHint: ToolUiHint;
239
+ };
240
+ declare function inferToolChartType(xKey: string): ToolChartType;
241
+ /**
242
+ * Pivot long-format rows into wide chart series columns.
243
+ *
244
+ * Input: `{ date: "d1", country: "NL", visitors: 100 }`
245
+ * Output: `{ yKeys: ["NL","BE"], series: [{ date: "d1", NL: 100, BE: 40 }] }`
246
+ */
247
+ declare function pivotLongFormatToWideChartSeries(args: PivotLongFormatToWideChartSeriesArgs): {
248
+ yKeys: string[];
249
+ series: Array<Record<string, string | number>>;
250
+ };
251
+ /**
252
+ * Format a tool result for dashboard Chart rendering (shadcn / TRL `<Chart>`).
253
+ *
254
+ * Requires **wide** series rows. Sets `ui.layout: "chart"`, `rowsPath: "series"`,
255
+ * and top-level `type` / `xKey` / `yKeys` so the UI does not guess series columns.
256
+ */
257
+ declare function formatToolChartResult(chart: {
258
+ title?: string;
259
+ description?: string;
260
+ type?: ToolChartType;
261
+ xKey: string;
262
+ yKeys: readonly string[];
263
+ series: ReadonlyArray<Record<string, string | number>>;
264
+ }, options: FormatToolChartResultOptions): WithReplyGuidance<ToolChartResultData> & WithUiMeta<ToolChartResultData> & WithUiHintField<ToolChartResultData>;
265
+ /**
266
+ * Convenience: pivot long-format rows, then {@link formatToolChartResult}.
267
+ */
268
+ declare function formatToolChartResultFromLong(input: {
269
+ title?: string;
270
+ description?: string;
271
+ type?: ToolChartType;
272
+ xKey: string;
273
+ seriesKey: string;
274
+ valueKey: string;
275
+ rows: ReadonlyArray<Record<string, unknown>>;
276
+ maxSeries?: number;
277
+ }, options: FormatToolChartResultOptions): WithReplyGuidance<ToolChartResultData> & WithUiMeta<ToolChartResultData> & WithUiHintField<ToolChartResultData>;
278
+
180
279
  /** Tenant-relative inbox deep link for a task (matches dashboard inbox hrefs). */
181
280
  declare function buildTenantTaskUrl(tenantSlug: string, task: {
182
281
  id: string;
@@ -204,12 +303,57 @@ declare const productEntityRowSchema: z.ZodObject<{
204
303
  inStock: z.ZodBoolean;
205
304
  url: z.ZodString;
206
305
  }, z.core.$strip>;
207
- /** Demo chart series point (`generate_random_chart`). */
306
+ /**
307
+ * One wide-format chart point for TRL/shadcn Chart.
308
+ * Include the x-axis field (`date` / `category` / `label`) plus one numeric
309
+ * field per series key listed in `yKeys` (e.g. `{ date, NL: 100, BE: 40 }`).
310
+ * Never use long-format rows like `{ date, country: "NL", visitors: 100 }`.
311
+ */
208
312
  declare const metricPointEntityRowSchema: z.ZodObject<{
209
313
  date: z.ZodOptional<z.ZodString>;
210
314
  category: z.ZodOptional<z.ZodString>;
211
315
  label: z.ZodOptional<z.ZodString>;
212
316
  }, z.core.$catchall<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
317
+ /**
318
+ * Canonical chart tool `outputSchema` — matches dashboard TRL `<Chart>`.
319
+ *
320
+ * Attach on chart tools: `outputSchema: toolChartResultSchema`.
321
+ * Build values with `formatToolChartResult` / `formatToolChartResultFromLong`.
322
+ *
323
+ * Multi-series = multiple numeric columns on the same row, not a dimension column.
324
+ */
325
+ declare const toolChartResultSchema: z.ZodObject<{
326
+ title: z.ZodOptional<z.ZodString>;
327
+ description: z.ZodOptional<z.ZodString>;
328
+ type: z.ZodEnum<{
329
+ line: "line";
330
+ bar: "bar";
331
+ area: "area";
332
+ }>;
333
+ xKey: z.ZodString;
334
+ yKeys: z.ZodArray<z.ZodString>;
335
+ series: z.ZodArray<z.ZodObject<{
336
+ date: z.ZodOptional<z.ZodString>;
337
+ category: z.ZodOptional<z.ZodString>;
338
+ label: z.ZodOptional<z.ZodString>;
339
+ }, z.core.$catchall<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>>;
340
+ replyGuidance: z.ZodOptional<z.ZodString>;
341
+ ui: z.ZodOptional<z.ZodObject<{
342
+ present: z.ZodOptional<z.ZodBoolean>;
343
+ entity: z.ZodOptional<z.ZodString>;
344
+ rowsPath: z.ZodOptional<z.ZodString>;
345
+ layout: z.ZodOptional<z.ZodEnum<{
346
+ list: "list";
347
+ chart: "chart";
348
+ table: "table";
349
+ }>>;
350
+ }, z.core.$strict>>;
351
+ uiHint: z.ZodOptional<z.ZodEnum<{
352
+ list: "list";
353
+ chart: "chart";
354
+ table: "table";
355
+ }>>;
356
+ }, z.core.$strip>;
213
357
  declare const memberEntityRowSchema: z.ZodObject<{
214
358
  name: z.ZodString;
215
359
  email: z.ZodString;
@@ -306,11 +450,14 @@ declare const searchProductsOutputSchema: z.ZodObject<{
306
450
  }>>;
307
451
  }, z.core.$strip>;
308
452
  declare const generateRandomChartOutputSchema: z.ZodObject<{
309
- title: z.ZodString;
310
- axis: z.ZodEnum<{
311
- time: "time";
312
- category: "category";
453
+ description: z.ZodOptional<z.ZodString>;
454
+ type: z.ZodEnum<{
455
+ line: "line";
456
+ bar: "bar";
457
+ area: "area";
313
458
  }>;
459
+ xKey: z.ZodString;
460
+ yKeys: z.ZodArray<z.ZodString>;
314
461
  series: z.ZodArray<z.ZodObject<{
315
462
  date: z.ZodOptional<z.ZodString>;
316
463
  category: z.ZodOptional<z.ZodString>;
@@ -332,6 +479,7 @@ declare const generateRandomChartOutputSchema: z.ZodObject<{
332
479
  chart: "chart";
333
480
  table: "table";
334
481
  }>>;
482
+ title: z.ZodString;
335
483
  }, z.core.$strip>;
336
484
  /** Demo generated image (`generate_image`) — bytes live in Convex `_storage`. */
337
485
  declare const generateImageOutputSchema: z.ZodObject<{
@@ -851,6 +999,7 @@ declare const getWorkspaceUsageOutputSchema: z.ZodUnion<readonly [z.ZodObject<{
851
999
  }, z.core.$strip>]>;
852
1000
  type ProductEntityRow = z.infer<typeof productEntityRowSchema>;
853
1001
  type MetricPointEntityRow = z.infer<typeof metricPointEntityRowSchema>;
1002
+ type ToolChartResult = z.infer<typeof toolChartResultSchema>;
854
1003
  type MemberEntityRow = z.infer<typeof memberEntityRowSchema>;
855
1004
  type TaskEntityRow = z.infer<typeof taskEntityRowSchema>;
856
1005
  type GroupEntityRow = z.infer<typeof groupEntityRowSchema>;
@@ -902,4 +1051,4 @@ declare function buildTaskHandledResumeMessage(payload: RobotRockWebhookPayload)
902
1051
  /** Hook slug advertised in GET /eve/v1/info for RobotRock-ready auto-detection. */
903
1052
  declare const ROBOTROCK_READY_HOOK_SLUG = "robotrock-ready";
904
1053
 
905
- export { isAgentAdminErrorResult as $, agentAdminErrorResultSchema as A, agentAdminMutationResultSchema as B, type ChatToolAuditInput as C, DEFAULT_TOOL_DISPLAY_LABELS as D, EVE_INPUT_OTHER_CHOICE_ID as E, type FormatToolListResultOptions as F, type GroupEntityRow as G, assignTasksOutputSchema as H, buildChatToolAuditPayload as I, buildEveInputAuditSubmissionData as J, buildTenantGroupUrl as K, buildTenantTaskUrl as L, type MemberEntityRow as M, eveInputResponseToActionSubmission as N, formatToolListResult as O, type ProductEntityRow as P, formatToolObjectResult as Q, ROBOTROCK_READY_HOOK_SLUG as R, type StatusEntityRow as S, type TaskEntityRow as T, formatToolQueryResult as U, type VerifyRobotRockWebhookOptions as V, generateImageOutputSchema as W, generateRandomChartOutputSchema as X, getWorkspaceUsageOutputSchema as Y, groupDetailEntitySchema as Z, groupEntityRowSchema as _, EVE_INPUT_OTHER_CHOICE_LABEL as a, isEveApprovalInputRequest as a0, manageGroupsDetailOutputSchema as a1, manageGroupsListOutputSchema as a2, manageGroupsOutputSchema as a3, manageGroupsSummaryOutputSchema as a4, manageTeamMembersDetailOutputSchema as a5, manageTeamMembersListOutputSchema as a6, manageTeamMembersOutputSchema as a7, memberEntityRowSchema as a8, metricPointEntityRowSchema as a9, parseEveAskQuestionToolOutput as aa, productEntityRowSchema as ab, queryTasksDetailOutputSchema as ac, queryTasksListOutputSchema as ad, queryTasksOutputSchema as ae, resolveEveFreeformTextToInputResponse as af, sanitizeToolAuditInput as ag, searchProductsOutputSchema as ah, shouldAuditToolExecution as ai, statusEntityRowSchema as aj, taskEntityRowSchema as ak, toolDisplayResult as al, toolResultUiMetaSchema as am, workspaceUsageEntitySchema as an, EVE_INPUT_SUBMIT_ACTION_ID as b, type EveInputOption as c, type EveInputRequest as d, type EveInputRequestDisplay as e, type EveInputResponse as f, RobotRockWebhookError as g, type RobotRockWebhookErrorCode as h, type RobotRockWebhookPayload as i, buildTaskHandledResumeMessage as j, eveInputRequestTaskType as k, eveInputRequestToActions as l, formatEveApprovalTitle as m, getToolDisplayLabel as n, normalizeEveSelectFormData as o, type ChatToolAuditPayload as p, type EveInputActionSubmission as q, resolveEveInputDisplay as r, setToolDisplayLabelOverrides as s, taskHandledToEveInputResponse as t, type EveInputAuditContext as u, verifyRobotRockWebhook as v, type FormatToolObjectResultOptions as w, type FormatToolQueryResultOptions as x, type MetricPointEntityRow as y, type ToolDisplayResultOptions as z };
1054
+ export { formatToolObjectResult as $, type ProductEntityRow as A, type ToolChartResult as B, type ChatToolAuditInput as C, DEFAULT_TOOL_DISPLAY_LABELS as D, EVE_INPUT_OTHER_CHOICE_ID as E, type FormatToolChartResultOptions as F, type GroupEntityRow as G, type ToolChartResultData as H, type ToolChartType as I, type ToolDisplayResultOptions as J, agentAdminErrorResultSchema as K, agentAdminMutationResultSchema as L, type MemberEntityRow as M, assignTasksOutputSchema as N, buildChatToolAuditPayload as O, type PivotLongFormatToWideChartSeriesArgs as P, buildEveInputAuditSubmissionData as Q, ROBOTROCK_READY_HOOK_SLUG as R, type StatusEntityRow as S, type TaskEntityRow as T, buildTenantGroupUrl as U, type VerifyRobotRockWebhookOptions as V, buildTenantTaskUrl as W, eveInputResponseToActionSubmission as X, formatToolChartResult as Y, formatToolChartResultFromLong as Z, formatToolListResult as _, EVE_INPUT_OTHER_CHOICE_LABEL as a, formatToolQueryResult as a0, generateImageOutputSchema as a1, generateRandomChartOutputSchema as a2, getWorkspaceUsageOutputSchema as a3, groupDetailEntitySchema as a4, groupEntityRowSchema as a5, inferToolChartType as a6, isAgentAdminErrorResult as a7, isEveApprovalInputRequest as a8, manageGroupsDetailOutputSchema as a9, manageGroupsListOutputSchema as aa, manageGroupsOutputSchema as ab, manageGroupsSummaryOutputSchema as ac, manageTeamMembersDetailOutputSchema as ad, manageTeamMembersListOutputSchema as ae, manageTeamMembersOutputSchema as af, memberEntityRowSchema as ag, metricPointEntityRowSchema as ah, parseEveAskQuestionToolOutput as ai, pivotLongFormatToWideChartSeries as aj, productEntityRowSchema as ak, queryTasksDetailOutputSchema as al, queryTasksListOutputSchema as am, queryTasksOutputSchema as an, resolveEveFreeformTextToInputResponse as ao, sanitizeToolAuditInput as ap, searchProductsOutputSchema as aq, shouldAuditToolExecution as ar, statusEntityRowSchema as as, taskEntityRowSchema as at, toolChartResultSchema as au, toolDisplayResult as av, toolResultUiMetaSchema as aw, workspaceUsageEntitySchema as ax, EVE_INPUT_SUBMIT_ACTION_ID as b, type EveInputOption as c, type EveInputRequest as d, type EveInputRequestDisplay as e, type EveInputResponse as f, RobotRockWebhookError as g, type RobotRockWebhookErrorCode as h, type RobotRockWebhookPayload as i, buildTaskHandledResumeMessage as j, eveInputRequestTaskType as k, eveInputRequestToActions as l, formatEveApprovalTitle as m, getToolDisplayLabel as n, normalizeEveSelectFormData as o, type ChatToolAuditPayload as p, type EveInputActionSubmission as q, resolveEveInputDisplay as r, setToolDisplayLabelOverrides as s, taskHandledToEveInputResponse as t, type EveInputAuditContext as u, verifyRobotRockWebhook as v, type FormatToolListResultOptions as w, type FormatToolObjectResultOptions as x, type FormatToolQueryResultOptions as y, type MetricPointEntityRow as z };
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export { C as ChatsApi, c as CloseChatOptions, d as CreateChatInput, e as Create
3
3
  export { AgentChatSeedMessage, CreateAgentChatBody, CreateAgentChatBodyInput, agentChatSeedMessageSchema, createAgentChatBodySchema } from '@robotrock/core';
4
4
  import { Task, DiscriminatedApprovalResult } from './schemas/index.js';
5
5
  export { AgentTelemetry, AgentTelemetryInput, ApprovalResult, AssignToInput, CreateTaskBody, CreateTaskBodyInput, DEFAULT_TASK_PRIORITY, DEFAULT_THREAD_UPDATE_STATUS, Handler, InferActionData, LOWEST_TASK_PRIORITY, TASK_CONTEXT_FORMAT_VERSION, TASK_PRIORITY_RANK, TaskAction, TaskContext, TaskContextFormatVersion, TaskContextInput, TaskPriority, TaskResponse, TaskResult, TaskStatus, ThreadUpdate, ThreadUpdateBody, ThreadUpdateBodyInput, ThreadUpdateInput, ThreadUpdateResponse, ThreadUpdateSource, ThreadUpdateStatus, TriggerHandler, TupleElementIndices, WebhookHandler, agentTelemetrySchema, assignToSchema, createTaskBodySchema, taskContextSchema, taskPriorities, taskPrioritySchema, threadUpdateBodySchema, threadUpdateInputSchema, threadUpdateStatusSchema, threadUpdateStatuses } from './schemas/index.js';
6
- export { D as DEFAULT_TOOL_DISPLAY_LABELS, E as EVE_INPUT_OTHER_CHOICE_ID, a as EVE_INPUT_OTHER_CHOICE_LABEL, b as EVE_INPUT_SUBMIT_ACTION_ID, c as EveInputOption, d as EveInputRequest, e as EveInputRequestDisplay, f as EveInputResponse, R as ROBOTROCK_READY_HOOK_SLUG, g as RobotRockWebhookError, h as RobotRockWebhookErrorCode, i as RobotRockWebhookPayload, V as VerifyRobotRockWebhookOptions, j as buildTaskHandledResumeMessage, k as eveInputRequestTaskType, l as eveInputRequestToActions, m as formatEveApprovalTitle, n as getToolDisplayLabel, o as normalizeEveSelectFormData, r as resolveEveInputDisplay, s as setToolDisplayLabelOverrides, t as taskHandledToEveInputResponse, v as verifyRobotRockWebhook } from './index-Drj0Rzf_.js';
6
+ export { D as DEFAULT_TOOL_DISPLAY_LABELS, E as EVE_INPUT_OTHER_CHOICE_ID, a as EVE_INPUT_OTHER_CHOICE_LABEL, b as EVE_INPUT_SUBMIT_ACTION_ID, c as EveInputOption, d as EveInputRequest, e as EveInputRequestDisplay, f as EveInputResponse, R as ROBOTROCK_READY_HOOK_SLUG, g as RobotRockWebhookError, h as RobotRockWebhookErrorCode, i as RobotRockWebhookPayload, V as VerifyRobotRockWebhookOptions, j as buildTaskHandledResumeMessage, k as eveInputRequestTaskType, l as eveInputRequestToActions, m as formatEveApprovalTitle, n as getToolDisplayLabel, o as normalizeEveSelectFormData, r as resolveEveInputDisplay, s as setToolDisplayLabelOverrides, t as taskHandledToEveInputResponse, v as verifyRobotRockWebhook } from './index-amkHKVGs.js';
7
7
  export { E as EndRobotRockHumanWaitSpanOptions, b as RobotRockCreatedTask, c as RobotRockHandledOtelInput, a as RobotRockHandlerWebhookPayload, d as RobotRockHumanWaitOtelSession, e as RobotRockOtelHandle, f as RobotRockOtelRecordOptions, R as RobotRockPlatformOtelFields, g as beginRobotRockHumanWaitOtel, h as captureRobotRockOtelHandle, i as endRobotRockHumanWaitSpan, j as finishRobotRockHumanWaitOtel, r as recordRobotRockHandledToOtel, s as shouldRecordRobotRockOtel, k as startRobotRockHumanWaitSpan, l as stripPlatformOtelFields, t as toRobotRockHandledOtelInput } from './otel-platform-DzHyHkGk.js';
8
8
  import 'zod';
9
9
  import './chat-correlation-BsHD-tOQ.js';
package/dist/index.js CHANGED
@@ -1978,10 +1978,24 @@ var productEntityRowSchema = z6.object({
1978
1978
  url: z6.string().min(1)
1979
1979
  });
1980
1980
  var metricPointEntityRowSchema = z6.object({
1981
- date: z6.string().optional(),
1982
- category: z6.string().optional(),
1983
- label: z6.string().optional()
1984
- }).catchall(z6.union([z6.string(), z6.number()]));
1981
+ date: z6.string().optional().describe("X-axis value when xKey is date/time"),
1982
+ category: z6.string().optional().describe("X-axis value when xKey is category"),
1983
+ label: z6.string().optional().describe("X-axis value when xKey is label")
1984
+ }).catchall(z6.union([z6.string(), z6.number()])).describe(
1985
+ "Wide chart point: x-axis field + numeric columns named by yKeys (one series per column)"
1986
+ );
1987
+ var toolChartResultSchema = withAgentOnlyFields({
1988
+ title: z6.string().min(1).optional().describe("Chart title shown above the plot"),
1989
+ description: z6.string().min(1).optional().describe("Optional short subtitle"),
1990
+ type: z6.enum(["line", "bar", "area"]).describe("TRL/shadcn chart variant (time series \u2192 line, categories \u2192 bar)"),
1991
+ xKey: z6.string().min(1).describe('Field on each series row for the x-axis, e.g. "date" or "category"'),
1992
+ yKeys: z6.array(z6.string().min(1)).min(1).describe(
1993
+ 'Numeric series column names on each row, e.g. ["NL","BE"] or ["created","handled"]'
1994
+ ),
1995
+ series: z6.array(metricPointEntityRowSchema).describe(
1996
+ "Wide-format points only \u2014 one object per x value with yKeys as numeric fields"
1997
+ )
1998
+ });
1985
1999
  var memberEntityRowSchema = z6.object({
1986
2000
  name: z6.string(),
1987
2001
  email: z6.string(),
@@ -2040,10 +2054,8 @@ var agentAdminMutationResultSchema = z6.object({
2040
2054
  var searchProductsOutputSchema = withAgentOnlyFields({
2041
2055
  items: z6.array(productEntityRowSchema)
2042
2056
  });
2043
- var generateRandomChartOutputSchema = withAgentOnlyFields({
2044
- title: z6.string().min(1),
2045
- axis: z6.enum(["time", "category"]),
2046
- series: z6.array(metricPointEntityRowSchema)
2057
+ var generateRandomChartOutputSchema = toolChartResultSchema.extend({
2058
+ title: z6.string().min(1)
2047
2059
  });
2048
2060
  var generateImageOutputSchema = withAgentOnlyFields({
2049
2061
  prompt: z6.string().min(1),