export type LoopStatus = "running" | "succeeded" | "failed" | "stopped"; export interface LoopLogEntry { seq: number; timestamp: string; iteration: number | null; source: "loop" | "worker" | "verifier" | "verify-check"; level: "info" | "error"; text: string; } export interface LoopVerifyCheckResult { command: string; exitCode: number; passed: boolean; stdout: string; stderr: string; startedAt: string; completedAt: string; } export interface LoopVerifyPromptResult { passed: boolean; reason: string; verifierAgentId: string | null; startedAt: string; completedAt: string; } export interface LoopIterationRecord { index: number; workerAgentId: string | null; workerStartedAt: string; workerCompletedAt: string | null; verifierAgentId: string | null; status: "running" | "succeeded" | "failed" | "stopped"; workerOutcome: "completed" | "failed" | "canceled" | null; failureReason: string | null; verifyChecks: LoopVerifyCheckResult[]; verifyPrompt: LoopVerifyPromptResult | null; } export interface LoopRecord { id: string; name: string | null; prompt: string; cwd: string; provider: string; model: string | null; modeId: string | null; workerProvider: string | null; workerModel: string | null; verifierProvider: string | null; verifierModel: string | null; verifierModeId: string | null; verifyPrompt: string | null; verifyChecks: string[]; archive: boolean; sleepMs: number; maxIterations: number | null; maxTimeMs: number | null; status: LoopStatus; createdAt: string; updatedAt: string; startedAt: string; completedAt: string | null; stopRequestedAt: string | null; iterations: LoopIterationRecord[]; logs: LoopLogEntry[]; nextLogSeq: number; activeIteration: number | null; activeWorkerAgentId: string | null; activeVerifierAgentId: string | null; } export interface LoopListItem { id: string; name: string | null; status: LoopStatus; cwd: string; createdAt: string; updatedAt: string; activeIteration: number | null; } export interface LoopLogsResult { loop: LoopRecord; entries: LoopLogEntry[]; nextCursor: number; } export interface LoopRunPayload { requestId: string; loop: LoopRecord | null; error: string | null; } export interface LoopListPayload { requestId: string; loops: LoopListItem[]; error: string | null; } export interface LoopInspectPayload { requestId: string; loop: LoopRecord | null; error: string | null; } export interface LoopLogsPayload { requestId: string; loop: LoopRecord | null; entries: LoopLogEntry[]; nextCursor: number; error: string | null; } export interface LoopStopPayload { requestId: string; loop: LoopRecord | null; error: string | null; } export interface LoopRunInput { prompt: string; cwd: string; provider?: string; model?: string; modeId?: string; workerProvider?: string; workerModel?: string; verifierProvider?: string; verifierModel?: string; verifierModeId?: string; verifyPrompt?: string; verifyChecks?: string[]; archive?: boolean; name?: string; sleepMs?: number; maxIterations?: number; maxTimeMs?: number; } export interface LoopDaemonClient { loopRun(input: LoopRunInput): Promise; loopList(): Promise; loopInspect(id: string): Promise; loopLogs(id: string, afterSeq?: number): Promise; loopStop(id: string): Promise; close(): Promise; } //# sourceMappingURL=types.d.ts.map