import type { PipelinePhase } from '../types.js'; export interface StaleSweepOutput { removedFiles: string[]; } /** * Drop rows for files that were renamed/deleted since the last build. * * This MUST run unconditionally — even when every remaining file cache-hit * (`ctx.allFilesCached`), a file may have been deleted from disk between builds, * which produces zero cache misses but still leaves ghost rows in the DB unless * the DB's known file set is compared against the current on-disk set. It also * MUST run before the derived phases (communities, processes): they re-derive from * the DB, so sweeping afterwards leaves them describing symbols that no longer exist. * * The sweep is confined to the current build's source domain. A narrowed build * never looked at files outside its domain, so their absence from the scan says * nothing about whether they still exist — deleting those rows is how a code-only * refresh used to erase every Document node in the graph. */ export declare const staleSweepPhase: PipelinePhase; //# sourceMappingURL=stale-sweep.d.ts.map