/** * GUCDI — pure assembler. Turns the `menu` agent's structured story drafts into * full `Spec` objects (sequential ids, PRD back-anchor, data contract, open * questions), and flags any draft whose prd_anchor isn't a real PRD initiative * (a provenance gap `trace check` would later catch). The LLM dispatch + * `writeSpec` live in ./index.ts; this part is pure + unit-tested. */ import type { Spec } from "@slowcook-ai/core"; import type { MenuStoryDraft } from "@slowcook-ai/llm-anthropic"; export interface AssembleOptions { /** PRD path (relative to repo root) recorded as `prd_ref.file`. */ prdFile: string; /** First numeric story id; subsequent stories increment. */ startId: number; /** ISO timestamp for `created_at`. */ now: string; /** cli version → `refined_by`. */ cliVersion: string; /** Known PRD anchors; drafts citing an unknown one are reported as gaps. */ validAnchors?: string[]; } export interface AssembleResult { specs: Spec[]; /** Drafts whose `prd_anchor` isn't a known PRD initiative (provenance gap). */ unanchored: { title: string; prd_anchor: string; }[]; } export declare function assembleStories(drafts: MenuStoryDraft[], opts: AssembleOptions): AssembleResult; //# sourceMappingURL=assemble.d.ts.map