import { z } from "zod"; export const BackendValues = ["codex", "claude", "fake"] as const; export const Backend = z.enum(BackendValues); export type Backend = z.infer; export const CapabilityValues = [ "spec_write", "phase_planning", "task_dag_planning", "code_edit", "test_first_development", "code_review", "evidence_check", "command_execute", "backtest_run", "metric_extract", "failure_mining", "objective_eval", "final_report_compose", ] as const; export const Capability = z.enum(CapabilityValues); export type Capability = z.infer; export const RiskLevelValues = ["low", "medium", "high"] as const; export const RiskLevel = z.enum(RiskLevelValues); export type RiskLevel = z.infer; export const ApprovalDecisionActionValues = [ "approve", "reject", "request_changes", "abort", ] as const; export const ApprovalDecisionAction = z.enum(ApprovalDecisionActionValues); export type ApprovalDecisionAction = z.infer; export const ApprovalStateValues = [ "pending", "approved", "rejected", "changes_requested", "aborted", "paused", ] as const; export const ApprovalState = z.enum(ApprovalStateValues); export type ApprovalState = z.infer; export const RunStateValues = [ "created", "bound", "planning", "awaiting_approval", "executing", "paused", "completed", "failed", "aborted", ] as const; export const RunState = z.enum(RunStateValues); export type RunState = z.infer; export const RunPhaseStateValues = [ "pending", "running", "awaiting_artifact", "validating", "awaiting_approval", "completed", "failed", "skipped", ] as const; export const RunPhaseState = z.enum(RunPhaseStateValues); export type RunPhaseState = z.infer; export const SessionStateValues = [ "CREATED", "BOOTSTRAPPING", "READY", "BUSY", "WAITING_FOR_APPROVAL", "ARTIFACT_TIMEOUT", "HUNG", "CRASHED", "RESUMING", "REBOOTSTRAPPED", "FAILED_NEEDS_HUMAN", ] as const; export const SessionState = z.enum(SessionStateValues); export type SessionState = z.infer;