UNPKG

@ai2070/l0

Version:

L0: The Missing Reliability Substrate for AI

113 lines 3.63 kB
import { z } from "zod4"; import { L0ResultSchema } from "./l0"; import { StructuredResultSchema } from "./structured"; export const StepContextSchema = z.object({ stepIndex: z.number(), totalSteps: z.number(), previousResults: z.array(z.any()), metadata: z.record(z.string(), z.any()), signal: z.instanceof(AbortSignal).optional(), }); export const StepResultSchema = z.object({ stepName: z.string(), stepIndex: z.number(), input: z.any(), output: z.any(), l0Result: L0ResultSchema, status: z.enum(["success", "error", "skipped"]), error: z.instanceof(Error).optional(), duration: z.number(), startTime: z.number(), endTime: z.number(), }); export const StructuredStepResultSchema = z.object({ stepName: z.string(), stepIndex: z.number(), input: z.any(), output: z.any(), structuredResult: StructuredResultSchema, status: z.enum(["success", "error", "skipped"]), error: z.instanceof(Error).optional(), duration: z.number(), startTime: z.number(), endTime: z.number(), }); export const PipelineStepSchema = z.object({ name: z.string(), fn: z.function(), transform: z.function().optional(), condition: z.function().optional(), onError: z.function().optional(), onComplete: z.function().optional(), metadata: z.record(z.string(), z.any()).optional(), }); export const StructuredPipelineStepSchema = z.object({ name: z.string(), fn: z.function(), transform: z.function().optional(), condition: z.function().optional(), onError: z.function().optional(), onComplete: z.function().optional(), metadata: z.record(z.string(), z.any()).optional(), }); export const PipelineOptionsSchema = z.object({ name: z.string().optional(), stopOnError: z.boolean().optional(), timeout: z.number().optional(), signal: z.instanceof(AbortSignal).optional(), monitoring: z .object({ enabled: z.boolean().optional(), metadata: z.record(z.string(), z.any()).optional(), }) .optional(), onStart: z.function().optional(), onComplete: z.function().optional(), onError: z.function().optional(), onProgress: z.function().optional(), metadata: z.record(z.string(), z.any()).optional(), }); export const PipelineResultSchema = z.object({ name: z.string().optional(), output: z.any(), steps: z.array(StepResultSchema), status: z.enum(["success", "error", "partial"]), error: z.instanceof(Error).optional(), duration: z.number(), startTime: z.number(), endTime: z.number(), metadata: z.record(z.string(), z.any()).optional(), }); export const PipelineSchema = z.object({ name: z.string().optional(), steps: z.array(PipelineStepSchema), options: PipelineOptionsSchema, run: z.function(), addStep: z.function(), removeStep: z.function(), getStep: z.function(), clone: z.function(), }); export const PipelineBranchSchema = z.object({ condition: z.function(), steps: z.array(PipelineStepSchema), name: z.string().optional(), }); export const StepBuilderOptionsSchema = z.object({ l0Options: z.any().optional(), transform: z.function().optional(), condition: z.function().optional(), onError: z.function().optional(), metadata: z.record(z.string(), z.any()).optional(), }); export const PipelinePresetSchema = z.object({ name: z.string(), stopOnError: z.boolean(), timeout: z.number().optional(), monitoring: z .object({ enabled: z.boolean(), }) .optional(), }); //# sourceMappingURL=pipeline.js.map