/** * SpeculativeWarmer — precomputes local caches for a file's import neighbors while the * model is off reasoning about what it just read, so a follow-up `get_ast_hologram` or * `depgraph`/`affected_tests` call on a neighbor is a cache hit instead of a cold parse. * * HARD RULE: this warms local caches only (`DepGraph`'s graph cache, `AstSymbolCache`) and * must never touch anything that reaches the model's context. It runs after the response for * the triggering tool call has already been returned, off the event loop's current tick, and * every failure is swallowed — a warming run that throws or runs slow must never be visible * to whoever is waiting on the actual tool call. */ import { AstSymbol } from "./AstSymbolCache"; /** * `extractSymbolsWithTsCompiler` lives in `mcp/tools.ts`, which already imports this module — * importing it back here would be circular. The dispatcher registers it once at startup instead. */ export declare function registerSymbolExtractor(extractor: (absPath: string, relPath: string, parseErrors?: string[]) => AstSymbol[]): void; /** * Fire-and-forget: warm the import-neighborhood of `filePath` after a real read. Safe to call * unconditionally — it is a no-op (not just cheap, actually skipped) whenever the extractor * hasn't been registered yet, since that means startup isn't finished. */ export declare function warmNeighbors(workspaceRoot: string, filePath: string): void; //# sourceMappingURL=SpeculativeWarmer.d.ts.map