import type { Fingerprint } from "./engine.js"; export declare const DELEGATED_MAX_TASKS = 24; export declare const DELEGATED_MAX_DURATION_MS: number; export type DelegatedExecutionStatus = "completed" | "failed"; export type DelegatedEvidenceOutcome = "copy_success" | "copy_failed" | "execution_failed" | "model_mismatch" | "model_unverified" | "provider_mismatch" | "time_limit"; export type DelegatedTaskResult = { taskId: string; executionStatus: "completed"; modelOutput: string; actualModel?: string; actualProvider?: string; } | { taskId: string; executionStatus: "failed"; error: string; }; export interface DelegatedTask { taskId: string; prompt: string; targetModel: string; } interface VendorRunState { vendor: string; tokens: string[]; tokenIndex: number; phase: "probe" | "confirmation" | "done"; executionRetries: number; validProbes: number; unavailableProbes: number; candidateToken?: string; } interface PendingTask { taskId: string; vendor: string; token: string; phase: "probe" | "confirmation"; } export interface DelegatedEvidence { vendor: string; token: string; phase: "probe" | "confirmation"; outcome: DelegatedEvidenceOutcome; error?: string; actualModel?: string; actualProvider?: string; providerVerified?: boolean; } export interface DelegatedRunState { version: 1; runId: string; startedAt: number; targetModel: string; targetProvider?: string; concurrency: number; maxTasks: number; maxDurationMs: number; tasksIssued: number; vendors: VendorRunState[]; pending: PendingTask[]; evidence: DelegatedEvidence[]; } export interface DelegatedCoverage { totalVendors: number; completeVendors: number; inconclusiveVendors: number; pendingVendors: number; } export interface DelegatedReport { channel: "delegated"; confidenceClass: "experimental-context-contaminated"; status: "match" | "conflict" | "unknown"; candidates: Array<{ vendor: string; confirmedToken: string; }>; coverage: DelegatedCoverage; tasksIssued: number; stopReason: "completed" | "task_limit" | "time_limit"; } export interface DelegatedRound { done: boolean; state: DelegatedRunState; tasks: DelegatedTask[]; report?: DelegatedReport; } export interface StartDelegatedOptions { fingerprints: Fingerprint[]; targetModel: string; targetProvider?: string; concurrency?: number; maxTasks?: number; maxDurationMs?: number; now?: number; } export declare function startDelegatedRun(options: StartDelegatedOptions): DelegatedRound; export declare function advanceDelegatedRun(state: DelegatedRunState, results: DelegatedTaskResult[], options?: { now?: number; }): DelegatedRound; export {};