import type { OrchestrationTask, TaskState, AgentContract, LifecycleResult } from './types'; import type { ContractManager } from './contract'; import type { RetryManager, RetryDecision } from './retry'; export type { TaskState, RetryDecision, LifecycleResult }; export declare class OrchestrationEngine { private dag; private contractMgr; private retryMgr; constructor(contractMgr: ContractManager, retryMgr: RetryManager); registerTask(alias: string, agent: string, label: string, deps?: string[], options?: { maxRetries?: number; timeoutMs?: number; }): void; /** * 严格状态转换(DAG 纯 API): * - 未知任务抛错; * - 非法转换抛错(保留严格 DAG 语义); * - 重复相同状态/终态幂等 no-op(原生生命周期事件可能重复到达,不抛、不改写)。 */ transition(alias: string, to: TaskState): void; /** * 生命周期事件安全适配入口(供原生 session/tool 事件适配调用): * - 未知任务:安全 no-op(reason='unknown-task'),不影响其他任务; * - 重复相同终态:幂等(reason='idempotent'); * - 矛盾/非法转换:状态不被篡改(reason='invalid-transition'),不抛错; * - 正常应用:reason='applied'。 * 保留与 transition() 相同的严格 DAG 转换表语义——不会放开 ready→所有终态等非原生日历路径。 */ applyLifecycleEvent(alias: string, to: TaskState): LifecycleResult; /** 应用状态并触发副作用(解锁依赖 / 级联取消) */ private setState; private checkDependencies; private cascadeCancel; getReadyTasks(): string[]; private calcDepth; getState(alias: string): TaskState | undefined; getTask(alias: string): OrchestrationTask | undefined; setResult(alias: string, summary: string, contract?: AgentContract): void; markFallbackUsed(alias: string, agent: string): void; getDAGSummary(): string; get runningCount(): number; } //# sourceMappingURL=engine.d.ts.map