import type { Message } from "@prestyj/ai";
/**
 * Post-compaction re-grounding hook.
 *
 * Compaction summarizes earlier context, which is a known drift point: the
 * model can quietly lose the verbatim original ask or a subtle constraint.
 * After a compaction this run, inject the original request verbatim (the one
 * piece of ground truth the summary may have lossily rewritten) so the model
 * re-anchors before its next step. Fires at most once per compaction event.
 *
 * Per the "introspection alone fails" research, this injects concrete
 * evidence (the literal original request) rather than asking the model to
 * "think harder".
 */
export interface RegroundingState {
    /** A compaction/overflow-compaction happened during this run. */
    compactionOccurred: boolean;
    /** A re-grounding message was already injected for this compaction. */
    alreadyInjected: boolean;
}
export declare function shouldReground(state: RegroundingState): boolean;
export declare function buildRegroundingMessage(originalRequest: string): Message;
//# sourceMappingURL=regrounding.d.ts.map