import type { SkillRepairContinuation, SkillRepairNextIterationInput } from './store.js'; import { SkillStore } from './store.js'; export interface RepairRuntimePorts { inspectTrigger(record: SkillRepairContinuation, signal: AbortSignal): Promise; createRepair(record: SkillRepairContinuation, evidence: unknown, signal: AbortSignal): Promise<{ sessionId: string; goalId: string; }>; inspectRepair(record: SkillRepairContinuation, signal: AbortSignal): Promise<'running' | 'achieved' | 'rejected'>; /** Reattach only the original repair Agent after its execution fence permits it. */ ensureRepair?(record: SkillRepairContinuation, signal: AbortSignal): Promise; capture(record: SkillRepairContinuation, signal: AbortSignal): Promise<{ candidateId: string; }>; compare(record: SkillRepairContinuation, signal: AbortSignal): Promise<{ deploymentId: string; }>; inspectDeployment(record: SkillRepairContinuation, signal: AbortSignal): Promise<'watching' | 'complete' | 'rejected'>; inspectNextIteration?(record: SkillRepairContinuation, signal: AbortSignal): Promise; assertNextIteration?(record: SkillRepairContinuation, input: SkillRepairNextIterationInput): void; assertCurrent(record: SkillRepairContinuation): void; } /** * Host-owned finite continuation driver. A successor iteration requires a * validated new source and the frozen profile sequence before Store advances it. */ export declare class RepairContinuationRuntime { #private; readonly store: SkillStore; readonly ports: RepairRuntimePorts; constructor(store: SkillStore, ports: RepairRuntimePorts); recover(scope: object, id: string): SkillRepairContinuation | undefined; tick(scope: object, id: string): Promise; tickAll(): Promise; dispose(): Promise; } //# sourceMappingURL=repair-runtime.d.ts.map