/** * validate 报告美化:把 validateWorkflow() 的扁平 string[] 错误, * 分类 + 按 step 分组 + 按修复优先级排序后渲染。 * * 重要:本模块只“读” validateWorkflow 的字符串输出,不改动其契约。 * compose/mcp 仍消费原始 string[],分类靠模式识别派生,互不影响。 */ export type FindingCategory = 'cycle' | 'role' | 'dependency' | 'output' | 'loop' | 'variable' | 'other'; export interface ValidationFinding { scope: 'workflow' | 'step'; stepId?: string; category: FindingCategory; /** 首行错误信息 */ message: string; /** 后续行(如“你是不是想用…”建议),已去缩进 */ hint?: string; } /** 从一条错误字符串派生结构化分类 */ export declare function classifyError(raw: string): ValidationFinding; export declare function classifyErrors(errors: string[]): ValidationFinding[]; export interface ValidationReport { valid: boolean; name: string; steps: number; inputs: number; findings: ValidationFinding[]; } /** 构造 --json 输出对象(纯函数,便于测试) */ export declare function buildValidationReport(name: string, stepCount: number, inputCount: number, errors: string[]): ValidationReport; /** * 渲染分组报告。stepOrder 用于让 step 分组按工作流定义顺序出现。 */ export declare function formatValidationReport(workflowName: string, errors: string[], stepOrder?: string[]): string;