/** * Durable parent orchestration MissionExecutor. * * This adapter is deliberately subordinate to the Mission domain: the * DurableMissionCoordinator owns the parent lease and terminal commit, while * this executor drives the orchestration plan through the existing lifecycle * and child-execution authority ports. It never launches a process, opens SSH, * calls a provider, or writes parent mission state directly. */ import type { DurableMissionStore } from "../mission-domain/durable-store.js"; import type { MissionExecutor, MissionLaunchOptions } from "../mission-domain/mission-executor.js"; import { type MissionHandle } from "../mission-domain/mission-handle.js"; import type { MissionRequest } from "../mission-domain/mission-request.js"; import { type MissionResult } from "../mission-domain/mission-result.js"; import type { OrchestrationLifecycleExecutor } from "./lifecycle-executor.js"; import type { OrchestratorService } from "./orchestrator.js"; import type { OrchestrationStore } from "./types.js"; export interface OrchestrationMissionExecutorOptions { missions: DurableMissionStore; store: OrchestrationStore; /** Existing lifecycle authority; no child execution is implemented here. */ lifecycle: OrchestrationLifecycleExecutor; /** Reconciliation service used to unblock/materialize dependent nodes. */ orchestrator: OrchestratorService; executorId?: string; pollMs?: number; maxWallTimeMs?: number; now?: () => number; executionIdFactory?: (request: MissionRequest) => string; } export declare class OrchestrationMissionExecutor implements MissionExecutor { readonly executorId: string; private readonly _store; private readonly _lifecycle; private readonly _orchestrator; private readonly _pollMs; private readonly _maxWallTimeMs; private readonly _now; private readonly _executionIdFactory; private readonly _active; constructor(options: OrchestrationMissionExecutorOptions); launch(request: MissionRequest, options?: MissionLaunchOptions): Promise; awaitResult(handle: MissionHandle, options?: { signal?: AbortSignal; }): Promise; cancel(handle: MissionHandle, reason?: string): Promise; private loadPlan; private result; } export declare function createOrchestrationMissionExecutor(options: OrchestrationMissionExecutorOptions): OrchestrationMissionExecutor; //# sourceMappingURL=orchestration-mission-executor.d.ts.map