import type { Adapter } from "../../adapter.js"; import type { ParsedPayload } from "../../hooks/adapter/parse.js"; import type { EventV3 } from "./contract.js"; import { type LiveEventLedgerRouteV3 } from "./live-route-observer.js"; import type { HookSignalV3 } from "./producers/hook.js"; import type { TurnRitualEvidenceV3 } from "./producers/hook-base.js"; import { type ReconcilePendingRuntimeContextV3Result, type RecordHookSignalV3Result } from "./producers/recorder.js"; export { type LiveEventLedgerRouteV3, liveInstanceIdV3, nativeInstanceIdV3, } from "./live-route-observer.js"; export { liveEventV3BuildId, livePlatformV3 } from "./runtime-identity.js"; export declare const LIVE_HOOK_V3_PRODUCER_ID: "prd_agent-hook"; export declare const LIVE_COMMAND_V3_PRODUCER_ID: "prd_session-tee"; /** * Resolve the V3-only ledger route. A root without an initialized V3 control * packet is blocked; no mutating producer may fall back to an older ledger. * Manifest-first crashes are repaired from the immutable packet and every * other invalid state closes the writer gate. */ export declare function resolveLiveEventLedgerRouteV3(coordRoot: string): LiveEventLedgerRouteV3; export declare function hookSignalV3(eventName: string): HookSignalV3 | undefined; /** * Tool lifecycle hooks may stop after publishing their event to the durable * ready WAL. The next non-tool hook drains the causal batch into the active * ledger, avoiding one global append-lease cycle for every tool boundary. */ export declare function liveHookSignalDefersDrainV3(eventName: string, override?: string): boolean; export declare function recordLiveHookSignalV3(input: { coordRoot: string; route: Extract; eventName: string; payload: ParsedPayload | null; adapter: Adapter; instanceId: string; run_id?: `run_${string}`; workflow_id?: `wf_${string}`; workflow_agent_id?: string; bridge?: "codex-wsl"; monotonic_ns?: string; hook_name?: string; hook_duration_ms?: number; stop_remediation?: boolean; turn_ritual?: TurnRitualEvidenceV3; defer_drain?: boolean; }): RecordHookSignalV3Result | { state: "ignored"; }; export declare function reconcileLivePendingRuntimeContextV3(input: { coordRoot: string; route: Extract; nativeSessionId: string; finalAttempt?: boolean; }): ReconcilePendingRuntimeContextV3Result; /** * Open the child generation named by a native SubagentStart event. * * The parent producer owns the delegation span and mints its child generation * id. This second crash-safe session-start gives that exact generation its own * producer authority, so later child tool hooks can resolve away from the * parent session and the disposable heartbeat projection has a real source. */ export declare function recordLiveDelegatedChildSessionV3(input: { coordRoot: string; route: Extract; parentEvent: Extract; payload: ParsedPayload; adapter: Adapter; bridge?: "codex-wsl"; monotonic_ns?: string; }): RecordHookSignalV3Result | { state: "ignored"; }; //# sourceMappingURL=live-routing.d.ts.map