/** * 工作流状态结构 */ export interface WorkflowStatus { workflowType: string; projectName?: string; createdAt: string; updatedAt: string; currentStage: 'architect' | 'plan' | 'execute' | 'review' | 'completed'; stages: { architect: StageStatus; plan: StageStatus; execute: ExecuteStageStatus; review: StageStatus; }; } /** * 阶段状态结构 */ export interface StageStatus { status: 'pending' | 'in_progress' | 'completed' | 'skipped'; startedAt?: string; completedAt?: string; artifacts?: string[]; notes?: string; } /** * 执行阶段状态(支持多任务) */ export interface ExecuteStageStatus extends StageStatus { totalTasks?: number; completedTasks?: number; tasks?: Array<{ id: string; name: string; status: 'pending' | 'in_progress' | 'completed'; file?: string; startedAt?: string; completedAt?: string; }>; } /** * 任务列表项 */ export interface TaskItem { id: string; name: string; file: string; status: 'pending' | 'in_progress' | 'completed'; priority?: string; complexity?: string; dependencies?: string[]; tables?: string[]; tableCount?: number; startedAt?: string; completedAt?: string; createdAt?: string; } /** * 工作流状态管理器 * 职责: * 1. 管理工作流执行状态 (.workflow-status.json) * 2. 跟踪各阶段进度 * 3. 管理 Execute 阶段的任务列表 * 4. 提供状态查询和更新接口 */ export declare class WorkflowManager { private workDir; private statusFile; private tasksFile; private status; constructor(workDir: string); /** * 初始化工作流状态 * @param workflowType 工作流类型 (database-design, api-design, etc.) * @param projectName 项目名称(可选) */ initialize(workflowType: string, projectName?: string): Promise; /** * 获取当前工作流状态 * @returns 工作流状态,如果未初始化则返回 null */ getStatus(): Promise; /** * 更新阶段状态 * @param stage 阶段名称 * @param detail 阶段详情 */ updateStageStatus(stage: 'architect' | 'plan' | 'execute' | 'review', detail: Partial): Promise; /** * 添加阶段产出物 * @param stage 阶段名称 * @param artifacts 产出物路径列表 */ addArtifacts(stage: 'architect' | 'plan' | 'execute' | 'review', artifacts: string[]): Promise; /** * 获取阶段上下文信息(用于传递给 LLM) * @param stage 当前阶段 * @param context 额外上下文(如 executeId) */ getStageContext(stage: 'architect' | 'plan' | 'execute' | 'review', context?: { executeId?: string; }): Promise; /** * 更新执行阶段的任务列表 * @param tasks 任务列表 */ updateExecuteTasks(tasks: TaskItem[]): Promise; /** * 列出任务清单 * @param statusFilter 状态过滤器 */ listTasks(statusFilter?: 'pending' | 'completed' | 'all'): Promise; /** * 获取下一个待执行任务 */ getNextTask(): Promise; /** * 更新任务状态 * @param taskId 任务ID * @param status 新状态 */ updateTaskStatus(taskId: string, status: 'pending' | 'in_progress' | 'completed'): Promise; /** * 保存工作流状态到文件 */ private saveStatus; /** * 保存任务列表到文件 */ private saveTasksFile; /** * 重置工作流状态 * 清理所有状态文件和任务列表,重新初始化工作流 * @param workflowType 新的工作流类型(可选,如不提供则使用现有类型) * @param projectName 项目名称(可选) * @returns 重置后的工作流状态 */ reset(workflowType?: string, projectName?: string): Promise; /** * 获取工作目录 */ getWorkDir(): string; } //# sourceMappingURL=workflow-manager.d.ts.map