import type { RetrievalGapKind } from '@devflow-tools/sdk'; export interface WorkerContextGap { kind: RetrievalGapKind; target?: string; reason: string; evidence?: string[]; } export interface WorkerContextRefinementRequest { workerId: string; runId: string; stepId: string; projectRoot: string; sessionId: string; executionId: string; retrievalSessionId: string; baselineReceipt: string; currentReceipt: string; baseRevision: string; query: string; missingContext: WorkerContextGap[]; maxTokens?: number; } export interface WorkerContextRefinementResult { workerId: string; receipt: string; cycle: number; remainingTokenBudget: number; selectedIds: string[]; rejectedIds: string[]; state: 'open' | 'satisfied' | 'exhausted' | 'expired'; } export interface WorkerContextAdapter { refine(request: WorkerContextRefinementRequest): Promise; } export interface WorkerContextAttribution { workerId: string; receipts: string[]; selectedIds: string[]; adoptedIds: string[]; outcome?: 'verified' | 'failed' | 'hold'; } export declare class WorkerContextSessionController { private readonly adapter; private readonly revisionProvider; private readonly state; constructor(adapter: WorkerContextAdapter, revisionProvider: (projectRoot: string) => string | Promise); refine(request: WorkerContextRefinementRequest): Promise; recordAdoption(workerId: string, receipt: string, adoptedIds: string[]): WorkerContextAttribution; recordOutcome(workerId: string, outcome: 'verified' | 'failed' | 'hold'): WorkerContextAttribution; getAttribution(workerId: string): WorkerContextAttribution | undefined; } //# sourceMappingURL=context-session.d.ts.map