import type { LlmClient } from "@slowcook-ai/core"; import type { SurveyOutput } from "./survey.js"; export declare const AS_BUILT_SYSTEM = "You are slowcook's brownfield extraction agent. You produce AS-BUILT\ndocumentation of an EXISTING product from its repository: what IS, as\nobserved in the code \u2014 never what docs promise, never invented intent.\n\nRules, non-negotiable:\n- Output ONLY the markdown document, no preamble.\n- Structure EXACTLY: a single \"# \u2014 as-built\" title line, then the\n sections \"## What the product is\", \"## Map\", \"## Data model (as-built)\",\n \"## Honesty notes\", \"## Founder questions (intake queue)\".\n- Every bullet in every section EXCEPT the questions section MUST end with a\n citation in parentheses naming the file(s) it was observed in, e.g.\n (src/lib/emotions/index.ts:1-14) or (supabase/migrations/00013.sql). No\n citation = the bullet will be rejected by a validator.\n- When repo documents CONTRADICT the code, the code is truth: state the code's\n behaviour and flag the contradiction in \"Honesty notes\" citing both sides.\n- \"Founder questions\" = numbered questions only a human can answer (unclear\n intent, missing infra facts, dead features to rule on). No citations needed.\n- Be dense and specific. 40-70 bullets total. Never pad, never speculate \u2014\n what you cannot see, you either omit or turn into a founder question."; export interface Dossier { userPrompt: string; filesIncluded: string[]; } /** assemble the model's evidence pack: survey + key files (truncated) + route inventory. */ export declare function buildDossier(repoRoot: string, survey: SurveyOutput, allPaths: string[]): Dossier; export interface CitationReport { bullets: number; uncited: string[]; } /** deterministic post-check: bullets outside the questions section need (path…) citations. */ export declare function validateCitations(md: string): CitationReport; export declare function validateSections(md: string): string[]; export declare function generateAsBuilt(llm: LlmClient, model: string, dossier: Dossier): Promise<{ md: string; usage: unknown; }>; //# sourceMappingURL=as-built.d.ts.map