import type { CanonicalTaskIdentity, RetrievalCycleReceiptV1, RetrievalSufficiencyStatus } from '@devflow-tools/sdk'; export interface RetrievalSessionV2Record { id: string; identity: CanonicalTaskIdentity; taskRevision: number; factsHash: string; planHash: string; activationSnapshotHash: string; coordinatorVersion: string; state: 'open' | RetrievalSufficiencyStatus; cycle: number; noGainCount: number; maxCycles: 3; initialTokenBudget: number; remainingTokenBudget: number; finalReceiptHash?: string; createdAt: number; updatedAt: number; expiresAt: number; } export interface CreateRetrievalSessionV2Input { id: string; identity: CanonicalTaskIdentity; taskRevision: number; factsHash: string; planHash: string; activationSnapshotHash: string; coordinatorVersion: string; tokenBudget: number; expiresAt: number; createdAt?: number; } export interface AppendRetrievalCycleV2Input { sessionId: string; projectRoot: string; taskSessionId: string; receipt: RetrievalCycleReceiptV1; remainingTokenBudget: number; }