UNPKG

@ai2070/l0

Version:

L0: The Missing Reliability Substrate for AI

126 lines (125 loc) 3.82 kB
import { z } from "zod4"; const GuardrailViolationSchema = z.object( { rule: z.string(), message: z.string(), severity: z.enum(["warning", "error", "fatal"]), position: z.number().optional(), recoverable: z.boolean(), timestamp: z.number().optional(), context: z.record(z.string(), z.unknown()).optional(), suggestion: z.string().optional() } ); const GuardrailContextSchema = z.object({ content: z.string(), checkpoint: z.string().optional(), delta: z.string().optional(), tokenCount: z.number(), completed: z.boolean(), metadata: z.record(z.string(), z.any()).optional(), previousViolations: z.array(z.lazy(() => GuardrailViolationSchema)).optional() }); const GuardrailRuleSchema = z.object({ name: z.string(), description: z.string().optional(), check: z.function(), streaming: z.boolean().optional(), severity: z.enum(["warning", "error", "fatal"]).optional(), recoverable: z.boolean().optional() }); const GuardrailStateSchema = z.object({ violations: z.array(GuardrailViolationSchema), violationsByRule: z.map(z.string(), z.array(GuardrailViolationSchema)), hasFatalViolations: z.boolean(), hasErrorViolations: z.boolean(), violationCount: z.number(), lastCheckTime: z.number().optional() }); const GuardrailConfigSchema = z.object({ rules: z.array(GuardrailRuleSchema), stopOnFatal: z.boolean().optional(), enableStreaming: z.boolean().optional(), checkInterval: z.number().optional(), onViolation: z.function().optional(), onPhaseStart: z.function().optional(), onPhaseEnd: z.function().optional(), onRuleStart: z.function().optional(), onRuleEnd: z.function().optional() }); const GuardrailResultSchema = z.object({ passed: z.boolean(), violations: z.array(GuardrailViolationSchema), shouldRetry: z.boolean(), shouldHalt: z.boolean(), summary: z.object({ total: z.number(), fatal: z.number(), errors: z.number(), warnings: z.number() }) }); const JsonStructureSchema = z.object({ openBraces: z.number(), closeBraces: z.number(), openBrackets: z.number(), closeBrackets: z.number(), inString: z.boolean(), isBalanced: z.boolean(), issues: z.array(z.string()) }); const MarkdownStructureSchema = z.object({ openFences: z.number(), fenceLanguages: z.array(z.string()), inFence: z.boolean(), headers: z.array(z.number()), listDepth: z.number(), issues: z.array(z.string()) }); const LatexStructureSchema = z.object({ openEnvironments: z.array(z.string()), isBalanced: z.boolean(), issues: z.array(z.string()) }); const PatternConfigSchema = z.object({ patterns: z.array(z.union([z.string(), z.instanceof(RegExp)])), isBadPattern: z.boolean(), message: z.string().optional(), fatal: z.boolean().optional() }); const DriftConfigSchema = z.object({ detectToneShift: z.boolean().optional(), detectMetaCommentary: z.boolean().optional(), detectRepetition: z.boolean().optional(), detectEntropySpike: z.boolean().optional(), entropyThreshold: z.number().optional(), repetitionThreshold: z.number().optional() }); const FunctionCallStructureSchema = z.object({ name: z.string().optional(), arguments: z.string().optional(), parsedArguments: z.record(z.string(), z.any()).optional(), isValid: z.boolean(), errors: z.array(z.string()) }); const SchemaValidationSchema = z.object({ valid: z.boolean(), errors: z.array(z.string()), parsed: z.any().optional() }); export { DriftConfigSchema, FunctionCallStructureSchema, GuardrailConfigSchema, GuardrailContextSchema, GuardrailResultSchema, GuardrailRuleSchema, GuardrailStateSchema, GuardrailViolationSchema, JsonStructureSchema, LatexStructureSchema, MarkdownStructureSchema, PatternConfigSchema, SchemaValidationSchema }; //# sourceMappingURL=guardrails.js.map