import type Database from 'better-sqlite3'; import type { Embedder } from '../embeddings/store.js'; import type { MonographNode } from '../types.js'; import { type RiskLevel } from './impact.js'; export interface BriefSymbol { node: MonographNode; relevance: number; callers: MonographNode[]; callees: MonographNode[]; /** Test files that call this symbol, or import its file. */ tests: string[]; } export interface MonographBrief { task: string; /** Best-matching code symbols/files, each with its immediate surroundings. */ entryPoints: BriefSymbol[]; /** Documentation sections about the task. */ docs: MonographNode[]; /** Blast radius of the single best entry point. */ impact: { nodeId: string; name: string; riskLevel: RiskLevel; riskScore: number; affectedFiles: string[]; affectedTests: string[]; } | null; } /** * One call that answers "where do I start on this task": the best code entry * points with their callers, callees and tests, the docs that cover it, and the * blast radius of the top hit — what an agent otherwise assembles from four or * five separate tool calls. */ export declare function getMonographBrief(db: Database.Database, task: string, options?: { entryPoints?: number; docs?: number; embedder?: Embedder | null; }): Promise; //# sourceMappingURL=brief.d.ts.map