/** * Participant drift alerts for the recognition path — the TS mirror of the * oracle's `core.drift_context` + the alert-reading half of * `core.participant_watermark`. * * A participant that can still OPEN its native store but no longer PARSE it * yields nothing while every presence check stays green. The export path * persists a per-participant watermark verdict; this module reads those * verdicts back and renders the active `drift` ones as bounded * `{agent, checked_at, reason}` rows for `prepare_recognition_context`. * * State is advisory and untrusted: missing, malformed, and unrecognized * entries fail open (no alert), and every field is bounded through the * redaction SSOT before it can reach a prompt. */ /** The MCP recognition response's per-alert reason budget, matching every * other MCP context fragment. */ export declare const MCP_DRIFT_REASON_CHARS = 240; export interface DriftAlert { agent: string; checked_at: string; reason: string; } /** Newest-first active drift verdicts from bounded local state. */ export declare function activeDriftAlerts(): DriftAlert[]; /** Active drift alerts with every field bounded through the redaction SSOT. * Alerts whose agent collapses to empty are dropped: a drift warning that * cannot say which surface drifted is noise. */ export declare function boundedActiveAlerts(reasonLimit: number): DriftAlert[]; /** The recognition response's drift rows: present only when non-empty, and * degrading to absent when the watermark state is unreadable. */ export declare function driftingSurfaces(): DriftAlert[];