/**
* Zod Validation Schemas for Execution System
*
* Comprehensive validation schemas for all execution-related types,
* providing runtime type safety and clear error messages.
*/
import { z } from 'zod';
/**
* Zod schema for GateScope validation
*/
export declare const gateScopeSchema: z.ZodEnum<["execution", "session", "chain", "step"]>;
/**
* Zod schema for CustomCheck validation
*/
export declare const customCheckSchema: z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
}, "strip", z.ZodTypeAny, {
name: string;
description: string;
}, {
name: string;
description: string;
}>;
/**
* Zod schema for unified GateSpecification validation (canonical in v3.0.0+).
*
* Accepts:
* - String gate ID references (e.g., "toxicity")
* - Simple custom checks ({name, description})
* - Full temporary gate definitions (with criteria, severity, etc.)
*/
export declare const gateSpecificationSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
}, "strip", z.ZodTypeAny, {
name: string;
description: string;
}, {
name: string;
description: string;
}>, z.ZodEffects<z.ZodObject<{
id: z.ZodOptional<z.ZodString>;
template: z.ZodOptional<z.ZodString>;
name: z.ZodOptional<z.ZodString>;
type: z.ZodOptional<z.ZodEnum<["validation", "guidance"]>>;
scope: z.ZodOptional<z.ZodEnum<["execution", "session", "chain", "step"]>>;
criteria: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
pass_criteria: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
guidance: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
severity: z.ZodOptional<z.ZodEnum<["critical", "high", "medium", "low"]>>;
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
source: z.ZodOptional<z.ZodEnum<["manual", "automatic", "analysis"]>>;
}, "strip", z.ZodTypeAny, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}>, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}>]>;
/**
* Zod schema for gate_action parameter validation
* Used when retry limit is exceeded to let user choose: retry, skip, or abort
*/
export declare const gateActionSchema: z.ZodEnum<["retry", "skip", "abort"]>;
/**
* Complete Zod schema for McpToolRequest validation
*/
export declare const mcpToolRequestSchema: z.ZodEffects<z.ZodObject<{
command: z.ZodOptional<z.ZodString>;
chain_id: z.ZodOptional<z.ZodString>;
gate_verdict: z.ZodOptional<z.ZodString>;
gate_action: z.ZodOptional<z.ZodEnum<["retry", "skip", "abort"]>>;
user_response: z.ZodOptional<z.ZodString>;
force_restart: z.ZodOptional<z.ZodBoolean>;
gates: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
}, "strip", z.ZodTypeAny, {
name: string;
description: string;
}, {
name: string;
description: string;
}>, z.ZodEffects<z.ZodObject<{
id: z.ZodOptional<z.ZodString>;
template: z.ZodOptional<z.ZodString>;
name: z.ZodOptional<z.ZodString>;
type: z.ZodOptional<z.ZodEnum<["validation", "guidance"]>>;
scope: z.ZodOptional<z.ZodEnum<["execution", "session", "chain", "step"]>>;
criteria: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
pass_criteria: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
guidance: z.ZodOptional<z.ZodString>;
description: z.ZodOptional<z.ZodString>;
severity: z.ZodOptional<z.ZodEnum<["critical", "high", "medium", "low"]>>;
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
source: z.ZodOptional<z.ZodEnum<["manual", "automatic", "analysis"]>>;
}, "strip", z.ZodTypeAny, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}>, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}, {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
}>]>, "many">>;
options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
}, "strip", z.ZodTypeAny, {
gates?: (string | {
name: string;
description: string;
} | {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
})[] | undefined;
options?: Record<string, any> | undefined;
command?: string | undefined;
gate_verdict?: string | undefined;
user_response?: string | undefined;
chain_id?: string | undefined;
gate_action?: "retry" | "skip" | "abort" | undefined;
force_restart?: boolean | undefined;
}, {
gates?: (string | {
name: string;
description: string;
} | {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
})[] | undefined;
options?: Record<string, any> | undefined;
command?: string | undefined;
gate_verdict?: string | undefined;
user_response?: string | undefined;
chain_id?: string | undefined;
gate_action?: "retry" | "skip" | "abort" | undefined;
force_restart?: boolean | undefined;
}>, {
gates?: (string | {
name: string;
description: string;
} | {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
})[] | undefined;
options?: Record<string, any> | undefined;
command?: string | undefined;
gate_verdict?: string | undefined;
user_response?: string | undefined;
chain_id?: string | undefined;
gate_action?: "retry" | "skip" | "abort" | undefined;
force_restart?: boolean | undefined;
}, {
gates?: (string | {
name: string;
description: string;
} | {
guidance?: string | undefined;
source?: "manual" | "automatic" | "analysis" | undefined;
type?: "validation" | "guidance" | undefined;
id?: string | undefined;
name?: string | undefined;
description?: string | undefined;
template?: string | undefined;
criteria?: string[] | undefined;
severity?: "critical" | "high" | "medium" | "low" | undefined;
pass_criteria?: string[] | undefined;
scope?: "execution" | "session" | "chain" | "step" | undefined;
context?: Record<string, any> | undefined;
})[] | undefined;
options?: Record<string, any> | undefined;
command?: string | undefined;
gate_verdict?: string | undefined;
user_response?: string | undefined;
chain_id?: string | undefined;
gate_action?: "retry" | "skip" | "abort" | undefined;
force_restart?: boolean | undefined;
}>;
/**
* Type inference from schema for runtime type checking
*/
export type McpToolRequestFromSchema = z.infer<typeof mcpToolRequestSchema>;