import { type Storyboard } from "./artifacts.ts"; import type { DesignFeedback, FeedbackInterpretation } from "./design-feedback.ts"; import type { ComparisonManifest } from "./design-comparison.ts"; export type SynthesisPlan = { schemaVersion: 1; revision: string; runId: string; feedbackId: string; feedbackHash: string; comparisonHash: string; baseCandidateId: string; themeCandidateId: string; tokens: { source: string; exceptions: string[]; }; routes: { path: string; sections: { id: string; source?: { candidateId: string; sectionId: string; }; facets: string[]; preserve: string[]; adaptation: string; facts: string[]; media: string[]; behavior?: string; acceptance: string; }[]; }[]; conflicts: string[]; assumptions: string[]; dependencies: string[]; verification: string[]; }; export declare function buildSynthesisPlan(opts: { runId: string; revision: string; feedback: DesignFeedback; interpretation: FeedbackInterpretation; comparison: ComparisonManifest; baseStoryboard: Storyboard; }): SynthesisPlan; export declare function validateSynthesisPlan(plan: SynthesisPlan): string[]; export declare function createSynthesisRoot(opts: { dest: string; kernel: string; parent: string; baseRoot: string; slug: string; name: string; assignedDirectionPath?: string; plan: SynthesisPlan; }): void; export type FulfillmentReport = { version: 2; subjectHash: string; verdict: "pass" | "fail" | "unknown"; reviewer: string; evidence: string[]; choices: { id: string; priority: string; status: "fulfilled" | "partial" | "unfulfilled"; route?: string; sectionId?: string; evidence: string; note: string; }[]; }; export declare function gradeFulfillment(report: FulfillmentReport, mustHaveIds: string[]): string[]; export declare function promotionAllowlist(): string[]; export declare function synthesisAcceptanceFailures(siteDest: string): string[];