import { r as KlawConfig } from "./types.klaw-xKUw_Rz7.js"; import { c as TaskScopeKind, d as TaskTerminalOutcome, i as TaskRecord, l as TaskStatus, n as TaskDeliveryStatus, o as TaskRuntime, r as TaskNotifyPolicy, t as TaskDeliveryState } from "./task-registry.types-CVF0LO-p.js"; //#region src/tasks/detached-task-runtime-contract.d.ts type DetachedTaskCreateParams = { runtime: TaskRuntime; taskKind?: string; sourceId?: string; requesterSessionKey?: string; ownerKey?: string; scopeKind?: TaskScopeKind; requesterOrigin?: TaskDeliveryState["requesterOrigin"]; parentFlowId?: string; childSessionKey?: string; parentTaskId?: string; agentId?: string; runId?: string; label?: string; task: string; preferMetadata?: boolean; notifyPolicy?: TaskNotifyPolicy; deliveryStatus?: TaskDeliveryStatus; }; type DetachedRunningTaskCreateParams = DetachedTaskCreateParams & { startedAt?: number; lastEventAt?: number; progressSummary?: string | null; }; type DetachedTaskStartParams = { runId: string; runtime?: TaskRuntime; sessionKey?: string; startedAt?: number; lastEventAt?: number; progressSummary?: string | null; eventSummary?: string | null; }; type DetachedTaskProgressParams = { runId: string; runtime?: TaskRuntime; sessionKey?: string; lastEventAt?: number; progressSummary?: string | null; eventSummary?: string | null; }; type DetachedTaskCompleteParams = { runId: string; runtime?: TaskRuntime; sessionKey?: string; endedAt: number; lastEventAt?: number; progressSummary?: string | null; terminalSummary?: string | null; terminalOutcome?: TaskTerminalOutcome | null; }; type DetachedTaskFailParams = { runId: string; runtime?: TaskRuntime; sessionKey?: string; status?: Extract; endedAt: number; lastEventAt?: number; error?: string; progressSummary?: string | null; terminalSummary?: string | null; }; type DetachedTaskFinalizeParams = { runId: string; runtime?: TaskRuntime; sessionKey?: string; status: Extract; endedAt: number; lastEventAt?: number; error?: string; progressSummary?: string | null; terminalSummary?: string | null; terminalOutcome?: TaskTerminalOutcome | null; }; type DetachedTaskDeliveryStatusParams = { runId: string; runtime?: TaskRuntime; sessionKey?: string; deliveryStatus: TaskDeliveryStatus; error?: string; }; type DetachedTaskCancelParams = { cfg: KlawConfig; taskId: string; reason?: string; }; type DetachedTaskCancelResult = { found: boolean; cancelled: boolean; reason?: string; task?: TaskRecord; }; type DetachedTaskRecoveryAttemptParams = { taskId: string; runtime: TaskRuntime; task: TaskRecord; now: number; }; type DetachedTaskRecoveryAttemptResult = { recovered: boolean; }; type DetachedTaskLifecycleRuntime = { createQueuedTaskRun: (params: DetachedTaskCreateParams) => TaskRecord; createRunningTaskRun: (params: DetachedRunningTaskCreateParams) => TaskRecord; startTaskRunByRunId: (params: DetachedTaskStartParams) => TaskRecord[]; recordTaskRunProgressByRunId: (params: DetachedTaskProgressParams) => TaskRecord[]; finalizeTaskRunByRunId?: (params: DetachedTaskFinalizeParams) => TaskRecord[]; completeTaskRunByRunId: (params: DetachedTaskCompleteParams) => TaskRecord[]; failTaskRunByRunId: (params: DetachedTaskFailParams) => TaskRecord[]; setDetachedTaskDeliveryStatusByRunId: (params: DetachedTaskDeliveryStatusParams) => TaskRecord[]; /** * Return `found: false` when this runtime does not own the task so core can * fall back to the legacy detached-task cancel path. */ cancelDetachedTaskRunById: (params: DetachedTaskCancelParams) => Promise; /** * Give a registered detached runtime one last chance to recover a stale task * before core marks it lost during maintenance. */ tryRecoverTaskBeforeMarkLost?: (params: DetachedTaskRecoveryAttemptParams) => DetachedTaskRecoveryAttemptResult | Promise; }; //#endregion export { DetachedTaskLifecycleRuntime as n, DetachedTaskFinalizeParams as t };