@mastra/server 1.11.0-alpha.0 → 1.11.0-alpha.2

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.
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/schemas/datasets.ts","../src/server/handlers/datasets.ts"],"names":[],"mappings":"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","file":"chunk-PBSSNSUL.js","sourcesContent":["import z from 'zod';\nimport { paginationInfoSchema } from './common';\n\n// ============================================================================\n// JSON Schema Types (for inputSchema/groundTruthSchema fields)\n// ============================================================================\n\n// JSON Schema type (simplified for storage - full spec too complex)\nconst jsonSchemaObject: z.ZodType<Record<string, unknown>> = z.lazy(() => z.record(z.string(), z.unknown()));\n\n// JSON Schema field (object or null to disable)\nconst jsonSchemaField = z.union([jsonSchemaObject, z.null()]).optional();\n\n// ============================================================================\n// Path Parameter Schemas\n// ============================================================================\n\nexport const datasetIdPathParams = z.object({\n datasetId: z.string().describe('Unique identifier for the dataset'),\n});\n\nexport const experimentIdPathParams = z.object({\n experimentId: z.string().describe('Unique identifier for the experiment'),\n});\n\nexport const itemIdPathParams = z.object({\n itemId: z.string().describe('Unique identifier for the dataset item'),\n});\n\nexport const datasetAndExperimentIdPathParams = z.object({\n datasetId: z.string().describe('Unique identifier for the dataset'),\n experimentId: z.string().describe('Unique identifier for the experiment'),\n});\n\nexport const datasetAndItemIdPathParams = z.object({\n datasetId: z.string().describe('Unique identifier for the dataset'),\n itemId: z.string().describe('Unique identifier for the dataset item'),\n});\n\n// ============================================================================\n// Query Parameter Schemas\n// ============================================================================\n\nexport const paginationQuerySchema = z.object({\n page: z.coerce.number().optional().default(0),\n perPage: z.coerce.number().optional().default(10),\n});\n\nexport const listItemsQuerySchema = z.object({\n page: z.coerce.number().optional().default(0),\n perPage: z.coerce.number().optional().default(10),\n version: z.coerce.number().int().optional(), // Optional version filter for snapshot semantics\n search: z.string().optional(),\n});\n\n// ============================================================================\n// Request Body Schemas\n// ============================================================================\n\nexport const createDatasetBodySchema = z.object({\n name: z.string().describe('Name of the dataset'),\n description: z.string().optional().describe('Description of the dataset'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata'),\n inputSchema: jsonSchemaField.describe('JSON Schema for validating item input'),\n groundTruthSchema: jsonSchemaField.describe('JSON Schema for validating item groundTruth'),\n requestContextSchema: jsonSchemaField.describe('JSON Schema describing expected request context shape'),\n});\n\nexport const updateDatasetBodySchema = z.object({\n name: z.string().optional().describe('Name of the dataset'),\n description: z.string().optional().describe('Description of the dataset'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata'),\n inputSchema: jsonSchemaField.describe('JSON Schema for validating item input'),\n groundTruthSchema: jsonSchemaField.describe('JSON Schema for validating item groundTruth'),\n requestContextSchema: jsonSchemaField.describe('JSON Schema describing expected request context shape'),\n});\n\nexport const addItemBodySchema = z.object({\n input: z.unknown().describe('Input data for the dataset item'),\n groundTruth: z.unknown().optional().describe('Expected output for comparison'),\n requestContext: z.record(z.string(), z.unknown()).optional().describe('Request context preset for this item'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata'),\n});\n\nexport const updateItemBodySchema = z.object({\n input: z.unknown().optional().describe('Input data for the dataset item'),\n groundTruth: z.unknown().optional().describe('Expected output for comparison'),\n requestContext: z.record(z.string(), z.unknown()).optional().describe('Request context preset for this item'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata'),\n});\n\nexport const triggerExperimentBodySchema = z.object({\n targetType: z.enum(['agent', 'workflow', 'scorer']).describe('Type of target to run against'),\n targetId: z.string().describe('ID of the target'),\n scorerIds: z.array(z.string()).optional().describe('IDs of scorers to apply'),\n version: z.coerce.number().int().optional().describe('Pin to specific dataset version'),\n maxConcurrency: z.number().optional().describe('Maximum concurrent executions'),\n requestContext: z.record(z.string(), z.unknown()).optional().describe('Global request context passed to the target'),\n});\n\nexport const compareExperimentsBodySchema = z.object({\n experimentIdA: z.string().describe('ID of baseline experiment'),\n experimentIdB: z.string().describe('ID of candidate experiment'),\n});\n\n// ============================================================================\n// Response Schemas\n// ============================================================================\n\n// Dataset entity schema\nexport const datasetResponseSchema = z.object({\n id: z.string(),\n name: z.string(),\n description: z.string().optional().nullable(),\n metadata: z.record(z.string(), z.unknown()).optional().nullable(),\n inputSchema: z.record(z.string(), z.unknown()).optional(),\n groundTruthSchema: z.record(z.string(), z.unknown()).optional(),\n requestContextSchema: z.record(z.string(), z.unknown()).optional(),\n version: z.number().int(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n});\n\n// Dataset item entity schema\nexport const datasetItemResponseSchema = z.object({\n id: z.string(),\n datasetId: z.string(),\n datasetVersion: z.number().int(),\n input: z.unknown(),\n groundTruth: z.unknown().optional(),\n requestContext: z.record(z.string(), z.unknown()).optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n});\n\n// Experiment entity schema\nexport const experimentResponseSchema = z.object({\n id: z.string(),\n datasetId: z.string().nullable(),\n datasetVersion: z.number().int().nullable(),\n targetType: z.enum(['agent', 'workflow', 'scorer', 'processor']),\n targetId: z.string(),\n name: z.string().optional(),\n description: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n status: z.enum(['pending', 'running', 'completed', 'failed']),\n totalItems: z.number(),\n succeededCount: z.number(),\n failedCount: z.number(),\n skippedCount: z.number(),\n startedAt: z.coerce.date().nullable(),\n completedAt: z.coerce.date().nullable(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n});\n\n// Scorer result schema\nexport const scorerResultSchema = z.object({\n scorerId: z.string(),\n scorerName: z.string(),\n score: z.number().nullable(),\n reason: z.string().nullable(),\n error: z.string().nullable(),\n});\n\n// Experiment result entity schema\nexport const experimentResultResponseSchema = z.object({\n id: z.string(),\n experimentId: z.string(),\n itemId: z.string(),\n itemDatasetVersion: z.number().int().nullable(),\n input: z.unknown(),\n output: z.unknown().nullable(),\n groundTruth: z.unknown().nullable(),\n error: z\n .object({\n message: z.string(),\n stack: z.string().optional(),\n code: z.string().optional(),\n })\n .nullable(),\n startedAt: z.coerce.date(),\n completedAt: z.coerce.date(),\n retryCount: z.number(),\n traceId: z.string().nullable(),\n createdAt: z.coerce.date(),\n});\n\n// Comparison item schema (MVP shape)\nconst comparisonItemSchema = z.object({\n itemId: z.string(),\n input: z.unknown().nullable(),\n groundTruth: z.unknown().nullable(),\n results: z.record(\n z.string(),\n z\n .object({\n output: z.unknown().nullable(),\n scores: z.record(z.string(), z.number().nullable()),\n })\n .nullable(),\n ),\n});\n\n// Comparison result schema\nexport const comparisonResponseSchema = z.object({\n baselineId: z.string(),\n items: z.array(comparisonItemSchema),\n});\n\n// Experiment summary schema (returned by trigger experiment)\n// Note: completedAt is nullable for pending/running experiments (async trigger)\nexport const experimentSummaryResponseSchema = z.object({\n experimentId: z.string(),\n status: z.enum(['pending', 'running', 'completed', 'failed']),\n totalItems: z.number(),\n succeededCount: z.number(),\n failedCount: z.number(),\n startedAt: z.coerce.date(),\n completedAt: z.coerce.date().nullable(),\n results: z.array(\n z.object({\n itemId: z.string(),\n itemDatasetVersion: z.number().int().nullable(),\n input: z.unknown(),\n output: z.unknown().nullable(),\n groundTruth: z.unknown().nullable(),\n error: z.string().nullable(),\n startedAt: z.coerce.date(),\n completedAt: z.coerce.date(),\n retryCount: z.number(),\n scores: z.array(\n z.object({\n scorerId: z.string(),\n scorerName: z.string(),\n score: z.number().nullable(),\n reason: z.string().nullable(),\n error: z.string().nullable(),\n }),\n ),\n }),\n ),\n});\n\n// ============================================================================\n// List Response Schemas\n// ============================================================================\n\nexport const listDatasetsResponseSchema = z.object({\n datasets: z.array(datasetResponseSchema),\n pagination: paginationInfoSchema,\n});\n\nexport const listItemsResponseSchema = z.object({\n items: z.array(datasetItemResponseSchema),\n pagination: paginationInfoSchema,\n});\n\nexport const listExperimentsResponseSchema = z.object({\n experiments: z.array(experimentResponseSchema),\n pagination: paginationInfoSchema,\n});\n\nexport const listExperimentResultsResponseSchema = z.object({\n results: z.array(experimentResultResponseSchema),\n pagination: paginationInfoSchema,\n});\n\n// ============================================================================\n// Version Schemas\n// ============================================================================\n\n// Path params for item version routes\nexport const datasetItemVersionPathParams = z.object({\n datasetId: z.string().describe('Unique identifier for the dataset'),\n itemId: z.string().describe('Unique identifier for the dataset item'),\n datasetVersion: z.coerce.number().int().describe('Dataset version number'),\n});\n\n// Item history row response schema (SCD-2 DatasetItemRow shape)\nexport const itemVersionResponseSchema = z.object({\n id: z.string(),\n datasetId: z.string(),\n datasetVersion: z.number().int(),\n input: z.unknown(),\n groundTruth: z.unknown().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n validTo: z.number().int().nullable(),\n isDeleted: z.boolean(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n});\n\nexport const listItemVersionsResponseSchema = z.object({\n history: z.array(itemVersionResponseSchema),\n});\n\n// Dataset version response schema\nexport const datasetVersionResponseSchema = z.object({\n id: z.string(),\n datasetId: z.string(),\n version: z.number().int(),\n createdAt: z.coerce.date(),\n});\n\nexport const listDatasetVersionsResponseSchema = z.object({\n versions: z.array(datasetVersionResponseSchema),\n pagination: paginationInfoSchema,\n});\n\n// ============================================================================\n// Batch Operation Schemas\n// ============================================================================\n\nexport const batchInsertItemsBodySchema = z.object({\n items: z.array(\n z.object({\n input: z.unknown(),\n groundTruth: z.unknown().optional(),\n requestContext: z.record(z.string(), z.unknown()).optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n }),\n ),\n});\n\nexport const batchInsertItemsResponseSchema = z.object({\n items: z.array(datasetItemResponseSchema),\n count: z.number(),\n});\n\nexport const batchDeleteItemsBodySchema = z.object({\n itemIds: z.array(z.string()),\n});\n\nexport const batchDeleteItemsResponseSchema = z.object({\n success: z.boolean(),\n deletedCount: z.number(),\n});\n","import { MastraError } from '@mastra/core/error';\nimport { coreFeatures } from '@mastra/core/features';\nimport { HTTPException } from '../http-exception';\nimport type { StatusCode } from '../http-exception';\nimport { successResponseSchema } from '../schemas/common';\nimport {\n datasetIdPathParams,\n datasetAndExperimentIdPathParams,\n datasetAndItemIdPathParams,\n datasetItemVersionPathParams,\n paginationQuerySchema,\n listItemsQuerySchema,\n createDatasetBodySchema,\n updateDatasetBodySchema,\n addItemBodySchema,\n updateItemBodySchema,\n triggerExperimentBodySchema,\n compareExperimentsBodySchema,\n batchInsertItemsBodySchema,\n batchDeleteItemsBodySchema,\n datasetResponseSchema,\n datasetItemResponseSchema,\n experimentResponseSchema,\n experimentSummaryResponseSchema,\n comparisonResponseSchema,\n listDatasetsResponseSchema,\n listItemsResponseSchema,\n listExperimentsResponseSchema,\n listExperimentResultsResponseSchema,\n listDatasetVersionsResponseSchema,\n listItemVersionsResponseSchema,\n batchInsertItemsResponseSchema,\n batchDeleteItemsResponseSchema,\n} from '../schemas/datasets';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { handleError } from './error';\n\n// ============================================================================\n// Feature gate + local type guards\n// ============================================================================\n\nfunction assertDatasetsAvailable(): void {\n if (!coreFeatures.has('datasets')) {\n throw new HTTPException(501, { message: 'Datasets require @mastra/core >= 1.4.0' });\n }\n}\n\ninterface SchemaValidationLike extends Error {\n field: 'input' | 'groundTruth';\n errors: Array<{ path: string; code: string; message: string }>;\n}\n\ninterface SchemaUpdateValidationLike extends Error {\n failingItems: Array<{\n index: number;\n data: unknown;\n field: 'input' | 'groundTruth';\n errors: Array<{ path: string; code: string; message: string }>;\n }>;\n}\n\nfunction isSchemaValidationError(error: unknown): error is SchemaValidationLike {\n return error instanceof Error && error.name === 'SchemaValidationError';\n}\n\nfunction isSchemaUpdateValidationError(error: unknown): error is SchemaUpdateValidationLike {\n return error instanceof Error && error.name === 'SchemaUpdateValidationError';\n}\n\n// ============================================================================\n// Helper: Map MastraError IDs to HTTP status codes\n// ============================================================================\n\nfunction getHttpStatusForMastraError(errorId: string): number {\n switch (errorId) {\n case 'DATASET_NOT_FOUND':\n case 'EXPERIMENT_NOT_FOUND':\n return 404;\n default:\n return 500;\n }\n}\n\n// ============================================================================\n// Dataset CRUD Routes\n// ============================================================================\n\nexport const LIST_DATASETS_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets',\n responseType: 'json',\n queryParamSchema: paginationQuerySchema,\n responseSchema: listDatasetsResponseSchema,\n summary: 'List all datasets',\n description: 'Returns a paginated list of all datasets',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { page, perPage } = params;\n const result = await mastra.datasets.list({ page: page ?? 0, perPage: perPage ?? 10 });\n return {\n datasets: result.datasets as any,\n pagination: result.pagination,\n };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error listing datasets');\n }\n },\n});\n\nexport const CREATE_DATASET_ROUTE = createRoute({\n method: 'POST',\n path: '/datasets',\n responseType: 'json',\n bodySchema: createDatasetBodySchema,\n responseSchema: datasetResponseSchema,\n summary: 'Create a new dataset',\n description: 'Creates a new dataset with the specified name and optional metadata',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { name, description, metadata, inputSchema, groundTruthSchema, requestContextSchema } = params as {\n name: string;\n description?: string;\n metadata?: Record<string, unknown>;\n inputSchema?: Record<string, unknown> | null;\n groundTruthSchema?: Record<string, unknown> | null;\n requestContextSchema?: Record<string, unknown> | null;\n };\n const ds = await mastra.datasets.create({\n name,\n description,\n metadata,\n inputSchema,\n groundTruthSchema,\n requestContextSchema,\n });\n const details = await ds.getDetails();\n return details as any;\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error creating dataset');\n }\n },\n});\n\nexport const GET_DATASET_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n responseSchema: datasetResponseSchema.nullable(),\n summary: 'Get dataset by ID',\n description: 'Returns details for a specific dataset',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId }) => {\n assertDatasetsAvailable();\n try {\n const ds = await mastra.datasets.get({ id: datasetId });\n return (await ds.getDetails()) as any;\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error getting dataset');\n }\n },\n});\n\nexport const UPDATE_DATASET_ROUTE = createRoute({\n method: 'PATCH',\n path: '/datasets/:datasetId',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n bodySchema: updateDatasetBodySchema,\n responseSchema: datasetResponseSchema,\n summary: 'Update dataset',\n description: 'Updates a dataset with the specified fields',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { name, description, metadata, inputSchema, groundTruthSchema, requestContextSchema } = params as {\n name?: string;\n description?: string;\n metadata?: Record<string, unknown>;\n inputSchema?: Record<string, unknown> | null;\n groundTruthSchema?: Record<string, unknown> | null;\n requestContextSchema?: Record<string, unknown> | null;\n };\n const ds = await mastra.datasets.get({ id: datasetId });\n const result = await ds.update({\n name,\n description,\n metadata,\n inputSchema,\n groundTruthSchema,\n requestContextSchema,\n });\n return result as any;\n } catch (error) {\n if (isSchemaUpdateValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n cause: { failingItems: error.failingItems },\n });\n }\n if (isSchemaValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n cause: { field: error.field, errors: error.errors },\n });\n }\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error updating dataset');\n }\n },\n});\n\nexport const DELETE_DATASET_ROUTE = createRoute({\n method: 'DELETE',\n path: '/datasets/:datasetId',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n responseSchema: successResponseSchema,\n summary: 'Delete dataset',\n description: 'Deletes a dataset and all its items',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId }) => {\n assertDatasetsAvailable();\n try {\n await mastra.datasets.get({ id: datasetId }); // validates existence\n await mastra.datasets.delete({ id: datasetId });\n return { success: true };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error deleting dataset');\n }\n },\n});\n\n// ============================================================================\n// Item CRUD Routes\n// ============================================================================\n\nexport const LIST_ITEMS_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/items',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n queryParamSchema: listItemsQuerySchema,\n responseSchema: listItemsResponseSchema,\n summary: 'List dataset items',\n description: 'Returns a paginated list of items in the dataset',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { page, perPage, version, search } = params;\n const ds = await mastra.datasets.get({ id: datasetId });\n const result = await ds.listItems({\n page: page ?? 0,\n perPage: perPage ?? 10,\n version,\n search,\n });\n // When version is specified, result is DatasetItem[] (flat). Otherwise paginated.\n if (Array.isArray(result)) {\n return { items: result, pagination: { total: result.length, page: 0, perPage: result.length, hasMore: false } };\n }\n return { items: result.items, pagination: result.pagination };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error listing dataset items');\n }\n },\n});\n\nexport const ADD_ITEM_ROUTE = createRoute({\n method: 'POST',\n path: '/datasets/:datasetId/items',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n bodySchema: addItemBodySchema,\n responseSchema: datasetItemResponseSchema,\n summary: 'Add item to dataset',\n description: 'Adds a new item to the dataset (auto-increments dataset version)',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { input, groundTruth, requestContext, metadata } = params as {\n input: unknown;\n groundTruth?: unknown;\n requestContext?: Record<string, unknown>;\n metadata?: Record<string, unknown>;\n };\n const ds = await mastra.datasets.get({ id: datasetId });\n return await ds.addItem({ input, groundTruth, requestContext, metadata });\n } catch (error) {\n if (isSchemaValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n cause: { field: error.field, errors: error.errors },\n });\n }\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error adding item to dataset');\n }\n },\n});\n\nexport const GET_ITEM_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/items/:itemId',\n responseType: 'json',\n pathParamSchema: datasetAndItemIdPathParams,\n responseSchema: datasetItemResponseSchema.nullable(),\n summary: 'Get dataset item by ID',\n description: 'Returns details for a specific dataset item',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, itemId }) => {\n assertDatasetsAvailable();\n try {\n const ds = await mastra.datasets.get({ id: datasetId });\n const item = await ds.getItem({ itemId });\n if (!item || (item as any).datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Item not found: ${itemId}` });\n }\n return item as any;\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error getting dataset item');\n }\n },\n});\n\nexport const UPDATE_ITEM_ROUTE = createRoute({\n method: 'PATCH',\n path: '/datasets/:datasetId/items/:itemId',\n responseType: 'json',\n pathParamSchema: datasetAndItemIdPathParams,\n bodySchema: updateItemBodySchema,\n responseSchema: datasetItemResponseSchema,\n summary: 'Update dataset item',\n description: 'Updates a dataset item (auto-increments dataset version)',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, itemId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { input, groundTruth, requestContext, metadata } = params as {\n input?: unknown;\n groundTruth?: unknown;\n requestContext?: Record<string, unknown>;\n metadata?: Record<string, unknown>;\n };\n const ds = await mastra.datasets.get({ id: datasetId });\n // Check if item exists and belongs to dataset\n const existing = await ds.getItem({ itemId });\n if (!existing || (existing as any).datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Item not found: ${itemId}` });\n }\n return await ds.updateItem({ itemId, input, groundTruth, requestContext, metadata });\n } catch (error) {\n if (isSchemaValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n cause: { field: error.field, errors: error.errors },\n });\n }\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error updating dataset item');\n }\n },\n});\n\nexport const DELETE_ITEM_ROUTE = createRoute({\n method: 'DELETE',\n path: '/datasets/:datasetId/items/:itemId',\n responseType: 'json',\n pathParamSchema: datasetAndItemIdPathParams,\n responseSchema: successResponseSchema,\n summary: 'Delete dataset item',\n description: 'Deletes a dataset item',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, itemId }) => {\n assertDatasetsAvailable();\n try {\n const ds = await mastra.datasets.get({ id: datasetId });\n const existing = await ds.getItem({ itemId });\n if (!existing || (existing as any).datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Item not found: ${itemId}` });\n }\n await ds.deleteItem({ itemId });\n return { success: true };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error deleting dataset item');\n }\n },\n});\n\n// ============================================================================\n// Experiment Operations Routes (nested under datasets)\n// ============================================================================\n\nexport const LIST_EXPERIMENTS_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/experiments',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n queryParamSchema: paginationQuerySchema,\n responseSchema: listExperimentsResponseSchema,\n summary: 'List experiments for dataset',\n description: 'Returns a paginated list of experiments for the dataset',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { page, perPage } = params;\n const ds = await mastra.datasets.get({ id: datasetId });\n const result = await ds.listExperiments({ page: page ?? 0, perPage: perPage ?? 10 });\n return { experiments: result.experiments, pagination: result.pagination };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error listing experiments');\n }\n },\n});\n\nexport const TRIGGER_EXPERIMENT_ROUTE = createRoute({\n method: 'POST',\n path: '/datasets/:datasetId/experiments',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n bodySchema: triggerExperimentBodySchema,\n responseSchema: experimentSummaryResponseSchema,\n summary: 'Trigger a new experiment',\n description:\n 'Triggers a new experiment on the dataset against the specified target. Returns immediately with pending status; execution happens in background.',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { targetType, targetId, scorerIds, version, maxConcurrency, requestContext } = params as {\n targetType: 'agent' | 'workflow' | 'scorer';\n targetId: string;\n scorerIds?: string[];\n version?: number;\n maxConcurrency?: number;\n requestContext?: Record<string, unknown>;\n };\n const ds = await mastra.datasets.get({ id: datasetId });\n const result = await ds.startExperimentAsync({\n targetType,\n targetId,\n scorers: scorerIds,\n version,\n maxConcurrency,\n requestContext,\n });\n // Return shape matching experimentSummaryResponseSchema\n return {\n experimentId: result.experimentId,\n status: result.status,\n totalItems: 0,\n succeededCount: 0,\n failedCount: 0,\n startedAt: new Date(),\n completedAt: null,\n results: [],\n };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error triggering experiment');\n }\n },\n});\n\nexport const GET_EXPERIMENT_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/experiments/:experimentId',\n responseType: 'json',\n pathParamSchema: datasetAndExperimentIdPathParams,\n responseSchema: experimentResponseSchema.nullable(),\n summary: 'Get experiment by ID',\n description: 'Returns details for a specific experiment',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, experimentId }) => {\n assertDatasetsAvailable();\n try {\n const ds = await mastra.datasets.get({ id: datasetId });\n const run = await ds.getExperiment({ experimentId });\n if (!run || run.datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Experiment not found: ${experimentId}` });\n }\n return run;\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error getting experiment');\n }\n },\n});\n\nexport const LIST_EXPERIMENT_RESULTS_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/experiments/:experimentId/results',\n responseType: 'json',\n pathParamSchema: datasetAndExperimentIdPathParams,\n queryParamSchema: paginationQuerySchema,\n responseSchema: listExperimentResultsResponseSchema,\n summary: 'List experiment results',\n description: 'Returns a paginated list of results for the experiment',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, experimentId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { page, perPage } = params;\n const ds = await mastra.datasets.get({ id: datasetId });\n // Validate experiment belongs to dataset\n const run = await ds.getExperiment({ experimentId });\n if (!run || run.datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Experiment not found: ${experimentId}` });\n }\n const result = await ds.listExperimentResults({ experimentId, page: page ?? 0, perPage: perPage ?? 10 });\n return {\n results: result.results.map(({ experimentId: _eid, ...rest }) => ({ experimentId, ...rest })),\n pagination: result.pagination,\n };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error listing experiment results');\n }\n },\n});\n\n// ============================================================================\n// Analytics Routes (nested under datasets)\n// ============================================================================\n\nexport const COMPARE_EXPERIMENTS_ROUTE = createRoute({\n method: 'POST',\n path: '/datasets/:datasetId/compare',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n bodySchema: compareExperimentsBodySchema,\n responseSchema: comparisonResponseSchema,\n summary: 'Compare two experiments',\n description: 'Compares two experiments to detect score regressions',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { experimentIdA, experimentIdB } = params as {\n experimentIdA: string;\n experimentIdB: string;\n };\n // Validate dataset exists\n await mastra.datasets.get({ id: datasetId });\n const result = await mastra.datasets.compareExperiments({\n experimentIds: [experimentIdA, experimentIdB],\n baselineId: experimentIdA,\n });\n return result;\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error comparing experiments');\n }\n },\n});\n\n// ============================================================================\n// Version Routes\n// ============================================================================\n\nexport const LIST_DATASET_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/versions',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n queryParamSchema: paginationQuerySchema,\n responseSchema: listDatasetVersionsResponseSchema,\n summary: 'List dataset versions',\n description: 'Returns a paginated list of all versions for the dataset',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { page, perPage } = params;\n const ds = await mastra.datasets.get({ id: datasetId });\n const result = await ds.listVersions({ page: page ?? 0, perPage: perPage ?? 10 });\n return { versions: result.versions, pagination: result.pagination };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error listing dataset versions');\n }\n },\n});\n\nexport const LIST_ITEM_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/items/:itemId/history',\n responseType: 'json',\n pathParamSchema: datasetAndItemIdPathParams,\n responseSchema: listItemVersionsResponseSchema,\n summary: 'Get item history',\n description: 'Returns the full SCD-2 history of the item across all dataset versions',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, itemId }) => {\n assertDatasetsAvailable();\n try {\n const ds = await mastra.datasets.get({ id: datasetId });\n const rows = await ds.getItemHistory({ itemId });\n // Check rows belong to this dataset\n if (rows.length > 0 && rows[0]?.datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Item not found in dataset: ${itemId}` });\n }\n return { history: rows };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error listing item history');\n }\n },\n});\n\nexport const GET_ITEM_VERSION_ROUTE = createRoute({\n method: 'GET',\n path: '/datasets/:datasetId/items/:itemId/versions/:datasetVersion',\n responseType: 'json',\n pathParamSchema: datasetItemVersionPathParams,\n responseSchema: datasetItemResponseSchema.nullable(),\n summary: 'Get item at specific dataset version',\n description: 'Returns the item as it existed at a specific dataset version',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, itemId, datasetVersion }) => {\n assertDatasetsAvailable();\n try {\n const ds = await mastra.datasets.get({ id: datasetId });\n const item = await ds.getItem({ itemId, version: datasetVersion });\n if (!item) {\n throw new HTTPException(404, { message: `Item ${itemId} not found at version ${datasetVersion}` });\n }\n if ((item as any).datasetId !== datasetId) {\n throw new HTTPException(404, { message: `Item not found in dataset: ${itemId}` });\n }\n return item as any;\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error getting item version');\n }\n },\n});\n\n// ============================================================================\n// Batch Operations Routes\n// ============================================================================\n\nexport const BATCH_INSERT_ITEMS_ROUTE = createRoute({\n method: 'POST',\n path: '/datasets/:datasetId/items/batch',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n bodySchema: batchInsertItemsBodySchema,\n responseSchema: batchInsertItemsResponseSchema,\n summary: 'Batch insert items to dataset',\n description: 'Adds multiple items to the dataset in a single operation (single version entry)',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { items } = params as {\n items: Array<{ input: unknown; groundTruth?: unknown; metadata?: Record<string, unknown> }>;\n };\n const ds = await mastra.datasets.get({ id: datasetId });\n const addedItems = await ds.addItems({ items });\n return { items: addedItems, count: addedItems.length };\n } catch (error) {\n if (isSchemaValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n cause: { field: error.field, errors: error.errors },\n });\n }\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error batch inserting items');\n }\n },\n});\n\nexport const BATCH_DELETE_ITEMS_ROUTE = createRoute({\n method: 'DELETE',\n path: '/datasets/:datasetId/items/batch',\n responseType: 'json',\n pathParamSchema: datasetIdPathParams,\n bodySchema: batchDeleteItemsBodySchema,\n responseSchema: batchDeleteItemsResponseSchema,\n summary: 'Batch delete items from dataset',\n description: 'Deletes multiple items from the dataset in a single operation (single version entry)',\n tags: ['Datasets'],\n requiresAuth: true,\n handler: async ({ mastra, datasetId, ...params }) => {\n assertDatasetsAvailable();\n try {\n const { itemIds } = params as { itemIds: string[] };\n const ds = await mastra.datasets.get({ id: datasetId });\n await ds.deleteItems({ itemIds });\n return { success: true, deletedCount: itemIds.length };\n } catch (error) {\n if (error instanceof MastraError) {\n throw new HTTPException(getHttpStatusForMastraError(error.id) as StatusCode, { message: error.message });\n }\n return handleError(error, 'Error bulk deleting items');\n }\n },\n});\n"]}