import { type AgentMessageSender } from "@mono-agent/agent-contracts"; import type { RuntimeEventLike } from "@mono-agent/observability"; import type { RuntimeToolLifecycleEvent, RuntimeToolLifecycleSink } from "@mono-agent/runtime-adapter"; import type { HistoryMessage } from "../context/index.js"; import type { AppliedLiveInput } from "../live-input.js"; export declare const CANCELLED_TURN_HISTORY_KEY_PREFIX = "cancelled-turn:v1:"; export declare const FAILED_TURN_HISTORY_KEY_PREFIX = "failed-turn:v1:"; export declare const TURN_CONTINUITY_MAX_BYTES: number; export declare const TURN_CONTINUITY_ASSISTANT_MAX_BYTES: number; export declare const CANCELLED_TURN_MAX_BYTES: number; export declare const CANCELLED_TURN_ASSISTANT_MAX_BYTES: number; type CancelledTurnNotice = "Run stopped by the operator." | "Run cancelled by agent shutdown." | "Run cancelled during stale-session reconciliation." | "Run cancelled by a process signal." | "Run cancelled after a timeout." | "Run cancelled for a recorded reason." | "Run cancelled; reason not recorded."; type FailedTurnNotice = "Run failed after the runtime reported an error." | "Run failed because the runtime returned no assistant response." | "Run failed before the turn could be committed."; export type FailedTurnReasonCode = "runtime_result" | "empty_response" | "thrown_error"; export type TurnContinuityOutcome = "cancelled" | "failed"; export interface CancelledTurnReason { readonly failureKind: "cancelled" | "cancelled_user"; readonly code: string; readonly notice: CancelledTurnNotice; readonly channel?: string; readonly untrustedCode?: string; readonly untrustedDetail?: string; } export interface FailedTurnReason { readonly status: "failed"; readonly code: FailedTurnReasonCode; readonly notice: FailedTurnNotice; readonly untrustedCode?: string; readonly untrustedDetail?: string; } interface AssistantRetentionSnapshot { readonly retainedBytes: number; readonly omittedBytes: number; readonly omittedEvents: number; readonly truncated: boolean; } export declare class UncommittedTurnCollector { private readonly nativeEvents; private readonly admittedLifecycles; /** Native observers run before the runtime queues durable persistence. */ observeNativeEvent(event: RuntimeEventLike): void; admitToolLifecycle(event: RuntimeToolLifecycleEvent): void; private unsafeRecoveryEvidence; canRecoverNativeTail(): boolean; private sealedOutcome; private partialAssistant; private partialAssistantRetainedBytes; private partialAssistantOmittedBytes; private partialAssistantOmittedEvents; private readonly calls; private readonly pendingLifecycleWrites; observeRuntimeEvent(event: RuntimeEventLike): boolean; assistantRetentionSnapshot(): AssistantRetentionSnapshot; wrapToolLifecycleSink(delegate: RuntimeToolLifecycleSink | undefined): RuntimeToolLifecycleSink; seal(outcome: TurnContinuityOutcome): void; settleAcceptedLifecycleWrites(): Promise; buildMessages(input: { readonly runId: string; readonly userMessage: string; readonly liveInputs: readonly AppliedLiveInput[]; readonly sender?: AgentMessageSender; readonly settledAt: string; } & ({ readonly outcome: "cancelled"; readonly reason: CancelledTurnReason; } | { readonly outcome: "failed"; readonly reason: FailedTurnReason; })): readonly HistoryMessage[]; private observeToolLifecycle; private observeAssistantText; private buildContent; } export declare function cancelledTurnReason(rawReason: unknown, failureKind: "cancelled" | "cancelled_user"): CancelledTurnReason; /** * Builds a cancellation reason from runtime/provider-controlled result fields. * Those fields may preserve evidence, but cannot select host provenance. */ export declare function runtimeResultCancelledTurnReason(rawEvidence: unknown, failureKind: "cancelled" | "cancelled_user"): CancelledTurnReason; export declare function failedTurnReason(code: FailedTurnReasonCode, rawCode?: unknown, rawDetail?: unknown): FailedTurnReason; export declare function representedContinuityToolRecordIds(history: readonly HistoryMessage[]): ReadonlySet; export {}; //# sourceMappingURL=turn-continuity.d.ts.map