/** * Per-path in-memory buffer for the last-failed replace_window edit's * proposed content + search string. Used for the `edit_note({ from_buffer: * true })` recovery path — when an edit fails with NoMatch, the agent can * retry via the buffer with a lowered fuzzy threshold without having to * re-emit the potentially-long content payload. * * MCP stdio transport is single-client per process, so a process-global * buffer is session-equivalent. If we ever add HTTP/multi-client transport * this needs to be keyed by session id — but that's a separate change. */ export interface BufferEntry { path: string; content: string; search: string; mode: string; failedAt: number; error: string; } export declare class EditBuffer { private entries; push(entry: BufferEntry): { buffered: boolean; reason?: string; }; get(path: string): BufferEntry | undefined; remove(path: string): void; private evict; } export declare const editBuffer: EditBuffer;